Geoffrey Knauth wrote on 04/01/2018 01:05 PM:
On Sunday, April 1, 2018 at 12:57:46 PM UTC-4, Stephen Smith wrote:

    It's been a long tough road as to which implementation language to
    choose for it. I'm down to two now after much experimenting -
    Racket of course, and Smalltalk.


Now you have me wondering which is harder, implementing Smalltalk in Racket, or the other way around.

Implementing the Smalltalk-80 language alone in Racket seems pretty easy, and could be a really fun hobby project.

You can make it non-easy by going for performance optimizations, while keeping it fully dynamic.  But, remember, we used to run Smalltalk on hardware that's very slow compared to today, so you might be pleasantly surprised with the performance of an unoptimized implementation for traditional Smalltalk-80 applications.

The Smalltalk-80 GUI environment would be fun to write from scratch, or you could look for an open source implementation atop Smalltalk GUI primitives, and implement those primitives atop Racket GUI.  You might want to go retro chic, and not use Racket GUI widgets (pop-up menus, lists, text, scrollbars, etc.), except perhaps for the top-level windows.

Once you have your standard Smalltalk-80 browsers, you can then build upon it with non-standard, like "http://www.neilvandyke.org/smalltalk-chg/";.

A program in `#lang smalltalk` could boot the environment, and then you're no longer dealing with `#lang`, but with live Smalltalk objects, created and manipulated through environment browsers.

A bonus of reading old Smalltalk-80 stuff is that you get exposed to a bit of some of the best and most optimistic visionary thinking about information technology, when people had grand ideas for how computers could elevate everyone (spoilers: it wasn't about a couple billionaire 'social' dotcom founders seizing power over everyone, and CS students weren't thinking like startup MBAs).

--
You received this message because you are subscribed to the Google Groups "Racket 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to