[Oberon] Oberon on ARM/Pi
Aubrey.McIntosh at Alumni.UTexas.Net
Aubrey.McIntosh at Alumni.UTexas.Net
Sun Nov 4 18:31:48 CET 2012
I wrote a p-machine in UCSD pascal itself that ran on a Terak graphics
computer. It had 8" floppies. I did it just to see if I could.
I was at the Stride Faire when people in the audience were holding money in
the air to buy the newest p machine implementation and the SoftTech people
declined to sell it.
I hand de-compiled much of the SEK module (a pun, Sven Eric Knudson or
Sequential Executive Kernel) in the Modula-2 system that ran on the M2
machine. I also de-assembled the M machine interpreter that was shipped
from Provo, and became convinced that it had been written in Ada and
compiled.
I always go through the same phases. I really dislike whatever new thing
Wirth has done. Then I putter with it a bit. Then I think, again, that he
is the best.
What I understood from his new video was that he used a high level
description language to describe the hardware. There were some projects
such as that that compiled hardware descriptions in a clearly Wirthian
language into Xilinx images, sometime in the 90s. These ran on the ETH S3
system. I couldn't afford the prototype board then, but I did compile
several hardware projects with that compiler.
I would love to have his high level source for his CPU. I would almost
certainly grumble at many of his design choices, before I saw their wisdom.
It would be interesting to port all the existing compilers to this CPU,
just as a matter of polishing our group expertise.
On Sat, Nov 3, 2012 at 3:32 PM, Mike McGaw <mike at mcgawtech.com> wrote:
> This thread struck a nerve for me, as I have been an advocate of a virtual
> machine implementation for the Oberon compiler (see the end of the
> presentation I made at the last Oberon Day) for some time, now.
>
> I can appreciate the Ngaro VM idea; I have spent considerable time with
> the Lilith M2 interpreter and the KRONOS 32-bit version of this
> architecture, and I can appreciate the benefits of a stack-machine-based
> interpreter, so when I took a look at the Ngaro link, I smiled a bit.
> I suspect the point of this link in the previous post was not the
> architecture per se (although stack machines make certain aspects of code
> generation a bit easier), but rather its implementation in several target
> languages that are in broad use today.
>
> And, the point may be made that a stack architecture based VM, with
> suitable instruction choice can be implemented more efficiently as a VM
> than say, a RISC architecture (generated sizes for code that will run ON
> the VM will rule here, I would guess, as to overall execution speed, as the
> VM goes).
>
> However, Wirth has been at work, along with Reed, in the development of a
> clean RISC-style implementation directed at a XILINX FPGA. This, I am
> hoping, will be featured in a re-release of the now classic Project Oberon
> book in the not too distant future.
>
> What is desperately needed, though, is a VM for the compiler that is set
> up for at least one (easily implemented) commonly available target. Toward
> that end, I would argue for a VM that is implemented very cleanly and in an
> elemental manner. This means a VM source implementation (in Oberon) that
> can be directly and easily machine translated into most any target language
> to enable easy and direct porting of the core VM. Keeping the reference VM
> source implementation elemental will contribute to confident source
> translation and target language compilation.
>
> In this way, for example, on the Pi, one can (with a C translation of the
> VM) directly link the C source that manages the niggling driver libraries
> that take so much time to develop, and yet are key to rapid deployment of
> Oberon on a new architecture or implementation. The libs are linked with a
> machine translated VM, for which suitable hooks are made to enable the
> calling of these libraries. Some may argue about performance, but I would
> submit that performance matters are probably not as much of a concern as
> most might suggest, depending on what the target application may be.
>
> I do this type of thing, right now, with the Lilith M2 VM. It is
> relatively easy and straight forward to move this wherever I wish.
> Quickly. And with reliable results.
>
> This is what is needed for Oberon, in order to sustain this language and
> system's viability. From that basis, most of us would be able to take this
> remarkable language and system wherever we wish, to almost any end we
> desire.
>
>
> -Mike
>
>
>
> --
> Oberon at lists.inf.ethz.ch mailing list for ETH Oberon and related systems
> https://lists.inf.ethz.ch/mailman/listinfo/oberon
>
>
--
Aubrey McIntosh, Ph.D.
211 E. 5th St.
Morris MN 56267
(512)-348-7401
-------------- next part --------------
An HTML attachment was scrubbed...
URL: https://lists.inf.ethz.ch/pipermail/oberon/attachments/20121104/051577d3/attachment.html
More information about the Oberon
mailing list