Remix.run Logo
shevy-java 14 hours ago

I kind of like Smalltalk. Unfortunately syntax-wise Smalltalk is a huge set back and step back compared to Ruby. But Alan Kay's ideas are still epic today. I still don't think any language came close to his vision either; smalltalk definitely not. Ruby got closer but also no dice.

Elixir kind of got close too (prettier "erlang") - to have fault-tolerant mini-CPUs ("objects", aka similar to biological cells). The problem is that even people with grand ideas, such as Alan Kay, are not automatically great language designers. Matz is a better language designer than Alan Kay, for instance, whereas Alan Kay has the better ideas. It's a trade-off.

Note: I myself would not know how a language should look like that would follow Alan Kay's vision closer. It is definitely not smalltalk; it is also not ruby, though ruby is very good. I know I would suck as language designer, but as an improvement I would have a language similar to ruby (no, not crystal - crystal is a worse "ruby"), with a stronger focus on speed (perhaps have a second language that can be as fast as C here and be similar) and with a much stronger focus on what erlang brought to the table; that would get us close to, say, around 85% or 90%. And then add the rest that could fulfil Alan Kay's vision. Of course we need a specification too, because just saying "90% of his vision" is also pointless. I would perhaps start from erlang, retain the good bits, make it a modern variant of OOP (and OOP is also defined differently in different programming languages, so we need to define that term too, in the specification).

NetMageSCW 9 hours ago | parent [-]

How is the syntax a step back? Smalltalk is the ultimate orthogonal language - everything is consistent. Famously the Smalltalk grammar fits on a postcard and tells you everything you need to know to understand the system from the source code.

travisgriggs 2 hours ago | parent [-]

Yeah, I have no idea what shevy-java is talking about either. I would accept “huge step too far”, but not backwards. Unless your belief is that on the 8th day God gave mankind Algol syntax and said “let all languages look like this”. I’ll give that it can feel pretty foreign, like forth, lisp, erlang also do. These languages, imo, all use syntax where the form of the syntax binds nicely, reinforces even, with their computation models.