Yes, the distinction between class and instance methods in an interface with + and - characters must be one of the most elegant solutions introduced in a programming language ever.
Seriously, I could never understand this claim of "elegance" of Objective C…
Really? Whinging about syntax? You don't understand how cleanly dividing the C bits and bobs from the Smalltalk-derived object system by using distinct syntax could be considered a more elegant solution to the problem than C++'s insistence in rooting both worlds in a single hierarchy of functionality?
"We have problems, let’s introduce some code style guidelines, linting, error reporting and most importantly tests!"
"Nah, let's just switch to Typescript, it will solve all those problems. At least partially."
I mean, look at the number of tests needed to replace a few lines of types. You have to check the behavior of your functions for all kinds of invalid inputs. With typescript you still need tests but less of them. And also you can get rid of a lot of input validation in your production code.
No I didn’t. The statement was that Typescript solves the listed issues, which is obviously not true. There may be of course discussion whether TS _helps_ to solve such issues but you won’t be able to convince me that TS _solves_ e.g. lack of testing.
No it wouldn't. Sending three or four transfers from mobile banking app is for sure faster than finding bank number, calling them, listening to the info that the conversation will be recorded, listening to the menu, then listening to music interrupted with "we will be with you shortly" etc. I guess I could send 20 transfers at least during this time.
They all may have excellent C compatibility, but this is not the point. The point is that without C compatibility C++ could be smaller and simpler, and yet still meeting the same goals and covering the same use cases. Objective C has Smalltalkish object system glued to C base. Fundamental C++ techniques like RAII not possible there. D has GC. C# runs in a VM. I would not call a language with any of those features very similar to C++.
OTOH if not for C compatibility we would not have this discussion, since we would most likely never heard of C++.
Well, Common Lisp is simple. Except maybe the Metaobject Protocol (which ultimately didn't make it into standard, but it sort of still is). And except eval-when. Eval-when is magic.
In "Thus Spoke Lem" - a several hundred pages interview with Lem - there is a chapter about Lem's likes and dislikes in literature. He is asked about books which influenced his thought and he mentions several of them, read when he was young. When asked about later influences he talks about GEB and Mind's I only. He says that again and again he sees in those books concepts similar to his own, but he is sure that Hofstadter reached them independently. I do not think that an English translation of Thus Spoke Lem exists.
Another connection between Hofstadter and Lem: in Le Ton Beau de Marot there is a chapter where Hofstadter discusses possible ways of translating How the World Was Saved from Cyberiad.
Seriously, I could never understand this claim of "elegance" of Objective C…