4 ms·
The bar for a new programming language is higher than ten years ago. Introducing a language should now include "What are the cool new things in this language?"
by CharlesMerriam2 7y ago
The bar for a new programming language is higher than ten years ago.
Introducing a language should now include "What are the cool new things in this language?" The short list where this shines, e.g., "Go - compiles really fast and no classes". "Rust - deep safety and a novel macro system". "Python - Batteries included and easy to write."
A language also needs to include some design philosophies. Sometimes its simple: "DRY"; sometimes its the tradeoffs ordered in Zen of Python. You need to say something.
So, what's this new language do again?
- throwawayjava 7y agoFrom the website: "A performant systems programming language that feels like a scripting language."
- mehrdadn 7y ago> Introducing a language should now include "What are the cool new things in this language?" From their page: - Aims to combine the expressivity of Scheme with the convenience of Python, Lua or Javascript and the performance of C. - Compile-time resource management using view propagation, an annotation-free variation of borrow checking. - Support for live code execution as well as offline compilation of object files. - Statically typed but fully inferred type system via forward propagation. Supports closures as zero-cost abstraction. etc. I don't know how tough the crowd is nowadays but I was already sold when I read the 1st and 2nd items above.
- jerf 7y agoWith no direct disrespect intended towards these authors in particular, I'll believe "expressivity of Scheme with the convenience of Python, Lua or Javascript and the performance of C" when I see it. Goals aren't results. I've seen that goal a lot. Given how often I've seen it, and how I'm yet to see a result that matches it, I'm coming around to the assumption that that set of goals is probably just not possible. (I suspect Python, Javascript, etc. are fundamentally, in their very core, based on some operations and conveniences that are just fundamentally going to be slow on modern processors. The only way around it is to drop some of the conveniences. That I have seen be successful.) On the "goals aren't results" front, the second one is also one that I'd want to see how it plays out a bit more before getting too excited; it's also possible that it may not be possible at it currently exists in the author's heads.
- sanxiyn 7y agoIf "no classes" can be considered "where it shines", it seems to me that the bar is not very high.