LSE64 release 0.3
  Home FAQ Contact Sign in
comp.lang.forth only
 
Advanced search
POPULAR GROUPS

more...

comp.lang.forth Profile…
 Up
LSE64 release 0.3         


Author: John Doty
Date: Sep 9, 2006 10:21

Release 0.3 of LSE64 is now public, under the GPL. I had provided
previous releases only to Noqsi Aerospace customers. You may obtain a
tarball from http://space.mit.edu/home/jpd/ (thanks to the MIT Kavli
Institute for allowing me to continue to use their server).

I have tested this release on 32 bit PPC MacOSX and AMD64 Linux.
Previous releases also work on Pentium Linux, but I have not (yet) tried
this one on my Pentium DAQ box (it's turned off and I'm 2000 miles from
its power switch at the moment).

LSE64 is a reimplementation of Bob Goeke's 16 bit LSE, but with a 64 bit
cell size and other changes. LSE was, in turn, a stripped-down version
of Jon Sachs' STOIC. Unlike nearly all other Forths, it implements a
unified, consistent language rather than two confusingly similar
languages for interpreted commands and compiled definitions.

LSE64 a work in progress, intended for laboratory data acquisition (at
which it has proven very useful). There are rough edges, experimental
features, and other things I'm considering changing. Comments are welcome.
Show full article (1.21Kb)
16 Comments
Re: LSE64 release 0.3         


Author: pablo reda
Date: Sep 10, 2006 14:21

Very good forth. !!
Nice doc, simply instructions....

If you like I have some tricks in C for avoiding the cost of call
function in you code, simply use goto.

Pablo Reda
http://www.geocties.com/redaforth
4 Comments
Re: LSE64 release 0.3         


Author: Charles Melice
Date: Sep 11, 2006 05:48

"pablo reda" gmail.com> a
2 Comments
Re: LSE64 release 0.3         


Author: Charles Melice
Date: Sep 11, 2006 06:20

"John Doty" whispertel.LoseTheH.net> a
2 Comments
Re: LSE64 release 0.3         


Author: John Doty
Date: Sep 11, 2006 07:45

Charles Melice wrote:
> I like particulary the mix REAL/INT on the same 64 bit stack.

Much of Forth's simplicity disappears if you have multiple cell sizes,
so so LSE64 doesn't. Once you have a uniform cell size, a single data
stack makes good sense,I think.
>
> Do you have investigated the idea to use only double floats on the
> stack ?
>
> Is it possible to use double floats to represent an address ? If yes,
> the model can be simpler.
>

Yes. I've mentioned this here before. The idea is growing on me.

Thank you for your comments!

--
John Doty, Noqsi Aerospace, Ltd.
--
In theory there is no difference between theory and practice. In
practice there is. -Yogi Berra
no comments
Re: LSE64 release 0.3         


Author: John Doty
Date: Sep 11, 2006 07:50

pablo reda wrote:
> Very good forth. !!
> Nice doc, simply instructions....
>
> If you like I have some tricks in C for avoiding the cost of call
> function in you code, simply use goto.

Thank you for your comments!

This whole development is application driven, and right now I'm not
finding any need for higher speed (in all applications to date, the
bottlenecks are elsewhere). But I'll keep your approach in mind.

--
John Doty, Noqsi Aerospace, Ltd.
--
In theory there is no difference between theory and practice. In
practice there is. -Yogi Berra
no comments
Re: LSE64 release 0.3         


Author: pablo reda
Date: Sep 11, 2006 08:59

>
> Computed goto or absolute goto ? ANSI C don't have computed goto.
>
> With my C compiler, my best timing was using "switch .. case".
>
> Can you describe your "goto" tricks.
>
> Charles
>

C not has computed goto but the compiler try convert switch .. case in
this computer goto when the index are complete and sucesive and if you
put every internal definition in this function and go to from word to
word with goto you avoid the cost of funtion calling in C

See my code for an example
1 Comment
Re: LSE64 release 0.3         


Author: astrobe
Date: Sep 11, 2006 09:06

John Doty wrote:
> Release 0.3 of LSE64 is now public, under the GPL. I had provided
> previous releases only to Noqsi Aerospace customers. You may obtain a
> tarball from http://space.mit.edu/home/jpd/ (thanks to the MIT Kavli
> Institute for allowing me to continue to use their server).
>

We have been waiting for this release a while. Now we can see the ideas
you promote in action. I'll for sure check it out.

Amicalement,
Astrobe
no comments
Re: LSE64 release 0.3         


Author: Charles Melice
Date: Sep 11, 2006 10:29

"pablo reda" gmail.com> a
no comments
Re: LSE64 release 0.3         


Author: Jorge Acereda Maciá
Date: Sep 11, 2006 15:33

Jorge Acereda wrote:
> On 9/11/06, Charles Melice forthcad.com> wrote:
>> Is it possible to use double floats to represent an address ? If yes,
>> the model can be simpler.
>
>
> If you forget about 64-bit addressing yes.
>
> OTOH, float->int casts are particularly expensive on PowerPC
> architectures (involving a memory store followed by a load).
>
> AFAIK, lua uses only floats.

I've done a rough conversion out of curiosity. The result is ~2 times
slower on ppc for the following benchmark:

t : count count * drop
tt : t iterate
10000000 tt

I don't have any webpage to upload it, so if anyone wants it email me.
I'm curious about other architectures.
Show full article (0.91Kb)
no comments
1 2