Unpopular opinion: i64, int64_t, Int64 and similar types should be named according to their actual meaning, Ring64.

Even better, all programming languages should have a Ring[N] type that provides unit, zero addition and multiplication over a domain of N-bit strings, with the compiler applying proper optimizations when available (and requested).

@Shamar except in C the result of signed overflow is undefined. So it's not a ring.

@newt

It IS a ring on most implementations, but there were good flexibility (and portability) reasons behind all behaviours left undefined in C.

Yet this is a good objection... for standard C.

@Shamar no, it's not a ring. And you shouldn't treat it like a ring. Wanna know why? Here's why.

They are both right, btw.

@newt

Never trust non-GPL code... 🤣

You are technically right, but i think they SHOULD be rings (and named accordingly). So that programmers would learn from the beginning to live with the clear semantics of rings, always aware of the risk of overflow.

@duponin @Shamar BSD is a dumpster fire at this point. LLVM is an awesome piece of software tho. I wish it was implemented in another language, because they basically have poor man's pattern matching for C++ there. It's just painful to look at.

@newt

Actually the problem with and is that they are not strong enough to protect and reserve the knowledge that free software expresses to the commons.

Full access to software sources and full right to hack it, just like writings and any other human expression, is the most fundamental human right.

Preventing such right to any human is preventing them to be human, a specie that defines itself as *homo sapiens sapiens*.

@duponin

@Shamar @duponin you are free to come up with your very own more restrictive license and publish your intellectual property under its terms.

The problem with GPL is that it hugely benefits bigger players, who can earn money from consulting and support, while leaving smaller software companies at a huge disadvantage. The latter are a lot better from using BSD or MIT licenses for their published works and some form of EULA with closed source code for end products.
@newt @Shamar personally I release my open-source projects under BSD 3 clause
(And nobody cares about)
@duponin @Shamar I personally prefer WTFPL, but my employer prefers MIT for open source code.

@Ted

It's somewhat funny, but very incorrect.
Even MIT and BSD impose obligations on people builing on licensed code, just fewer than a .

Actually, such swallow depiction of free software licenses is quite similar to calling int64_t as "integer". 😅

As for an even stronger copyleft, I wrote the : tesio.it/documents/HACK.txt

I must admit that I'm not yet happy with its formulation, but it can give an idea of what I hate in weaker copylefts like the .
I'm going to remove the "organizations" thing. Making it shorter would be nice but apparently I can't without opening to corporate abuse one way or another.

In any case, if you want to give it a read and show me a way it could advantage big corps, I'll promise I'll study a fix for that.

@newt @duponin

@Shamar @Ted @duponin big vendors have an advantage of possessing sheer manpower. Chrom{e,ium} is wholly controlled by google even though it is open source. But good luck contributing things google doesn't want there! If Chrome was GPL, nothing would've changed in this case.

On the other hand, a smaller company is at a huge disadvantage when using GPL, because this way a bigger entity can just buy the product and take over. Again, utilizing sheer manpower. Having your source code closed or under a restrictive license is a huge benefit in this case.

@newt

BUT Google does not use or extend AGPL software. Why?

I'd argue that a strong copyleft is better than a permissive license against steer manpower.

And that against such big corporations not even keeping the software closed source provide an effective protection.

The Hacking License, instead, gives the original authors full (non exclusive) copyright and patent grants on any derived work.

@Ted @duponin

@Shamar @Ted @duponin because AGPL is only good for server-side software, developed either by an open source community or a small vendor. In the latter case, AGPL code is usually only a part of the whole product, with the rest being under a commercial license.

>The Hacking License, instead, gives the original authors full (non exclusive) copyright and patent grants on any derived work.

Thanks. I'll stay away from this cancer as much as possible.
Follow

@newt

Fine... but why?

I mean, is this a philosophical hate against common good and the commons or something you consider pragmatic, apolitical... such as profit in a capitalist world or something like that?

Even if we do not agree on this matter (mostly because we do not agree), I'd really like to learn your perspective.

@Ted @duponin

