IWETHEY v. 0.3.0 | TODO
1,095 registered users | 1 active user | 0 LpH | Statistics
Login | Create New User
IWETHEY Banner

Welcome to IWETHEY!

New Funny you should mention it
Just ran across a thread on Squeak list talking about changing a couple low level operations in the VM to support something more like IDT on message sends to allow any object to be used as a CompiledMethod (the object that represents executable code). Which raised the following comment:


Incidentally, does anyone know of prior art for doing that kind
of jumping from VM to meta-interpreter and back, in Smalltalk or other
similar (OO, bytecode) systems? There's a company doing exactly that to
enable call/cc in Java, and I'm curious if their patent application has
any validity.
------
My first thought was that your question reminded me of indirect-threaded
Forth implementations, which is the classic style of Forth
implementation. In an indirect-threaded Forth, each "subroutine"
(called a "word" in Forth) begins with the address of its interpreter.
Also, consider the similar, but slightly different, direct-threaded
Forth implementation style where every "word" begins with machine code
which is the interpreter for that "word" (it is typically a jump or call
to the interpreter for that class of Forth "word").

Maybe that could be seen as prior art, without needing to squint too
hard? I suppose this goes back to the late 1960s or early 1970s. There
was a nice article in Byte (1980? or early 1980s) with a title something
like "Threaded Interpreters" which went into some detail about
indirect-threading, direct-threading, subroutine-threading, and
token-threading.



"Packed like lemmings into shiny metal boxes.
Contestants in a suicidal race."
    - Synchronicity II - The Police
New Re: Funny you should mention it
Well, the ideal system to me would be:

1) A FORTH VM for hardware abstraction

2) A Smalltalk windowing environment. If the basic Smalltalk ideas
map onto FORTH constructs like code and parameter fields, and
threading, and dictionaries, then it's a done deal to write Smalltalk in FORTH.

