[Cuis-dev] Bee Smalltalk Dynamic Metacirculat Runtime

ken.dickey at whidbey.com ken.dickey at whidbey.com
Mon Apr 26 07:25:01 PDT 2021


On 2021-04-25 17:02, Javier Pimás wrote:

> Hi folks, I wasn't aware of the existence of this list, so... hello 
> everybody :).

Greetings and Welcome!

> If I understood correctly you Ken are trying to port powerlang 
> bootstrapper to Cuis, so that you can then generate a bee from cuis, 
> and also with the idea of generating a Cuis image for the motorola 
> 68000, is that correct?

No.  For 64bit ARM and RISC-V.

> In any case, I'm glad that you are interested and count on me for any 
> help I could give.

Careful!  I am slow and I need all the help I can get!  ;^)

> Are you porting the code manually? If tonel format is a problem I have 
> some transliterator code somewhere to read/write different formats and 
> to minimally transform code, so it would need a backend for writing 
> cuis format, which seems pretty much like chunk format. With some extra 
> rules you might get everything automatized if you want.

That would be particularly helpful w.r.t. Ring2, for which I have yet to 
find documentation and in which I don't have much interest.  I would 
welcome a .tar.gz or URL with translator bits.

I am up to 268 classes out of 325 of Powerlang-Core ported "by hand".  I 
had thought of doing the parse work to automate, but with Copy, Paste, 
Accept I actually read the code, which is really the point of the 
exercise; to learn what is inlined, implementation patterns, and how the 
system is structured.  The Ring stuff I am happy to automate.

I made a couple of notes in *.txt in
   https://github.com/KenDickey/BeeYourself

I don't like Intel CPU architectures BTW.  I always feel like I can't 
run because one leg is tied, but they let one hop very fast.  
[Push;pop;push;pop;push;pop;..]

I have hacked around a number of runtimes which compile to bytecode and 
native (Scheme, Dylan, Lisp, .. for 68K, 88K, ARM, MIPS) and probably 
forgotton most of it by now, but the concepts are there.  I don't need 
to tell you that the problems of meta-circularity in Smalltalk are 
especially complex.  Reading the Bee code is an aid to understanding the 
papers.  Much gold to be mined in Bee!

In my brain, abstractions (the map) need concrete examples (the 
territory) to be fully understood.

> Let me know what you think.

Oooh, I'm not sure we want to go there..

Oh! You mean about the code!  And doing things..  Ah!  A bit rough but 
very nice.  Needs to be cost reduced.  Perhaps codegen a bit more table 
driven.  I still have to look at RISC-V simulator 
https://github.com/darth-cheney/safe-bet which I just noted, which may 
have some interesting code parts.

Some hints on what I viewed yesterday on YouTube WRT ARM and (Hi5) 
RISC-V codegen would be helpful as I start getting the x86-ish code up 
on shaky legs.  Also, I think the loader will need to be able to 
disambiguate the CPU architecture of the nativized code. ;^)

I hope to get cheap RISC-V, perhaps BeagleV, this fall and perhaps be 
ready, or close to using it.

And, hey, again.  I am not fast and this is a big project, but boy! it 
is fun!  Great to see your (collective) work!

Now back to work to be able to cash the check!  ;^)

Good on ya,
-KenD


More information about the Cuis-dev mailing list