flat assembler
Message board for the users of flat assembler.

Index > High Level Languages > LISP compiler

Goto page Previous  1, 2
Author
Thread Post new topic Reply to topic
james



Joined: 07 Sep 2005
Posts: 45
Location: Australia
james 08 Nov 2005, 08:16
myLISP is work in progress and I will have code for playing with really soon.
The web site was posted for a while but then I had a problem or two with the forum code and I had to re-install.
Please check back regularly to the site for updates.
When its ready I think you will be very happy with myLISP.
rgs James.
Post 08 Nov 2005, 08:16
View user's profile Send private message MSN Messenger Reply with quote
james



Joined: 07 Sep 2005
Posts: 45
Location: Australia
james 22 Nov 2005, 06:06
There is more content there now, and even more coming.
Post 22 Nov 2005, 06:06
View user's profile Send private message MSN Messenger Reply with quote
harry_b



Joined: 30 Jan 2007
Posts: 3
harry_b 30 Jan 2007, 19:30
Once upon a time I fell in love with the muLisp dialect, interpreter and compiler, entirely written in Assembler (and muLisp) because it is much more practical and handy than Common Lisp. muLisp was used to write the famous math application Derive.

Unfortunately, the graphics video mode of mulisp does not work under Win XP.

I would be very happy to find something like muLisp which would still work today.

Currently I am interested in fasm because it can be used as inline code in PureBasic - the easiest way I know to write Win applications.
Post 30 Jan 2007, 19:30
View user's profile Send private message Reply with quote
rugxulo



Joined: 09 Aug 2005
Posts: 2341
Location: Usono (aka, USA)
rugxulo 31 Jan 2007, 14:19
harry_b, what gfx mode? Try using DOSBOX and see if that helps. Smile
Post 31 Jan 2007, 14:19
View user's profile Send private message Visit poster's website Reply with quote
harry_b



Joined: 30 Jan 2007
Posts: 3
harry_b 01 Feb 2007, 22:35
Thanks, rugxulo Smile

The gfx mode (640 x 480 x 16) works fine in DOSBOX, even better than originally, because it has never been quite flicker free - now it is.

Only drawback is that DOSBOX requires a US keyboard, and I could not find out how to remap e.g. the parentheses.
But this concerns only the interpreter mode, in compiler mode I can use any editor (my choice is the free Notepad++ which supports highlighting of Lisp syntax and others.)

Now let's hope I'll soon have some great Ideas to implement.

Cool
Post 01 Feb 2007, 22:35
View user's profile Send private message Reply with quote
rugxulo



Joined: 09 Aug 2005
Posts: 2341
Location: Usono (aka, USA)
rugxulo 02 Feb 2007, 05:23
harry_b wrote:

Only drawback is that DOSBOX requires a US keyboard, and I could not find out how to remap e.g. the parentheses.


Start the keymapper via Ctrl-F1. (See README.TXT for more tips.)
Post 02 Feb 2007, 05:23
View user's profile Send private message Visit poster's website Reply with quote
harry_b



Joined: 30 Jan 2007
Posts: 3
harry_b 02 Feb 2007, 11:54
rugxulo wrote:

Start the keymapper via Ctrl-F1. (See README.TXT for more tips.)

Thanks, I had found that, but I could only change, for example, the function of key "9" and not of Shift + 9 for the parentheses.
And I did not find out how to save the keymapper settings for the next DOSBOX session.
Post 02 Feb 2007, 11:54
View user's profile Send private message Reply with quote
rugxulo



Joined: 09 Aug 2005
Posts: 2341
Location: Usono (aka, USA)
rugxulo 03 Feb 2007, 03:59
README.TXT wrote:

EVENT
The key DOSBox will report to the applications being emulated.
BIND
The key on your keyboard (as reported by SDL) which is connected to the
EVENT.
mod1,2,3
Modfiers. These are keys you need to have pressed as well, while pressing
BIND.
mod1 = CTRL and mod2 = ALT. These are generally only used when you
want to change the special keys of DOSBox.
Add
Add a new BIND to this EVENT. Basically add a key from your keyboard which
will produce the key EVENT in DOSBox.
Del
Delete the BIND to this EVENT. If an EVENT has no BINDS, then it's not
possible to type this key in DOSBox.
Next
Go through the list of keys(BINDS) which map to this EVENT.