@Shamar @Ted @duponin there is no such thing as common good. Somebody somewhere has to do the job. If it's me, I might as well profit from it.

@newt

Mozart's music is common good.
So is Bethoven's or Vivaldi.

Shakespeare poems are common goods. And Montale's too.

Actually most of human knowledge is common good.

A huge amount of software is common good. I'd argue that most global cpu cycles at any given time this year are running free software that IS common good.

This does not means, in any way, that you shouldn't be paid for creating it if you want to.

So I deduce your is a fundamental mistrust in society, in the communities around you that could benefit from your work if it was available.

To be fair, you might be right on this. There is a huge risk we evolve back to egocentric apes unable to collaborate if not under the rule of few... owners.

As for me, I choose to still hope for the better from our specie.

Anyway... thank for sharing!

@Ted @duponin

@Shamar @Ted @duponin we are perfectly able to collaborate for the mutual benefit. I write code, I get paid for it. Easy enough, isn't it?

Again, you are perfectly free to use whatever software license you enjoy. Just don't expect everyone to subscribe to your ideas.

@newt

I don't.
On the contrary I expect most people to NOT subscribe my ideas, just because I've seen this happen so many times.

I'm really interested in your perspective, mostly because I do not understand it.
Being slaves of a common master (or few common master) is not enough to collaborate.

But in an individualist and materialist perspective, I see it's the best one can hope.

In a way, it's the curse of dimensionality at work.

@Ted @duponin

@Shamar @Ted @duponin the biggest problem with your reasoning is you only account for the results evident to you.

You mentioned a bunch of dead people, but that's what they are now. Dead people. They can no longer benefit from the results of their endeavors. This is why there is this thing called public domain now, and I wouldn't mind if my works become public domain in many many years, but just as Shakespeare during his lifetime, I intend to profit from my work as much as I can right now.

Regarding Google and AGPL. One of the biggest risks related to this license is rather unclear application practices. They haven't been enough court cases to know what to expect in case you land there. Nobody wants to be the first one here, not even Google with their army of lawyers.

Here's their reasoning regarding AGPL:

>The primary risk presented by AGPL is that any product or service that depends on AGPL-licensed code, or includes anything copied or derived from AGPL-licensed code, may be subject to the virality of the AGPL license. This viral effect requires that the complete corresponding source code of the product or service be released to the world under the AGPL license. This is triggered if the product or service can be accessed over a remote network interface, so it does not even require that the product or service is actually distributed. Because Google’s core products are services that users interact with over a remote network interface (Search, Gmail, Maps, YouTube), the consequences of an engineer accidentally depending on AGPL for one of these services are so great that we maintain an aggressively-broad ban on all AGPL software to doubly-ensure that AGPL could never be incorporated in these services in any manner.

From https://opensource.google/docs/using/agpl-policy/

For a smaller company, the risk is even bigger. Imagine your competitor suing your on the grounds of the use of some AGPL piece of code and demanding you release the algorithm behind your successful whatever internet service, then copying it and incorporating into their service. Without actually releasing the source code. Totally realistic scenario, if you ask me.

Btw, Vivaldi died in poverty. As did many other famous artists in his time. Would you like to follow his example?

@newt

I'm not sure I understand what you describe as a risk for the smaller company in your example.

Suppose that they actually release their super cool software (not algorithm) as AGPL and a competitor includes it in his own codebase: then they are violating the small company copyright for profit, from a legal perspective a criminal act that would lead them to jail.

As for Google, I know why they don't want to use AGPL code... which to my eyes is a great advantage of such license.

The objection about Vivaldi dying in poverty is a good one, but easily dismissed: the problem is NOT the fact his art is common good, but the fact he lived in an unjust system.

And this is actually a huge problem today too.

BUT people living in an unjust system can fight such system... or not.

I do.

@Ted @duponin

@Shamar @Ted @duponin they might just copy the algorithms, not the code per se. Clean room reverse engineering is a thing for a reason.

In case you have not noticed, we live in a very competitive world. If you won't take an advantage, someone else will. In my area, quite a lot of code ends up published on github under a permissive license like BSD or MIT, because it's just easier to maintain this way. Common good or any other similar concept doesn't apply here, it's just pure profit and convenience.

