| ▲ | Smalltalker-80 5 hours ago | ||||||||||||||||
The appeal of having a very simple, base syntax and almost everything in the library / primitives, would be that code is always easy to read and write, also on the 'reflection' level, where most languages have specific keywords that cannot be used 'first class' with the rest of the language. E.g: Types next to class objects or operator overloading, look at Swift.. (Of course the complexity of a full working system (library) does not disappear in Smalltalk, it's just easier to read and modify. :) | |||||||||||||||||
| ▲ | petalmind 5 hours ago | parent [-] | ||||||||||||||||
> on the 'reflection' level, where most languages have specific keywords that cannot be used 'first class' with the rest of the language. In Ruby this is also the other way around, and it's one of my pet peeves. `Kernel#callcc` looks like a method (arguably, of a special class), yet it's impossible to re-implement directly in the language, as far as I can tell. Same with `raise`, I keep forgetting that it's not a keyword even. | |||||||||||||||||
| |||||||||||||||||