5 ms·
Smalltalk runtime in the browser
- andreiursan 13y agofinally, an easy way to learn smalltalk http://amber-lang.net/learn.html http://amber-lang.net/learn.html
- aidos 13y agoI get an unexpected character on line 1 message when I push the doit button on an iPhone. Boooo. Oh well, iPhone normally isn't great for learning languages on anyway.
- lelf 13y agoIt's not only iPhone
- drdaeman 13y agoYou have to select "ProfStef next." text on the page, in a manner browser's document.getSelection would find those (not sure whenever this is possible on iPhone). I think, given this is a newbie-oriented tutorial, the alert should be more helpful, like "empty program, select some text first!" instead of unexpected null character.
- andreiursan 13y agoI didn't check it from iPhone. From my desktop (iMac) I only place the cursor on the "ProfStef next." line and press Ctrl-d or press the DoIt or PrintI - I didn't need to select the text and everything worked.
- xradionut 13y agoSqueak is a easy way to learn Smalltalk.
- kaonashi 13y agoParse error on line 1 column 44 : Unexpected character null
- ToastyMallows 13y agoYou have to select the text and hit the button.
- kaonashi 13y agoI guess it pays to read the instructions. >.<
- girvo 13y agoHoly heck that is cool. I begin to wonder if this is the way a Smalltalk or Lisp-machine-like live environments can be resurrected for 2013? I mean, Javascript and the Browser are somewhat similar, but this takes it to another level.
- seanmcdirmid 13y agoUsing this, I found myself back in CSE 341 at UW using Smalltalk VisualWorks. Nothing has changed a bit, and the world has moved on. Also, directness isn't liveness. But then they don't define live at all, so it could mean anything.
- ithkuil 13y agoThe world has changed in many ways, and there is plenty of that these exciting shiny things to play with, if you wish. Yet too many great ideas were abandoned because, among other reasons, they were too ahead of their times. I welcome efforts like this, because they let these ideas to be known to the current generation, not just as history, but as something that fits into today's environment, tooling and goals. How many attempts to create the perfect ide for programming the web, in the web, and yet we keep the distinction of what is source "file" and what is the app being run, and how you debug it. Smalltalk and it's developing environment made blurred this boundary, and might be a great inspiration if not a practical solution.
- seanmcdirmid 13y agoIt was a great idea in the 80s, or even in 1995 when I tried it out myself. A lot of those ideas were cherry picked by people like Dave Thomas (OTI) into what later became IBM Smalltalk/Java VisualAge and eventually...Eclipse. Ya, the real world is a bit messier and no one has brought images over BECAUSE we couldn't make them work in practice, but 95% of the ideas have been transferred. I find what Bracha is doing in NewSpeak to be much more interesting and up to date with modern times. Just rehashing a 20 year old interface and putting it in the web is great from a retro perspective, but it doesn't move us forward at all. It is high time to move out of Smalltalk's shadow.
- e12e 13y agoAlso take a look at: http://http://lively-kernel.org/ One noteable feature is save-via-webdav.
- gosub 13y agoThis is the "lisp machine" equivalent: http://alex.nisnevich.com/ecmachine/ http://alex.nisnevich.com/ecmachine/
- BruceM 13y agoThat's nothing like Symbolics Genera. Genera is amazing in so many ways, even how it does command line completion. Check out http://en.wikipedia.org/wiki/Genera_(operating_system) http://en.wikipedia.org/wiki/Genera_(operating_system) for some basic info on what a Lisp Machine was like...
- gosub 13y agoI didn't mean equivalent to a lisp machine, just equivalent to the submission in the lisp machine direction.
- mietek 13y agoCan you go into a little more detail, or point me to a more in-depth personal account of using Genera?
- BruceM 13y agoThere's a lot of info around, especially documentation, but it isn't going to give a feel of actually using it. If you look around, you can find that you can run it yourself on a sufficiently old x86_64 Linux / in a VM, but it is a bit of a complex process. I've asked someone else if they might respond to you with some further and more useful info. Hopefully they can!
- mietek 13y agoThanks, I've looked around and have the necessary parts, but not the necessary knowledge. Time is also a rather limited commodity. Looking forward to any responses!
- lispm 13y agoI would not put every Lisp implementation into the context of a Lisp Machine with a Lisp operating system. A Lisp in a browser with some features like files and threads is something different from a computer, a piece of hardware, which actually boots into Lisp. Also Genera, the OS of the Symbolics Lisp Machine, is a complex piece of software, which was based on the work of many person-years. It was also developed over a decade and sold commercially in several releases for several generations of hardware. As such a Lisp environment in a browser is a nice achievement and it looks like a fun project. Naturally it is far away from a really sophisticated system like Genera. Still, it is interesting to write something like this small project. Though I would prefer something which would be compatible with Common Lisp and would allow reuse in that direction. If people would want to know more about Genera, the operating system, the Wikipedia article is a good source. If there is something missing, we should add it. Kalman Reti (who worked for Symbolics for many years) gave a presentation: http://kvardek-du.kerno.org/2013/03/kalman-reti-on-lisp-machines.html http://kvardek-du.kerno.org/2013/03/kalman-reti-on-lisp-mach...
- bionerd 13y agoSo many awesome things to try out and so little time... I'm really excited to see such great ideas of the past being resurrected like that. Things like Lisp machines and Smalltalk environment are still revolutionary and have much to contribute to the technology of the present. It's a shame really that they almost died out. I could only guess what were the reasons for that but it's great to see efforts trying to bring them back to the future where they belong.
- mtrimpe 13y agoThe Mill CPU [1] that was discussed a while ago is quite close to being the perfect architecture for a Lisp though, so hopefully many of other parts of these ideas will also come back in even more impressive forms. [1] http://www.youtube.com/watch?v=QGw-cy0ylCc http://www.youtube.com/watch?v=QGw-cy0ylCc
- cwzwarich 13y agoWhy is the Mill CPU good for Lisp? The Mill requires the compiler to schedule for cache and memory latency, but I would expect this to be difficult to predict for Lisp programs.
- mtrimpe 13y agoYou wouldn't predict it but if you assume decent code/data locality, which isn't an odd assumption in this case, the Mill's concept of scope and execution is close to a hardware implementation of Lisp's apply. FYI; I'm at the limits of my understanding here, so if you're a compiler or CPU architect and you doubt what I'm saying here is true then you're probably right ;)
- dysoco 13y agoCurious considering my comment yesterday: https://news.ycombinator.com/item?id=6214917 https://news.ycombinator.com/item?id=6214917
- methehack 13y agoIf this is solid, would be cool to see firebase (or similar) integration.