3) An APL system coded in Smalltalk. This would be an acid test
because APL HAS to be very fast at moving data, which is what
really takes the most time.
-drl
     The awakening begins - (tuberculosis) - (140)
         Quotes from Uncle Bob - (admin) - (12)
             Maybe it's just me... - (Simon_Jester) - (5)
                 Static languages make the code brittle ... - (bluke)
                 History revisionism - beware !!! (IMHO) - (dmarker) - (3)
                     Re: History revisionism - beware !!! (IMHO) - (JimWeirich) - (2)
                         Another issue was the potential popularity of a lang - (dmarker) - (1)
                             Re: Another issue was the potential popularity of a lang - (JimWeirich)
             Gee...I thought it was a friendly discussion... - (jb4) - (4)
                 Re: Gee...I thought it was a friendly discussion... - (JimWeirich) - (3)
                     Manifest typing....a la Fortran. - (Simon_Jester)
                     Thanks, Jim. Nicely put. -NT - (jb4) - (1)
                         Re: Ditto - Thanks, Jim. -NT - (dmarker)
             Next experiment: try it without OO -NT - (tablizer)
         Java going in the other direction - (bluke) - (109)
             Re: Java going in the other direction - (JimWeirich) - (34)
                 Smalltalk also - (bluke)
                 Speaking of autoboxing - (ChrisR) - (32)
                     gasp -NT - (deSitter) - (2)
                         This is what happens when the foundation sucks - (bluke) - (1)
                             Oh My! - (deSitter)
                     According to Joshua Bloch it hasn't been decided yet - (bluke) - (28)
                         This is just stupid - (tuberculosis) - (27)
                             I think you missed the point - (JimWeirich) - (5)
                                 OK, maybe so - (tuberculosis) - (4)
                                     Re: OK, maybe so - (JimWeirich) - (3)
                                         Well in this case - (tuberculosis) - (2)
                                             Perhaps ... but ... - (JimWeirich) - (1)
                                                 My point was - (tuberculosis)
                             Not J-heads. - (admin) - (1)
                                 Smalltalk as usual is consistent - (bluke)
                             Set Theory - (deSitter) - (18)
                                 Re: Set Theory - (admin) - (12)
                                     Here we go - (deSitter) - (11)
                                         Re: Here we go - (admin) - (10)
                                             Amazing - (deSitter) - (9)
                                                 Re: Amazing - (admin) - (6)
                                                     Re: Amazing - (deSitter) - (5)
                                                         Wow. My first exposure to APL - (Arkadiy) - (1)
                                                             Same as in Objective C -NT - (admin)
                                                         Re: Amazing - (JimWeirich) - (2)
                                                             Heh. - (tseliot) - (1)
                                                                 ROFL -NT - (deSitter)
                                                 No - (Arkadiy)
                                                 Hey Ross, it's only a model. - (mmoffitt)
                                 Hey, watch this! - (drewk)
                                 Unlike DrooK, I'll bite: Ever heard of SQL, ya nitwit?!? -NT - (CRConrad) - (3)
                                     See comment above, applies here as well - (deSitter) - (2)
                                         Better stop talking to yourself then. - (admin)
                                         Your problem is the same you had a year (or was it two?) ago - (CRConrad)
             I remeber Pascal in the very same way - (jb4) - (72)
                 Just had this conversation - (tseliot) - (45)
                     Freep said the same thing - (tuberculosis) - (43)
                         Still waiting for ... - (jb4) - (42)
                             Depends on constraints - (tuberculosis) - (41)
                                 Platforms: - (jb4) - (40)
                                     Don't even get me started - (tuberculosis) - (30)
                                         I'll get you started, alright! - (jb4) - (29)
                                             No I'm not - (tuberculosis) - (28)
                                                 The problem is, you're trying to treat a bool as a number - (jb4) - (25)
                                                     No, I'm trying to branch on a condition - (tuberculosis) - (24)
                                                         21st Century Schitzoid Man - (jb4) - (23)
                                                             You are fighting the language - (tuberculosis) - (22)
                                                                 Tell you what... - (jb4)
                                                                 Can I put my oar in? - (static) - (20)
                                                                     Yeah sure - (tuberculosis) - (19)
                                                                         Such flowerly language toward such a misguided conclusion - (jb4) - (18)
                                                                             Yeah right - (tuberculosis) - (17)
                                                                                 (++true == false) - (ChrisR) - (1)
                                                                                     Just add a little gasoline, and stir!_____;-) - (jb4)
                                                                                 OK, Now I see wht your problem is - (jb4) - (5)
                                                                                     I thought you were going to give up on this - (tuberculosis) - (4)
                                                                                         How sensible is this?!? - (jb4) - (3)
                                                                                             Not convinced - (tuberculosis) - (2)
                                                                                                 Nor am I - (jb4) - (1)
                                                                                                     You guys should be using Modula-2. :-P (new thread) - (Another Scott)
                                                                                 And an answer to your question. - (jb4) - (8)
                                                                                     Wrong answer - (tuberculosis) - (7)
                                                                                         Wrong answer back - (jb4)
                                                                                         They've turned it into Pascal - (deSitter) - (5)
                                                                                             Circular definition. - (CRConrad) - (4)
                                                                                                 Re: Circular definition. - (deSitter) - (3)
                                                                                                     Self-contradiction, and logically inconsistent definition. - (CRConrad) - (2)
                                                                                                         Can someone start a new thread please? -NT - (drewk) - (1)
                                                                                                             What for, aren't the long ones the best? -NT - (CRConrad)
                                                 Comments on supposed idiocy - (JimWeirich) - (1)
                                                     Re: Comments on supposed idiocy - (tuberculosis)
                                     Don't even get me started - (tuberculosis)
                                     You didn't mention types of programs -NT - (tuberculosis) - (7)
                                         Sorry, thot I was clear earlier... - (jb4) - (6)
                                             Still doesn't tell me enough - (tuberculosis) - (5)
                                                 Re: Still doesn't tell me enough - (jb4) - (4)
                                                     The VM's are all written in very portable C - (tuberculosis) - (3)
                                                         Re: The VM's are all written in very portable C - (deSitter) - (2)
                                                             Funny you should mention it - (tuberculosis) - (1)
                                                                 Re: Funny you should mention it - (deSitter)
                     Minor modification - (jb4)
                 Just because *you* don't see it... - (pwhysall)
                 In fact.. - (deSitter) - (15)
                     Heh... - (jb4) - (14)
                         Re: Heh... - (deSitter) - (13)
                             BS - (admin) - (3)
                                 BS - (deSitter) - (2)
                                     When I see you spouting it, I'm going to call you on it. - (admin) - (1)
                                         Fair enough! -NT - (deSitter)
                             Do you have a clue why Linux is easily ported? - (ben_tilly) - (8)
                                 Re: Do you have a clue why Linux is easily ported? - (deSitter) - (7)
                                     No, that is not quite what you claimed - (ben_tilly) - (6)
                                         Well, to me -NT - (deSitter)
                                         Well, to me "moot" means.. - (deSitter) - (4)
                                             Why does your position appear to be shifting? - (ben_tilly) - (3)
                                                 Modus operandi - (admin) - (1)
                                                     Re: Modus operandi - (deSitter)
                                                 Re: Why does your position appear to be shifting? - (deSitter)
                 Wasn't Pascal written as a teaching tool? - (drewk) - (8)
                     Yes - (bluke)
                     Re: Wasn't Pascal written as a teaching tool? - (JimWeirich) - (6)
                         Re: Wasn't Pascal written as a teaching tool? - (Yendor) - (4)
                             Forward Declarations - (JimWeirich) - (3)
                                 Hmm, was Turbo Pascal different about that? -NT - (drewk)
                                 Been too long - (Yendor)
                                 Nope, you're right. - (jb4)
                         Not when I learned it - (drewk)
             Same bandaid as C++ templates - (tuberculosis)
         Re: The awakening begins - (systems) - (16)
             A couple answers - (tuberculosis) - (12)
                 ICLRPD - (drewk)
                 Do I C another one...? - (CRConrad) - (10)
                     Aren't they like seals? - (tuberculosis) - (9)
                         Yes they are. - (admin)
                         No - they're "almost, but not entirely, unlike" seals. - (CRConrad) - (7)
                             NFC. -NT - (admin) - (1)
                                 Does the phrase "Splitting Hairs" come to mind. :-) -NT - (ChrisR)
                             birds are feathered and hairy - (boxley) - (4)
                                 It's all feathers. - (admin) - (3)
                                     Re: It's all feathers. - (deSitter) - (2)
                                         Re, "PS": Yeah, sure - so, whatchathink HAIRS are?!? -NT - (CRConrad) - (1)
                                             Never really thought about it.. - (deSitter)
             Sometimes there aren't right answers - (ben_tilly) - (1)
                 Down with Determinants! :) -NT - (deSitter)
             Please indicate what you changed in an Edit. Thanks. :-) -NT - (Another Scott)

I didn't tell you that it was good! I told you that it was interesting.
161 ms