Oh... and there is no such thing as a perfectly just system.

@newt

Uhm... sure, maybe there is no "perfectly" just system, just like there is no perfect circle or perfect sphere in the real world.

Does it means that a sphere system is unconceivable?
If not, why should a just system be unconceivable?

Do we live in a just system?
No.

Could we live in a MORE just system?
Sure.

Now, I do not know exactly where you live but I'd guess it's somewhere in the US or in one of their colony.

I can really relate to your feeling: after decades of oppression it's totally natural to surrender and internalize the oppressor propaganda as if it was not just true, but the only possibly truth.

But, well... it's not.

"Homo homini lupus" is a very inefficient and irrational way of living together.

The energy each individual spend to compete with everybody else is subtracted to more productive tasks.

And obviously there are many alternatives.

One are gift societies, like nomadelfia nomadelfia.it/en/

But a less radical one is simply to produce common goods for a community, binding each member to rules to access such goods.
Community, commons and similar words all derive from latin "cum-munis" which meant "bound together by rules and mutually responsible".

Freed from competition, people can do much more with their time and energy!

But obviously, this simple rational consideration is not going to shaken your beliefs in individualism... that's not how oppressive religions work.

In any case... good luck!

@Ted @duponin

@newt you accept the reign of proprietary software, the culture and the industry it established, and then try to come up with excuses for it. Copyleft rejects it and wants to displace it. The small company shouldn't compete with the large to establish it's own little international monopoly on it's own little obscure product, then whine about how copyleft doesn't help them. It should directly serve the local population like electricians, mechanics or plumbers do. It should create infrastructure and dictate quality standards. Nobody want to do this hard work, it's just easier accept the narrative that copyleft was tried and didn't work, which remains the last line of defense for the established culture. We don't know what a true competition is, in true competition most of us would be yer average plumbers, and none of us wants it.
@Ted @Shamar @duponin

@namark @Ted @Shamar @duponin blah blah blah. So far, copyleft only benefits huge vendors like Red Hat. Not sure if I wanna reply to the rest of your comment.

@newt The reason microsoft does not own the world today is copyleft, the fact that its the competitors embraced the same culture instead of rejecting it is the problem, not copyleft. Copyleft will eventually displace them too. Your "I don't give a damn" attitude only helps them.
@Ted @Shamar @duponin

@namark @Ted @Shamar @duponin the reason Microsoft doesn't own the world lies mostly in anti-trust regulations, but also in their somewhat myopic worldview 15 years ago. On the other hand, you might say Google owns the world now, despite embracing GPL (but not AGPL lol). Or at least they own the web. Completely and totally.

And jeez, your post smells of ancient Linux propaganda featuring evil Bill Gates. The world is a bit more nuanced, you know.

Again, I must reiterate my point here. You are free to use whatever license you like. And so am I. Stop pushing you GPL pill down everyone's throat. Some people don't like it.
@newt @namark @Shamar @duponin Hi!
What did I accidentally get myself into?
Like always, I'm probably between the extremes.

@newt I meant the software world. I'm talking about the industry not some grandiose, all encompassing ideology. The reason microsoft doesn't own the entire industry is GCC. GPL != copyleft, GPL is a tool, that can work or not work. Copyleft is a cultrue. The only thing google owns that is in the realm of unjust abuse of copyright and where licenses matter at all is a couple of platform. If a couple key projects, that only existed thanks to GPL2, embraced the culture and upgraded their tools to GPL3 or AGPL (instead of admitting that they had no clue what GPL2 is even about) this would not have happened. WEB and all of it's standards is a pathology that formed to escape microsoft's ownership of desktop market, and it will eventually implode, when desktop market is reclaimed. I don't know what linux propaganda you talk about, but the only one I'm aware of is "as long as my project is successful I don't give a damn that it's in snake oil industry".

I'm not imposing anything on you, I simply joined the discussion to present my point of view. Your implication that I'm imposing on a public discussion is equivalent of asking me to simply stfu, which I must admit is commonly considered a very strong argument.

