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 You didn't mention types of programs



"Packed like lemmings into shiny metal boxes.
Contestants in a suicidal race."
    - Synchronicity II - The Police
New Sorry, thot I was clear earlier...
..We're doing embedded processing (and by that, I mean "real" embedded stuff, not Micros~1's bastardation of the term). Realtime data acquisition and control stuff, with a microprocessor of some sort (like the sort I mentioned) running things.

For this, I've got some real good C95 compilers, and some ANSI (and not-so-ANSI) C++ compilers. I haven't seen a C99 compiler in this space yet. (In fact, I haven't seen a C99 compiler in any space yet; I don't think either Micros~1's or Borland's are C99-compliant yet).

No Smalltalk.
No Objective C (which I would expect to be the first).
No Python or Ruby.
Yet...
jb4
"We continue to live in a world where all our know-how is locked into binary files in an unknown format. If our documents are our corporate memory, Microsoft still has us all condemned to Alzheimer's."
Simon Phipps, SUN Microsystems
New Still doesn't tell me enough
What is your memory budget? Persistent storage? Is there a file system? Do you drive a display? What about a network interface? If you have a couple megabytes, you can likely use your C compiler to bring up squeak and use Smalltalk (one guy has a 400k image working). So just because nobody ported it to your machine doesn't mean you can't use it. The tiny smalltalk guys use a pair of executables - a tiny executive on the device and a big fat dev environment on a regular machine. They push down little clusters of serialized objects to the executive to update the exec.

This is more likely to succeed than porting the ObjectiveC runtime I think.

But its up to you - all you need is a C compiler and you can run whatever you like in there - you just have to port the machine yourself. Most Squeak ports take a week or so but that's for a full blown machine with video, network, file system access, keyboard and mouse. You can skip any of these or implement them in new ways.



"Packed like lemmings into shiny metal boxes.
Contestants in a suicidal race."
    - Synchronicity II - The Police
New Re: Still doesn't tell me enough
What is your memory budget? Persistent storage? Is there a file system? Do you drive a display? What about a network interface?

Whatever the device will support. (1MB for the 80186, 64K for the HJC1x or the 8051...you get the picture).

EPROM or Flash. We partition the total memory address space between ROM and RAM.

Not usually. I did recently get to work on a box that supported QNX as its OS/Kernel, and we used a 486 in protected mode. A "file system" was supported (the flash was made to look like a file system). Such luxuries are rare, however....

Yes, generally an LCD of insufficient size ;-) . sometimes color, often monochrome, never using standard parts (except for that QNX box I mentioned earlier...)

In your (and my) dreams....

So what I hear you saying is that we download a VM-equivalent for Smalltalk, then download class definitions, and away we go?
jb4
"We continue to live in a world where all our know-how is locked into binary files in an unknown format. If our documents are our corporate memory, Microsoft still has us all condemned to Alzheimer's."
Simon Phipps, SUN Microsystems
New The VM's are all written in very portable C
you have to port them if you want to use them. There's a reason Squeak runs binary equivalent on Windows, Linux, Solaris, Macintosh, Mac OS X, the Sharp Zarus, and some other little handheld gadgets. The core VM is portable but there are stubs you need to do hardware/filesystem/network/display/input device interfacing.

FWIW, there have been a number of embedded Smalltalk projects over the years.

You might not be able to afford Squeak on your smaller devices. You may be able to afford PocketSmalltalk though. There is some info here: [link|http://www.iutc3.unicaen.fr/serge/62|http://www.iutc3.unicaen.fr/serge/62] or [link|http://www.pocketsmalltalk.com/|http://www.pocketsmalltalk.com/]




"Packed like lemmings into shiny metal boxes.
Contestants in a suicidal race."
    - Synchronicity II - The Police
New Re: The VM's are all written in very portable C
I've got a spare 2gig laptop disk that was intended as a testing place for "FORTH OS" so I think I will play around with this.

Has anyone ever tested Smalltalk as an extension of the FORTH VM? Kinda like running win or startx from the command prompt. FORTH is paradoxically fast in some situations, like moving data (probably why it's good for graphics). You could have a completely portable hardware interface in FORTH.

[link|http://www.zetetics.com/bj/papers/moving1.htm|http://www.zetetics....apers/moving1.htm]

How would ST map onto this?
-drl
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)

Somewhat classier digs than the last version.
212 ms