Example:
Q1. You want to have the X on your keyboard to type a Z in DOSBox.
A. Click on the Z on the keyboard mapper. Click "Add".
Now press the X key on your keyboard.

Q2. If you click "Next" a couple of times, you will notice that the Z on your
keyboard also produces an Z in DOSBox.
A. Therefore select the Z again, and click "Next" until you have the Z on
your keyboard. Now click "Del".

Q3. If you try it out in DOSBox, you will notice that pressing X makes ZX
appear.
A. The X on your keyboard is still mapped to the X as well! Click on
the X in the keyboard mapper and search with "Next" until you find the
mapped key X. Click "Del".


If you change the default mapping, you can save your changes by pressing
"Save". DOSBox will save the mapping to a location specified in the configfile
(mapperfile=mapper.txt). At startup, DOSBox will load your mapperfile, if it's
present in the configfile.
Post 03 Feb 2007, 03:59
View user's profile Send private message Visit poster's website Reply with quote
nyrtzi



Joined: 08 Jul 2006
Posts: 192
Location: Off the scale in the third direction
nyrtzi 21 Nov 2007, 12:09
fasm9 wrote:

lisp compiler written in fasm,
is this possible?


Of course it is possible. But I don't think it is very easy... at least for a lazy person like me.

I'm currently writing a programmable small Lisp compiler and a simple virtual machine for it in Lisp. The reason for that is that I'm trying to write a new dialect of Lisp for my thesis.

Because my intuition tells me that writing a Lisp in FASM might be too painful I'm sticking to the ancient ritual of implementing a new Lisp in an old one using the metacircular method.

What I want to have in the end is a Lisp compiler implemented in FASM. So logically the plan is to have the compiler translate itself and all necessary support routines into FASM which I can then have FASM assemble into a standalone Lisp compiler. Then if I need to optimize by hand I will at least have FASM assembly code to work with (which is something I happen to like as long as there isn't too much of it).

I think that I might be able to succeed if I keep the new Lisp dialect as simple as possible (at least in the beginning).

The reason for making another Lisp dialect is that there really aren't any Lisps available which feel low level, dynamic, reflective and object-oriented (in the prototype based way) enough. I'm also not very pleased by the fact that Common Lisp streams have only one character of lookahead and that none of the mainstream programming languages fully support unicode (It should be both legal and enough to write just the unicode character for 'lambda' instead of having to spell it out in plain ASCII... why should I be restricted to plain ASCII in variable names? Wouldn't it be cool if I could use greek characters for variable names?).

It might be cool to later rewrite the compiler and compile it with itself. Twisted Evil

The biggest piece of work will probably be the automatic memory management. However as long as one doesn't aim for anything fancy it will be pretty easy implement.
Post 21 Nov 2007, 12:09
View user's profile Send private message Reply with quote
treeform



Joined: 09 Jul 2007
Posts: 6
treeform 30 Nov 2007, 00:13
lisp is nice in that its simple and you build one function at a time to get to a complex mess it is now Smile
Post 30 Nov 2007, 00:13
View user's profile Send private message Reply with quote
nyrtzi



Joined: 08 Jul 2006
Posts: 192
Location: Off the scale in the third direction
nyrtzi 08 Jan 2008, 13:12
treeform wrote:
lisp is nice in that its simple and you build one function at a time to get to a complex mess it is now Smile


Which is why some of us are trying to building an even simpler Lisp from scratch with FASM so that we can use it to create an even bigger mess. Razz
Post 08 Jan 2008, 13:12
View user's profile Send private message Reply with quote
Display posts from previous:
Post new topic Reply to topic

Jump to:  
Goto page Previous  1, 2

< Last Thread | Next Thread >
Forum Rules:
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Copyright © 1999-2025, Tomasz Grysztar. Also on GitHub, YouTube.

Website powered by rwasa.