Slash Boxes
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

use Perl Log In

Log In

[ Create a new account ]

jdporter (36)

Journal of jdporter (36)

Wednesday July 10, 2002
10:31 AM

tcl and smalltalk

[ #6255 ]

Believe it or not, reading the perl6 summaries (thanks, pd!) has gotten me to look at other "meta-compiled" languages, in particular, Tcl and Smalltalk.

I have to say, I really like the semantics of Tcl (the source-level language) (though the syntax is perhaps slightly less than ideal), and I really REALLY like the execution semantics of the smalltalk virtual machine. But the syntax of Smalltalk is heinously hideous! I wonder if there are any other languages that have back-ends targeting the smalltalk vm? I almost wish the perl6 guys had considering using the smalltalk vm, at least as a starting point. So much good work has already been done on virtual machines, and I'm not convinced that reading a few papers is enough to allow one to say that he is not reinventing the wheel.

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
More | Login | Reply
Loading... please wait.
  • Looked at some of the smalltalk engines, as well as some Scheme and Lisp engines. None of them were up to what we needed--they were all 80% there, and getting the rest of the way (both in terms of portability and features) looked to be more trouble than it was worth. Plus the inevitable licensing issues, of which there were more than I cared to think about.
  • I'd always been led to believe Tcl was a strictly interpreted language, and this was the source of man of the hoops one must go trhough for math, string munging, etc. (It has been a long time since I touched Tcl)
    Were that I say, pancakes?
    • I'd always been led to believe Tcl was a strictly interpreted language

      And so it was, until version 8.

      Now it is a "meta-compiled" (or is it "demi-compiled"?) language, just like Perl and all the rest of these modern high-level dynamic languages. (with perhaps a few exceptions. One that might not be (yes, I ought to go check) is Rebol, considering its progenitor is Forth.)

      • Version 1 of REBOL is tokenized and does weird things internally, as it's entirely done in Continuation Passing Style. (Saw a talk by the guy who wrote the code) Version 2 was a complete rewrite of version one, since nobody understands CPS, and I dunno how they do it.
  • But the syntax of Smalltalk is heinously hideous!

    Smalltalk has a deceptively simple syntax. After using it for a while, everthing else looks like overkill. Fortunately, overkill in Perl is quite fun.

    • Strange isn't it. The more Smalltalk I read, the more I like the syntax. There's something to be said for a really, really simple syntax...
      • Being a Perl citizen, I should be ashamed to use this argument, but... To me, the syntax of smalltalk can be described in two words: ug, lee.

        But then, I haven't read much smalltalk. I'm guessing that it's optimized more for writing (e.g. ^ vice return ), so maybe I won't appreciate it until I write something in it.

        Anyway, the smalltalk vm is exceptionally well designed, and could easily have compilers for other languages targeted to it. I wonder if any already exist!