4 ms·
I mean this without snideness, but I’m constantly amazed at the demand for C-like languages that continue to arrive with every possible combination of features.
by reikonomusha 6y ago
I mean this without snideness, but I’m constantly amazed at the demand for C-like languages that continue to arrive with every possible combination of features. When I look at V code, it looks barely different than the plethora of options syntactically and semantically. To be sure, it is different, and I get that a lot of programmers find the “no BS minimalism” aspect appealing. (A lot if programmers in fact start a rewrite project with “no BS minimalism”, only to asymptotically recreate the ‘BS’ and destroy the ‘minimalism’.) But I can’t imagine anything being vastly different than any of the other C-likes once your project is big enough, except that V is currently nascent and changing.
I remember eC [1, 2] from Ecere being one such example of an “exciting new C”: it had traditional class-based OO, no header files (!), cross platform, reflection, etc etc etc. It came with a huge runtime library with tons of demos. It started 16 years ago (!!). There’s of course D as well (which is more often pitched as a C++ replacement), and its own Walter Bright frequently seen around here, and some companies use it, but it hasn’t truly exploded into mainstream use.
Can interested folks (or the author) comment? Are you bored and want a fun new take on programming? Or are you truly, in practice, extremely dissatisfied with the current marketplace of C alternatives and V actually is a take that “gets things right”?
[1] https://en.m.wikipedia.org/wiki/EC_(programming_language) https://en.m.wikipedia.org/wiki/EC_(programming_language)
[2] https://ec-lang.org/overview/ https://ec-lang.org/overview/
- jlokier 6y ago> Are you bored and want a fun new take on programming? Or are you truly, in practice, extremely dissatisfied with the current marketplace of C alternatives I think the reason is something else: It's not the demand that's amazing, it's the supply. A lot of people like making languages, and full working environments to go with them. It's fun! If you're into that sort of thing, it might be the most attractive kind of project, with a kind of geek gravity that draws you in when you've got the bug. A new language and its environment is an interesting exercise, even if it takes years. It's something to do to hone your craft. It's not particularly difficult, if you go for it, it just takes time. You can add all those ideas you wish other languages had but never do. Probably if you're into making languages you have a lot of ideas like that. There's lots of interesting things to learn, lots of puzzles to solve, and then you have an artifact at the end which other people can appreciate. They might even find it useful, which is another reward, another bit of satisfaction. If that's a major reason for new languages, why C-like? I think C-like hits a design sweet-spot that is easy to understand and easy to branch out from. But it's also something you know other people are likely to understand and appreciate. It's not too exotic, at least at first glance. With so much supply and a lot less demand, you want your language to be noticed, to be useful and seen as useful. Being C-like boosts chances of acceptance as a language to take that bit more seriously. I company I worked for a very long time ago wrote a hardware compiler, with a front-end language for hardware called Handel which was a DSL in Standard ML (great language. ML. by the way). It was used, but it got more popular when they wrote a C-like front end and called it Handel-C. There was no real difference to the language, and Handel-C was in many ways less powerful (because there was no ML with which to manipulate the syntax tree), but the C-like syntax made it a look familiar, and therefore marketable.
- wheresmycraisin 6y ago> Are you bored and want a fun new take on programming? Nothing wrong with that.
- reikonomusha 6y agoAbsolutely not! Programming doesn’t need to be stuffy with only “old timer” languages. Maybe 8 years into programming I myself got very much into language and compiler design. I started as most would by making languages which just had different keywords. Then at some point truly ventured off the deep end with languages that include (for example) built-in abstract algebra and symbolic computation. None of my creations would have ever been passed off as being “practical” for any sort of industrial use. The point was that it was fun, and I learned an enormous amount from my own and others’ languages.
- ddevault 6y agoCan I ask you to send me an email? I'd like to follow up on this comment in private. I can be reached at sir@cmpwn.com
- lmm 6y agoWhenever I hear a new language announced here I ask "what does it offer over OCaml?" Disappointingly often the answer seems to be nothing. At least in the post-Rust world most of the ML featureset is now part of the baseline for people who think they need non-GC or "as fast as possible".
- dnautics 6y agoI currently work with Zig, which is one of the C-like languages. C has a ton of footguns, and is not easy to parse (due to a lexical macro system). Because of these (and other) properties, I made Zigler (https://www.youtube.com/watch?v=fIxNEILcNGM https://www.youtube.com/watch?v=fIxNEILcNGM), which is an automatically recompiling inline FFI system for the Elixir language, it's arguably easier to write correct C FFI functions with Zig as an intermediate than in C itself.
- throw_m239339 6y agoIt's normal, people want C like performances, with zero cost abstractions, with memory safety, without the ugliness, unsafe behavior of C. C is a language thought out for 1970 constraints and developers can do better. Developers won't stop creating languages until something that really succeed in replacing C is created.
- fileeditview 6y agoAnd here I thought that I had all of these languages already bookmarked but I never heard of eC before. Thanks for mentioning. It looks very interesting.