3 ms·
Isn't it a bit too late (maybe 20 years too late) to work on new OO language? Not that I discourage you, but what areas of OO in languages not explored/expresse
by Iwan-Zotow 7y ago
Isn't it a bit too late (maybe 20 years too late) to work on new OO language? Not that I discourage you, but what areas of OO in languages not explored/expressed by now (say, by C#, Java, C++, younameit) ?
- neeeeees 7y agoNot discouraging at all - that's a very valid point! Funnily enough, I wanted to try implementing an OO language because they are popular... I use them a lot, which makes it important for me to understand how they work.
- nickik 7y agoTo get an interesting unique feature I recommend implementing generic dispatch a la CLOS or Dylan. That also makes your library writing a real joy, for example you can just write a plus function for each combo of types. Check out Dylan, a high performance dynamic language that compiles to LLVM. Check out this example: https://opendylan.org/documentation/intro-dylan/multiple-dispatch.html https://opendylan.org/documentation/intro-dylan/multiple-dis... This is how to do it: https://en.wikipedia.org/wiki/C3_linearization https://en.wikipedia.org/wiki/C3_linearization Gives the language powerful uniqueness feature that the 'mainstream' languages don't have.
- Iwan-Zotow 7y agoBut C3 linearization is pretty mainstream after it was implemented in Python
- neeeeees 7y agoInteresting suggestion! I'll definitely check it out. Looks like this, along with generics, will make the library a lot easier to write. Thanks!