When the revolution comes we need to unify tools
Hammer? Screwdriver? Spanner? One of these should be enough
Single handle with interchangeable heads.
All these cutting edge new languages are just wrappers around the same C libraries some anonymous grad students wrote in the 70s funded by some tiny government grants.
"You could not live with your own failure. Where did that bring you? Back to C."
All these cutting edge new languages are just wrappers around the same assembly code by Kathleen Booth in the 1940s for her university computer.
Programming languages and operating systems are really best developed together tbh
Otherwise you end up building an new, extremely unimaginative operating system into your programming language that is usually permanently linked with the operating system you developed it with anyway
part of project 2025 is making javascript the only programming language
Never thought I'd say this, but we gotta vote Biden.
Rust
" but rust is woke!!!"
Rust got trans women's seal of approval, that's how you know it's the real deal.
Arc<Box>
Can we ban all tools that aren't hammers while we are here?
After the revolution we should just unify english. Theres so many spoken languages around.
Hearies when there's more than one sign language type beat
Language design and theory has made some legitimate gains over the past couple decades. And different languages have different strengths suited for different problems. I think the issue is that even people who agree with this aren’t gonna agree on the language to standardize on. It’s the XKCD comic.
there are 28 coding languages
"We need to invent a universal language that brings all these together so everybody can just use one"
there are 29 coding languages
There's a lot of languages but people usually have a favorite that probably isn't very unique lol
There's no such thing as a universal language but we can build better languages (and operating systems) that dominate
There are THAT many people coding in assembly? There's no way. I refuse to believe it.
Yeahh that graph is based on the TIOBE index: https://en.wikipedia.org/wiki/TIOBE_index which is based on search engine queries lol. Kinda bad methodology but I guess it does reflect something
I'm primarily a C programmer who likes to work on operating systems and sometimes you just need assembly for certain things tbh and it can't be avoided. There's a significant amount of people working on low-level operating system or compiler or firmware stuff who have to write a lot of assembly, usually for machine specific things. It's really not that bad but ofc it depends on the machine you are programming (x86 is fucking awful)
Oh so assembly is that high up on the chart because people keep googling for help, that makes much more sense lol. My heart goes out to the assembly programmers. World's strongest soldiers
a lot of searches about assembly are because some languages let you embed it (C, rust, etc). there are also lots of tiny devices that you can't target with a lot of languages (or do so in an efficient way, anyway). so you wind up mixing assembly with C or rust to get anything useful done.
Sometimes it can be fun, like playing a real life version of TIS-100 or something lol
And then we can use our unified programming language to write a program so tall it breaches Heaven itself
learn more languages - it makes the code you write more effective on the human level. like learning Haskell taught me how to conceive of ideas that you would just solve by duplicating code or building a shitty interface that falls apart when you need to combine it with anything else. code is math and code is a means by which you communicate with other people. and you need to learn to express yourself in more ways in order to come to a deeper understanding of both of those facets.
I don't want fewer languages. I want more diversity and more experimentation. I'd love to see more domain-specialized languages that borrow ideas from the more academic languages and refine them. look at Elm and how much ground it broke - so much so that it's impacted how new javascript UI frameworks are designed. but Elm couldn't exist without languages like Haskell and Ocaml. and those couldn't exist without ML, Miranda, etc, etc.
putting limits on human creativity defeats the entire purpose of the left. we dream of being unshackled, of the genuine freedom that can only come from the defeat of capitalism and the dawn of a new, socialist political economy. perhaps if one day I write a better Lean, it will inspire someone to write a web language that brings proofs into the developers' lexicon and we will all have less shitty, poorly conceived, brittle code to maintain. and maybe you'll inspire me with a great idea of your own.
I like Guile with its compiler tower. You can use multiple languages on the same VM, even using libraries from one language on another, which is fucking cool. The core language for Guile is Scheme, and it supports standards from R4RS-R7RS, along with plenty of built-in SRFIs, some implemented out-of-tree and many of its own Guile-specific extensions.
For the compiler tower, so far we've got the aforementioned ballin' Scheme implementation, Emacs Lisp, an unfinished JavaScript implementation that doesn't even fully implement ES3, Brainfuck, Python, wonky Lua, and Guile-specific Clojure. Hopefully there's more to come and there's some I missed.
While the main purpose for the compiler tower is to lower a language into the IR (Tree-IL) (although you can lower a language into another language too, which then itself can be lowered into IR), which gets lowered to more verbose IR (CPS), then bytecode - we can also raise IR through decompilation. For example, Guile-JavaScript compiles Scheme to IR, then decompiles the IR and raises it to JavaScript.
Then there's also Guile Hoot, which I believe lowers the IR into WASM. In theory, when its complete, the above languages could work with Hoot and he compiled to Hoot, but I'm not entirely sure on this.
compiler tower
Could I get a ELI5?
I googled but doing that made me more confused.
https://www.gnu.org/software/guile/manual/html_node/Compiler-Tower.html
Guile’s compiler is quite simple – its compilers, to put it more accurately. Guile defines a tower of languages, starting at Scheme and progressively simplifying down to languages that resemble the VM instruction set (see Instruction Set).
Each language knows how to compile to the next, so each step is simple and understandable. Furthermore, this set of languages is not hardcoded into Guile, so it is possible for the user to add new high-level languages, new passes, or even different compilation targets.
Let's use the tower metaphor for a moment. Consider Scheme:
Scheme
|
|
v
Tree Intermediate Language (Tree-IL)
|
|
v
Continuation-Passing Style (CPS)
|
|
v
Bytecode
To compile Scheme to Bytecode, it's lowered through different stages until it's Bytecode.
We can also decompile, and raise code instead of lowering it - for example, here's how Guile-JavaScript works, which compiles Scheme to JavaScript, by first lowering Scheme to Tree-IL, then raising that Tree-IL to JavaScript through decompilation.
Scheme JavaScript
| ^
| |
v |
Tree Intermediate Language (Tree-IL)
We take code through the tower to transform it into its desired form.
Hope this made sense. Or maybe it confused you even more =).
Terrible take tbh
You can pry Julia out of my cold dead hands but if you make me work with other people in it I'll start sobbing
Yeah literally mostly all I want is a better C with less weird quirks and undefined behavior, may as well drop null-terminated strings except for compatibility too, maybe some kind of memory-safety mechanism too, ooh also better support for multi-dimensional arrays
Rust was kinda like that until it became the better C++
Maybe in 10 years someone will be designing a better Rust because they made the same mistakes of C++ and forced so much shit into it it's extremely difficult to write any new, better implementations and port to new systems
Rust
Banning programming languages seems like a bad idea to me, humanity has come to regret all that language standardization and cultural genocide that happened with the imposition of one universal linguistic language. My official (so the communist position) on programming languages is let a thousand alternates to C+ bloom, then crush them all under the jackboot of the communist party. THEY WILL ALL BE THE LANGUAGE OF COMMUNISM!
In my communist future it's all Torqur3D, Python, and BASIC. No, I do not know any of those.
I'm only familiar with Python...
chapotraphouse
Banned? DM Wmill to appeal.
No anti-nautilism posts. See: Eco-fascism Primer
Gossip posts go in c/gossip. Don't post low-hanging fruit here after it gets removed from c/gossip