5 ms·
I went reading to see if this was some evolution of Pharo. It is not. I paged through about 20 of the pages. Have we reached a point where “new computer langua
by travisgriggs 3y ago
I went reading to see if this was some evolution of Pharo. It is not.
I paged through about 20 of the pages. Have we reached a point where “new computer language” means variation on a theme, same pigs, different lipstick? Nothing negative meant. It all looks decently thought out and pretty otherwise conventional. Kind of like yet-another-marvel-movie. It’s different, but it isn’t really.
I miss the days where “new language” meant different ideas and models. Like when it was Scheme and Forth and C++ and Pascal and Ada and ML and Fortran and Smalltalk and Lisp and Eiffel and Beta and Prolog and Self. Those were much more varied days.
- Garlef 3y agoCheck out Unison and Winglang.
- klyrs 3y agoI dunno, @mdaniel's comment points to a potential gamechanger in the evolution of rust-inspired languages. I'm not a rust expert but fine-grain mut seems like it could reduce the performance cost of safety, or at least, make it much easier to avoid paying that cost unnecessarily. Big motions in language theory should probably be expected to diminish in frequency as the field matures. Not every new language needs to do that. Just about every language developer has their own pet language, often more than one. It's a good thing. It's how the field advances.
- bmitc 3y ago> It's a good thing. It's how the field advances. I would say, generally speaking, that most new languages these days do not solve the big problems of writing software. For the most part, language level ideas that change the big picture of how one interacts with the system are few and far between, and these ideas have mostly already been discovered in older languages. New languages usually even ignore these. For example, Rust's lack of a REPL from the start. And languages like Rust are spending a lot of time refiguring out the wheel and stalling midway through when it comes to library development.
- lolinder 3y agoA missing REPL in Rust is actually a great example of why languages ignore (some) ideas that other languages have. A programming language is defined as much by what it chooses not to include as by what it chooses to include. Functional languages choose to not include mutation and statements, but we don't complain about them "ignoring" those features, it's a very intentional decision to drop them. Golang looked at exceptions and decided to not include them. Not every language should have every feature, both from a practical perspective (how would you maintain such a language?) and an ergonomic one (how would you work in such a language?). Rust's lack of a REPL wasn't just them ignoring an important innovation, it was them choosing to not implement a feature that they know their primary audience won't use and that doesn't do much to help in the compiler-centric development flow that they're working on supporting. Rust doesn't have a REPL because REPL-oriented development doesn't really suit Rust, not because they forgot that REPLs are a thing.
- wk_end 3y agoThe universe of good - or even seemingly good - ideas may or may not be infinite, but it probably thins out as you get further away from the centre. It's unsurprising that the field would coalesce around certain demonstrably great ideas, and that revolutionary game-changers would start becoming harder and harder to find. FWIW, even in your list you see lots of variations on themes rather that unique ideas/models. Scheme and Lisp are closely linked. Pascal and Ada and Fortran are all conceptually similar, and there's a good amount of cross-pollination between them and Beta and Eiffel and C++. Self is an evolution of Smalltalk. And so on.
- torginus 3y agoI think it's a case of deciding to focus the innovation budget somewhere else. Claro on the surface level looks a lot like Go, and it's probably intentional. Crafting an unique syntax, making sure it's efficiently parseable, and nice to use is a whole lot of effort, and the solutions we have today in this space are basically fine. Claro seems to focus its efforts elsewhere - the main innovation seems to be its graph-based multithreaded work scheduling which is a novel concept, and has major implications for program organization, just not syntax.
- jasonsteving 3y agoThanks, this is exactly how I'm thinking about this! And actually, beyond just having a certain "innovation budget" (which is true) I also just personally want a language that's aggressively simple (a subjective measure). I'm trying hard to make something that will fit in my head in the end.
- igouy 3y agoBosque? https://github.com/microsoft/BosqueLanguage https://github.com/microsoft/BosqueLanguage
- summerlight 3y agoIt's just become too expensive to develop a new language based on a novel model if you also want some serious usages since the expectation for a production level system has skyrocketed. We still have lots of new interesting languages in development (especially in academia) but those won't ever see wide adoption outside their own paper though.