On Mon, May 7, 2018 at 1:43 PM Trygve Reenskaug <[email protected]> wrote:
> Please tell me when Java, C, C++, etc programs stopped working because > their runtime systems had changed. > Please tell me when Java, C, C++, etc compilers stopped compiling old code > because the languages had changed. > 1) C and C++ do not have runtime systems, only Java has. The closest to C with a runtime system is C# that has .NET. 2) Pharo does not have a runtime system, it has a live coding enviroment which goes far beyond the demands of a runtime system which is usually compiler + intepreter + VM + standard library. 3) Pharo language changes even less often than C/C++ and Java. Even though C/C++ and Java are too afraid to change because of the panic they will cause to millions of developers too busy maintaining ugly highly unstable code that those languages are so prone at. Pharo language changes even less mainly because its far less minimal , you only need 6 lines of code to describe the entire syntax the rest is implemented as libraries which also rarely change as well. 99.9% of Pharo issues/bugs are IDE related or some advanced software development tool and new library that goes far beyond the scope of the language and its "standard" library. So technically speaking if we were to compared Pharo with C/C++ and Java on equal grounds as languages , plus stanard library , plus vm etc , Pharo is stellar they are a big pile of mess which is rapidly replaced by dynamic languages. It was just 2 decades ago when C++ was the undisputed king of software development and using another language besides VB was seen as nothing less than insane. Nowdays people have long abandoned ship and VB is seen as nothing more than an abomination. Its ironic you mentioned Java because Java exist for one thing and one thing only , to kill C++. Did not manage to succeed but it did manage to steal away half of the developers on the premise alone that Java is far less likely to create unstable code than C/C++. The irony of course did not stop there and pretty much every modern dynamic language (modern static languages are an extremely rare breed in comparison) use the same argument or far more stable , much easier to debug and maintaine code. I have coded in Pharo for 6 years and nowdays I daily deal with C++ (mainly because of graphics code through OpenGL, Cuda etc) and I can tell you stability wise there is not even a comparison. Sure the language and its library can be stable but what use is that to me when the code is so prone to creating a ton of problem I have to ellude with the acrobatic skills of spiderman ? Pharo is far from perfect, if it was I would still be coding in it but none the less, stability it definetly one of its main problems. Everything crash and burns at some point and frankly Pharo does it far more elegantly than any other language I have ever used and far less so.
