4 ms·
I wonder - what do people who used to code in Smalltalk think of "modern" languages. Like Golang, Rust, etc. -ss
by senozhatsky 8y ago
I wonder - what do people who used to code in Smalltalk think of "modern" languages. Like Golang, Rust, etc.
-ss
- pjmlp 8y agoWe stick to our Java and .NET development environments, the only ones close enough to the experience.
- senozhatsky 8y agoOh, that's interesting indeed! Thanks. I speak zero Smalltalk (I must read a "Smalltalk book" after all), but somehow I expected to see C++ on the list, simply because Stroustrup said in his TC++PL book that Smalltalk has influenced C++ a lot. Do you think that Java and .Net are closer to Smalltalk than C++? -ss
- pjmlp 8y agoThe only C++ environments that kind of came close to it were Lucid C++ and C++ Builder. Java and .NET are based on VM with mixed execution models, interpreted, AOT and JIT to native code. Their semantic model is closer to Smalltalk, with GC, dynamic loading, incremental compilation, ability to change code in debug mode and continue, reflection, dynamically generate bytecode on the fly, ....
- senozhatsky 8y agoThanks a ton, very interesting. I heard of Borland C++ Builder (never had a chance to try it out tho), have never heard of Lucid C++. BTW I just found out that, apparently, C++ Builder is, sort of, still alive. The most recent release is "10.2 Tokyo / March 22, 2017". I thought it was dead for a decade or so. -ss
- pjmlp 8y agoSearch for Lucid C++ demo on YouTube. Currently on mobile, not so easy to provide a link.
- senozhatsky 8y agoNo worries, I think I found it https://www.youtube.com/watch?v=pQQTScuApWk https://www.youtube.com/watch?v=pQQTScuApWk That's awesome. -ss
- jolmg 8y agoCan you expand on that? I would never have expected to see Smalltalk being compared with Java. They really seem worlds apart. If anything, among more "modern" languages, I would think that the closest thing to Smalltalk is Ruby. EDIT: Here's an example piece of code of Smalltalk: #(1 2 3 4 5) select: [:i| i odd ] in the equivalent Ruby: [1,2,3,4,5].select {|i| i.odd? }
- dragonwriter 8y agoAs a language, Ruby is closer to Smalltalk than Java or C# are. But for overall development experience, modern industrial C# and Java developer environments may be closer to the Smalltalk dev experience.
- deleted 8y ago[deleted]
- pjmlp 8y agoYou are only focused on the language grammar, instead of the full development experience. This is what most people miss when comparing languages.
- jolmg 8y agoEven then, I heard Smalltalk development was like Lisp, with the ability to do incremental compilation / image based development where you initiate an image that represents a process with built-in, generic saving functionality and the ability to edit the code while it runs. You could start an image, run it, build the program as it runs, save it, restart the computer, and continue the image so it runs from the point it was saved. Here's some online documentation that describes that[1]. There's also REPLs for Smalltalk, but none for Java due to it's syntactic structure that prevents top-level statements. That sounds like Smalltalk leads to far different development experiences compared to Java. In other words, I can't think of how anything between Smalltalk and Java could be similar (at least more so than comparing it to any other programming language). Could you expand on that? [1] http://web.cecs.pdx.edu/~harry/musings/SmalltalkOverview.html#The%20Image http://web.cecs.pdx.edu/~harry/musings/SmalltalkOverview.htm...
- jecel 8y agoSome of us still use Smalltalk, as you might imagine (the language is hardly in the top 10 but is far from dead). Dan Ingalls, the author of that article, has been using Javascript for the past decade or so to create a Smalltalk-like environment called Lively Kernel. L Peter Deutsch gave a talk many years ago about why Python had replaced Smalltalk as his favorite language (I can no longer find the talk on the Internet). David Ungar (who co-created the Smalltalk On A RISC, SOAR, chip and the Self language) seems to be focused on Swift.
- senozhatsky 8y agoYou have a great memory. Thanks for the pointers, very educational. -ss