David, > About 20 years ago I wrote a basic-to-bytecode ( my own > bytecode ) system, which semi-compiled the source into a > packet fast-to-run intermediate code, and an execute engine. > Java before it's time. This was a popular technique. Even the Commodore PET spawned bytecode compilers to make Microsoft Basic run faster. It's something I'm toying with, but as an ARM runs pretty quickly already, there isn't much call. My new BASIC interpreter is designed for both small devices and large devices. > ooh, look, I'm on the web... > http://www.xs4all.nl/~fjkraan/comp/dai/insideInfo.html > http://www.xs4all.nl/~fjkraan/comp/dai/PCRM/PCRM_c02.html Personally I had no contact with DAI. I didn't really want a DAI anyway, but I'd have loved an Exidy Sorcerer. > It would go like shit off a shovel on an MSP430. floating > point could still be a bit glue-like though. The new BASIC I have constructed has dynamic vectors, dynamic strings, complex numbers, and the like. It has a fast mark-sweep garbage collector and, when fragmentation is rife and a new object can't be allocated in free space, a compacting garbage collector kicks in to free up lots of memory. You can, however, configure it not to have all these advanced features and run it on a small device with integers only. Or it scales to a PC with 64-bit doubles and integers and megabytes of memory. Regards, -- Paul Curtis, Rowley Associates Ltd http://www.rowley.co.uk CrossWorks for MSP430, ARM, AVR and now MAXQ processors
Basic Interpreter/Compiler
Started by ●October 21, 2005
Reply by ●October 26, 20052005-10-26
Reply by ●October 26, 20052005-10-26
I'm surprised none of the ARM fabs haven't done a marketing like
"Our
ARM has legs!"
Steve
Onestone wrote:
>Would that be a prosthetic ARM?
>
>Al
>
>Eric Engler wrote:
>
>
>
>>--- In msp430@msp4..., "Paul Curtis" <plc@r...> wrote:
>>
>>
>>
>>
>>>There is a newer, more comprehensive interpreter on the way, written
in
>>>C for portability between processors (but possibly not between
>>>compilers, I don't want to port it everywhere).
>>>
>>>
>>>
>>>
>>Cool! Maybe we could use it on an ARM?
>>
>>
>>
>>
>>
>>
>>.
>>
>>
>>Yahoo! Groups Links
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>
>
>
>
>.
>
>
>Yahoo! Groups Links
>
>
>
>
>
>
>
>
>
>
Reply by ●October 26, 20052005-10-26
Or a paper like "Handshake Procedure for Dual ARM System". -----Mensagem original----- De: msp430@msp4... [mailto:msp430@msp4...] Em nome de Steve Sabram Enviada em: quarta-feira, 26 de outubro de 2005 19:11 Para: msp430@msp4... Assunto: Re: [msp430] Re: Basic Interpreter/Compiler I'm surprised none of the ARM fabs haven't done a marketing like "Our ARM has legs!" Steve Onestone wrote: >Would that be a prosthetic ARM? > >Al > >Eric Engler wrote: > > > >>--- In msp430@msp4..., "Paul Curtis" <plc@r...> wrote: >> >> >> >> >>>There is a newer, more comprehensive interpreter on the way, written in >>>C for portability between processors (but possibly not between >>>compilers, I don't want to port it everywhere). >>> >>> >>> >>> >>Cool! Maybe we could use it on an ARM? >> >> >> >> >> >> >>. >> >> >>Yahoo! Groups Links >> >> >> >> >> >> >> >> >> >> >> >> > > > > >. > > >Yahoo! Groups Links > > > > > > > > > > . Yahoo! Groups Links -- No virus found in this incoming message. Checked by AVG Free Edition. Version: 7.1.361 / Virus Database: 267.12.5/148 - Release Date: 25/10/2005
Reply by ●October 26, 20052005-10-26
Talking about that, I have been trying to sift through the urban legends
and get the real story on how "Thumb code" got its name.
Steve
Augusto Einsfeldt wrote:
>Or a paper like "Handshake Procedure for Dual
ARM System".
>
>-----Mensagem original-----
>De: msp430@msp4... [mailto:msp430@msp4...] Em nome de
>Steve Sabram
>Enviada em: quarta-feira, 26 de outubro de 2005 19:11
>Para: msp430@msp4...
>Assunto: Re: [msp430] Re: Basic Interpreter/Compiler
>
>
>I'm surprised none of the ARM fabs haven't done a marketing like
"Our
>ARM has legs!"
>
>Steve
>
>
>Onestone wrote:
>
>
>
>>Would that be a prosthetic ARM?
>>
>>Al
>>
>>Eric Engler wrote:
>>
>>
>>
>>
>>
>>>--- In msp430@msp4..., "Paul Curtis" <plc@r...>
wrote:
>>>
>>>
>>>
>>>
>>>
>>>
>>>>There is a newer, more comprehensive interpreter on the way,
written
>>>>
>>>>
>in
>
>
>>>>C for portability between processors (but possibly not between
>>>>compilers, I don't want to port it everywhere).
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>Cool! Maybe we could use it on an ARM?
>>>
>>>
>>>
>>>
>>>
>>>
>>>.
>>>
>>>
>>>Yahoo! Groups Links
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>
>>
>>.
>>
>>
>>Yahoo! Groups Links
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>
>
>
>
>
>.
>
>
>Yahoo! Groups Links
>
>
>
>
>
>
>
>
>
Reply by ●October 26, 20052005-10-26
On Wed, Oct 26, 2005 at 08:55:20AM +0100, Paul Curtis wrote:
> great and the birthplace of the personal computer
idustry. The board
> I'm using it on now has a keyboard & mouse interface, an ARM7,
lots of
> RAM, an MMC card interface for mass storage, video out and so on. It
> works really well as a small computer.
Back to the roots! :-) Remembering the old days. Just 2k ROM, 2k RAM and
a self made keyboard in front of the old eye killing b/w TV.
(I guess the ARM has plenty of ressources :-)
Matthias
Reply by ●October 26, 20052005-10-26
Aww, that's high tech, my first computer was the Tandy Microcomputer
training
kit, a 7-segment LED, and 8 LED's for binary output, along with a switch
grid
for hex input.
oh, and a speaker! Woo! Dang, I wonder if I still have that somewhere..
-Micah
On Wednesday 26 October 2005 3:10 pm, Matthias Weingart
wrote:
> On Wed, Oct 26, 2005 at 08:55:20AM +0100, Paul Curtis wrote:
> > great and the birthplace of the personal computer idustry. The board
> > I'm using it on now has a keyboard & mouse interface, an
ARM7, lots of
> > RAM, an MMC card interface for mass storage, video out and so on. It
> > works really well as a small computer.
>
> Back to the roots! :-) Remembering the old days. Just 2k ROM, 2k RAM and
> a self made keyboard in front of the old eye killing b/w TV.
> (I guess the ARM has plenty of ressources :-)
>
> Matthias
>
>
>
> .
>
>
> Yahoo! Groups Links
>
>
>
Reply by ●October 27, 20052005-10-27
> About 20 years ago I wrote a basic-to-bytecode ( my own bytecode ) > system, which semi-compiled the source into a packet fast-to-run > intermediate code, and an execute engine. Java before it's time. I've also worked with various intermediate code systems over the years. Here's some thoughts I put together on a 16 bit embedded VM: http://www.ericengler.com/downloads/EmbeddedVM.txt This is something that could offer portablity between various 16 bit CPUs. I have 2 in mind: the Freescale hc12 family, and the MSP430 family. I did not use objects in this concept because of the limited RAM. If I do something like this for the ARM it will support objects and will likely be similar to the Java VM. But I would add the ability to dereference pointers in order to be more efficient with C programs. Right now I'm building my hc12 debugger and this will keep me busy for a while. Eric
Reply by ●October 27, 20052005-10-27
That's one direction to go with a VM, the other is to assume for
development, a small FLASH based system containing the VM itself, and
download to external SRAM. This has the advantage of possibly quicker d/l
cycle as burning flash is always slower and actual interactivity. For final
image burn, you can then provide the VM as a linkable library.
At 09:00 PM 10/26/2005, Eric Engler wrote:
>I've also worked with various intermediate
code systems over the
>years. Here's some thoughts I put together on a 16 bit embedded VM:
>
>http://www.ericengler.com/downloads/EmbeddedVM.txt
>
>This is something that could offer portablity between various 16 bit
>CPUs. I have 2 in mind: the Freescale hc12 family, and the MSP430 family.
>
>I did not use objects in this concept because of the limited RAM.
>
>If I do something like this for the ARM it will support objects and
>will likely be similar to the Java VM. But I would add the ability to
>dereference pointers in order to be more efficient with C programs.
>
>Right now I'm building my hc12 debugger and this will keep me busy for
>a while.
>
>Eric
>
// richard (This email is for mailing lists. To reach me directly, please
use richard at imagecraft.com)
Reply by ●October 27, 20052005-10-27
Hi, You might want to take a look at Martin Richards webpages - he invented BCPL & CINTPOS. http://www.cl.cam.ac.uk/users/mr/ Richard ----- Original Message ----- From: "Eric Engler" <englere.geo@engl...> To: <msp430@msp4...> Sent: Thursday, October 27, 2005 5:00 AM Subject: [msp430] Re: Basic Interpreter/Compiler >> About 20 years ago I wrote a basic-to-bytecode ( my own bytecode ) >> system, which semi-compiled the source into a packet fast-to-run >> intermediate code, and an execute engine. Java before it's time. > > I've also worked with various intermediate code systems over the > years. Here's some thoughts I put together on a 16 bit embedded VM: > > http://www.ericengler.com/downloads/EmbeddedVM.txt > > This is something that could offer portablity between various 16 bit > CPUs. I have 2 in mind: the Freescale hc12 family, and the MSP430 family. > > I did not use objects in this concept because of the limited RAM. > > If I do something like this for the ARM it will support objects and > will likely be similar to the Java VM. But I would add the ability to > dereference pointers in order to be more efficient with C programs. > > Right now I'm building my hc12 debugger and this will keep me busy for > a while. > > Eric > > > > > > > . > > > Yahoo! Groups Links > > > > > > > >
Reply by ●October 27, 20052005-10-27
On 27/10/05, Richard (UK). <ymsp430@ymsp...> wrote: > Hi, > > You might want to take a look at Martin Richards webpages - he invented BCPL > & CINTPOS. http://www.cl.cam.ac.uk/users/mr/ > > Richard > I remember BCPL (Bloody Complicated Programming Language) had a copy for my BBC computer back in my student days at http://www.robinson.cam.ac.uk . IIRC it was a simplified version of CPL (Complicated Programming Language) Ian