@Ted @Shamar @duponin

@namark @Ted @Shamar @duponin
>The reason microsoft doesn't own the entire industry is GCC

Would you mind expanding on this claim? Because so far it seems quite dubious.

@newt every competing operating system for the longest time was built with GCC. How competing could they be if they had to license microsoft's proprietary toolchain? Many hardware designers/manufacturers were lifted of the curse of "but will the software monopolist port their software for my new arch??".

Now of course everyone's favorite llvm came along, with exactly the same ideas of "copyleft doesn't work", "permissive means more freedom" (including freedom to exploit users), and in all this years of claiming technical superiority, the fact that it hasn't driven gcc out of the market is making it more and more clear, that the real reason for its existence is the proprietary forks galore, by nvidia, apple, and others, and if push come to shove with android, google surely as well, as it has already preemptively dropping support for gcc, when the replacement was designed to be almost identical, and not in any way incompatible.

@Ted @Shamar @duponin

@namark @Ted @Shamar @duponin funny, but not exactly.

Let's deconstruct your claim. First, despite GCC having been available since forever, somehow Microsoft has been dominating the desktop OS market since basically its invention. Linux has been around all this time, but somehow it is still as irrelevant as it was always. How did this happen? Well, repeat after me. SOFTWARE IS NOT THE END USER PRODUCT. It's just a small part. To create a product for a user to buy, you need quite a lot of other stuff. This is why we only have two competing desktop operating systems. And I'm using Linux for the most part, so don't think I'm biased.

Now, about LLVM. The main reason for LLVM to have been developed in the first place wasn't the license. A more permissive license is a nice thing, but nevertheless not the most important thing here. The biggest reason was that GCC devs were a bunch of douchebags, RMS included. There was a huge demand for more tight integration of compiler with other tools, but RMS et al were specifically opposed to this. Because then evil corporations would use GCC with their pesky IDEs. Oh well... I mean, it even ended up in GCC-XML becoming a thing.
Another reason was, GCC had (and still has!) its parts tightly intertwined. Frontend somehow pokes into backend and vice versa. LLVM is much more modular in this regard. You can implement your own language on top of LLVM just by compiling it into llvm-ir, and LLVM will do the rest for you. This is still impossible in GCC. Same goes for adding new platform support to backend.
GCC basically made the same error many other projects (and vendors) had, that is they assumed their dominance was gonna last forever. And then BHAM OOPS.

@newt what are you even arguing with? Where did I say GCC took over the desktop market? GCC allowed competing operating systems and architectures to take over alternate markets, embedded, servers, mobile. Whatever competition exist (barely) in desktop market as well owes its existence to GCC. Software product is a fallacy, selling it is exploitation. Only thing you can reasonably sell in our industry is technical service and warranty. Yes the current snake oil industry hinges on marketing, that is not a good thing, or something to strive for.

Sure thing LLVM is in every way technically superior and that is why GCC is still going toe to toe with it after a decade of competition. And omg It's so modular that every language worth a dime has to fork it.
GCC on the other hand apparently is not modular enough where you want it to be, and too modular where you don't want it be. And of course it is impossible to fork GCC to eliminate those glaring flaws that RMS personally demands, cause you know, that's how GPL works. I don't care about the mythology and politics around any of these celebrities, saying that they are preventing anything for GCC is a non-argument. Competition is not about being nice and wonderful and always agreeing with everything, if you think your ideas are better, fork it, if you can't fork it, than you abstract musings are irrelevant.

Reinventing wheels is common in R&D. But marketing R&D before it's ready, trying to influence the public through buzzwords and drama, and deliberately avoiding any sorts of guarantees are characteristics of a snake oil industry.

@Ted @Shamar @duponin

@newt feel free to ignore any emotion expressed, unless this is just another stfu.

@Ted @Shamar @duponin

Sign in to participate in the conversation
Qoto Mastodon

QOTO: Question Others to Teach Ourselves
An inclusive, Academic Freedom, instance
All cultures welcome.
Hate speech and harassment strictly forbidden.