From: PDu82
Subject: How do I write a lisp interpreter in ASM.
Date: 
Message-ID: <9d0f2c8e.0208211208.4dff381a@posting.google.com>
I'm getting a bit ahead of myself here but has anyone written a
tutorial on how to make a lisp interpreter? I have to create a lisp
compiler skipping certain.... and might I add many X86 opcodes. I'm
currently learning ASM on my own then I'm going to learn LISP. I also
need the list of every lisp command and ASM code and what they do...
but... It's very important that you include something more directly
related with the subject with it as I can probably find the
information I seek with a few hours of searching (Though it might not
be as good as yours) The definition of Standard CLISP (+ 1
tutorial/information on the subject of this post.) would do. I'm
skipping the ASM codes in an attempt to make sure the interpreter
won't interfere with the rest of the OS. Especially since it will run
the entire time the OS is up. I believe it's called multithreading.
Well... I just wanna avoid the whole yarn!

If you didn't understand part of this... you can't help me. If you
only got a vague grasp of this.. you can't help me. If you think I'm
insane... you're right! Please include Confirmed: before the subject
you choose. (Ex. Confirmed: Re: Lisp interpreter...) Also if anyone
knows how to get Red Hat Linux to connect to MSN's Windows NT servers
I'd appreciate a hint or two... thousand.

From: Greg Menke
Subject: Re: How do I write a lisp interpreter in ASM.
Date: 
Message-ID: <m3k7mj6c30.fsf@europa.pienet>
> I'm getting a bit ahead of myself here but has anyone written a
> tutorial on how to make a lisp interpreter? I have to create a lisp
> compiler skipping certain.... and might I add many X86 opcodes. I'm
> currently learning ASM on my own then I'm going to learn LISP. I also
> need the list of every lisp command and ASM code and what they do...
> but... It's very important that you include something more directly
> related with the subject with it as I can probably find the
> information I seek with a few hours of searching (Though it might not
> be as good as yours) The definition of Standard CLISP (+ 1
> tutorial/information on the subject of this post.) would do. I'm
> skipping the ASM codes in an attempt to make sure the interpreter
> won't interfere with the rest of the OS. Especially since it will run
> the entire time the OS is up. I believe it's called multithreading.
> Well... I just wanna avoid the whole yarn!

You might consider examining a simpler non-quite Common Lisp
implementation; xlisp for instance.  Its not Common Lisp, but its
close enough for simple things- and its quite portable if you loose
the graphics stuff.  A nominal Common Lisp implementation has to
implement some very subtle stuff and if you're using this as an
exercise in learning assembly, it might become prohibitively
difficult.

If you track down the Xlisp source, there's a table of the Lisp
functions it implements within.  Refer to

http://www.lispworks.com/reference/HyperSpec/Front/index.htm

for details on the Lisp operations themselves.  If you want to learn
Lisp, start at http://www.lisp.org/table/contents.htm

I'm not sure why skipping particular assembly codes will be of much
value, but carry on!


Gregm
From: Barry Margolin
Subject: Re: How do I write a lisp interpreter in ASM.
Date: 
Message-ID: <pBS89.21$xl4.4990@paloalto-snr1.gtei.net>
In article <····························@posting.google.com>,
PDu82 <·····@yahoo.com> wrote:
>I'm getting a bit ahead of myself here but has anyone written a
>tutorial on how to make a lisp interpreter? 

It's a pretty complex subject for a "tutorial".  I think the seminal work
on this subject is the book "Anatomy of Lisp".

>					     I have to create a lisp
>compiler skipping certain.... and might I add many X86 opcodes. I'm
>currently learning ASM on my own then I'm going to learn LISP. I also
>need the list of every lisp command and ASM code and what they do...
>but... It's very important that you include something more directly
>related with the subject with it as I can probably find the
>information I seek with a few hours of searching (Though it might not
>be as good as yours) The definition of Standard CLISP (+ 1
>tutorial/information on the subject of this post.) would do. I'm
>skipping the ASM codes in an attempt to make sure the interpreter
>won't interfere with the rest of the OS. Especially since it will run
>the entire time the OS is up. I believe it's called multithreading.
>Well... I just wanna avoid the whole yarn!

I'm not sure what you mean by this.  It's not normally the application's
responsibility to prevent from interfering with the rest of the OS, it's
the OS's responsibility to protect itself from rogue applications.  And
even in operating systems with cooperative multitasking (e.g. MacOS 9 and
earlier), you don't cooperate by avoiding certain opcodes; the application
has to obey a whole protocol (e.g. in MacOS the application must call
GetNextEvent() periodically, in order to allow other tasks to run).

>If you didn't understand part of this... you can't help me. If you
>only got a vague grasp of this.. you can't help me. If you think I'm
>insane... you're right! Please include Confirmed: before the subject
>you choose. (Ex. Confirmed: Re: Lisp interpreter...) Also if anyone
>knows how to get Red Hat Linux to connect to MSN's Windows NT servers
>I'd appreciate a hint or two... thousand.

What's this "Confirmed:" BS?  I'm following the standard for Subject lines;
if you don't see it, that's your problem.

-- 
Barry Margolin, ······@genuity.net
Genuity, Woburn, MA
*** DON'T SEND TECHNICAL QUESTIONS DIRECTLY TO ME, post them to newsgroups.
Please DON'T copy followups to me -- I'll assume it wasn't posted to the group.
From: Bulent Murtezaoglu
Subject: Re: How do I write a lisp interpreter in ASM.
Date: 
Message-ID: <87it23kjij.fsf@cinifa.internal>
>>>>> "BarMar" == Barry Margolin <······@genuity.net> writes:
    BarMar> PDu82 <·····@yahoo.com> wrote:
    >> I'm getting a bit ahead of myself here but has anyone written a
    >> tutorial on how to make a lisp interpreter?
    BarMar> It's a pretty complex subject for a "tutorial".  I think
    BarMar> the seminal work on this subject is the book "Anatomy of
    BarMar> Lisp".

Yes, and the recent book (translation) by Quinnec, "Lisp In Small Pieces"
it is Schemey, but a great read in my opinion.  

You might also want to look into CMUCL and SBCL (forked from CMUCL).  If 
you are an assembly programmer, you could take a bottom-up approach and 
see how their LISP->internal representation (2 stages?)->VOP (virtual ops)->
assembler->native code generation works from the assembly upwards.  This 
will not expose you to lisp necessarily but you will see low level details 
of tagging, array headers and such and you might be able to contribute 
faster code sequences exploiting the newer CPUs.

cheers,

BM
From: Daniel Barlow
Subject: Re: How do I write a lisp interpreter in ASM.
Date: 
Message-ID: <87r8grg5r7.fsf@noetbook.telent.net>
·····@yahoo.com (PDu82) writes:

> If you didn't understand part of this... you can't help me. If you
> only got a vague grasp of this.. you can't help me. If you think I'm

Right.  You need more help that we can give you over usenet.

P.S.  That was not a compliment.


-dan

-- 

  http://ww.telent.net/cliki/ - Link farm for free CL-on-Unix resources 
From: Ed LeBouthillier
Subject: Re: How do I write a lisp interpreter in ASM.
Date: 
Message-ID: <3d646206.540265@news.earthlink.net>
On 21 Aug 2002 13:08:50 -0700, ·····@yahoo.com (PDu82) wrote:

>I'm getting a bit ahead of myself here but has anyone written a
>tutorial on how to make a lisp interpreter? I have to create a lisp
>compiler skipping certain.... and might I add many X86 opcodes. I'm
>currently learning ASM on my own then I'm going to learn LISP. I also
>need the list of every lisp command and ASM code and what they do...
>but... It's very important that you include something more directly
>related with the subject with it as I can probably find the
>information I seek with a few hours of searching (Though it might not
>be as good as yours) The definition of Standard CLISP (+ 1
>tutorial/information on the subject of this post.) would do. I'm
>skipping the ASM codes in an attempt to make sure the interpreter
>won't interfere with the rest of the OS. Especially since it will run
>the entire time the OS is up. I believe it's called multithreading.
>Well... I just wanna avoid the whole yarn!
>
>If you didn't understand part of this... you can't help me. If you
>only got a vague grasp of this.. you can't help me. If you think I'm
>insane... you're right! Please include Confirmed: before the subject
>you choose. (Ex. Confirmed: Re: Lisp interpreter...) Also if anyone
>knows how to get Red Hat Linux to connect to MSN's Windows NT servers
>I'd appreciate a hint or two... thousand.

The August 1979 issue of Byte magazine has the source code for one
for the 6800.

The November-December 1978 issue of Dr Dobbs Journal has one for
the 8080.

Cheers,
Art Ed LeBouthillier
From: J.St.
Subject: Re: How do I write a lisp interpreter in ASM.
Date: 
Message-ID: <87ofbtegdy.fsf@jmmr.no-ip.com>
·········@earthlink.net (Ed LeBouthillier) writes:

[...]

> The August 1979 issue of Byte magazine has the source code for one
> for the 6800.
> 
> The November-December 1978 issue of Dr Dobbs Journal has one for
> the 8080.

Does someone has some hints how to get my hands on them? They are
older than I am. :)

Regards,
Julian
From: Thomas F. Burdick
Subject: Re: How do I write a lisp interpreter in ASM.
Date: 
Message-ID: <xcvwuqhnz9f.fsf@conquest.OCF.Berkeley.EDU>
··········@web.de (J.St.) writes:

> ·········@earthlink.net (Ed LeBouthillier) writes:
> 
> [...]
> 
> > The August 1979 issue of Byte magazine has the source code for one
> > for the 6800.
> > 
> > The November-December 1978 issue of Dr Dobbs Journal has one for
> > the 8080.
> 
> Does someone has some hints how to get my hands on them? They are
> older than I am. :)

A university library?  The engineering library at UC-Berkeley has
them, not that that does you a lot of good.  The full title of
Dr. Dobb's at the time was:

  Dr. Dobb's journal of computer calisthenics & orthodontia

Which is probably helpful in finding it :)

-- 
           /|_     .-----------------------.                        
         ,'  .\  / | No to Imperialist war |                        
     ,--'    _,'   | Wage class war!       |                        
    /       /      `-----------------------'                        
   (   -.  |                               
   |     ) |                               
  (`-.  '--.)                              
   `. )----'                               
From: Ed LeBouthillier
Subject: Re: How do I write a lisp interpreter in ASM.
Date: 
Message-ID: <3d670966.670987@news.earthlink.net>
On 23 Aug 2002 17:36:41 +0200, ··········@web.de (J.St.) wrote:

>·········@earthlink.net (Ed LeBouthillier) writes:
>
>[...]
>
>> The August 1979 issue of Byte magazine has the source code for one
>> for the 6800.
>> 
>> The November-December 1978 issue of Dr Dobbs Journal has one for
>> the 8080.
>
>Does someone has some hints how to get my hands on them? They are
>older than I am. :)

I might be willing to scan them in and make them available as PDF's.
I'll see if I can make some time this weekend.

Cheers,
Art Ed LeBouthillier
From: J.St.
Subject: Re: How do I write a lisp interpreter in ASM.
Date: 
Message-ID: <87it1ziqmp.fsf@jmmr.no-ip.com>
·········@earthlink.net (Ed LeBouthillier) writes:

> On 23 Aug 2002 17:36:41 +0200, ··········@web.de (J.St.) wrote:
> 
> >·········@earthlink.net (Ed LeBouthillier) writes:
> >
> >[...]
> >
> >> The August 1979 issue of Byte magazine has the source code for one
> >> for the 6800.
> >> 
> >> The November-December 1978 issue of Dr Dobbs Journal has one for
> >> the 8080.
> >
> >Does someone has some hints how to get my hands on them? They are
> >older than I am. :)
> 
> I might be willing to scan them in and make them available as PDF's.
> I'll see if I can make some time this weekend.

That would be _very_ nice.

Regards,
Julian
From: Ed LeBouthillier
Subject: Re: How do I write a lisp interpreter in ASM.
Date: 
Message-ID: <3d698ffb.5589237@news.earthlink.net>
On 25 Aug 2002 05:06:22 +0200, ··········@web.de (J.St.) wrote:

>> I might be willing to scan them in and make them available as PDF's.
>> I'll see if I can make some time this weekend.
>
>That would be _very_ nice.


Here are the files:

	http://home.earthlink.net/~apendragn/lisp/

They are about 15 GIFs. I didn't put the Doctor Dobbs article
online because the article is larger and very small print. That
makes the files much larger because I need higher resolution.

I'll leave these files online until next Sunday, 1 September.

If you have any problems, let me know.

Cheers,
Art Ed LeBouthillier
From: J.St.
Subject: Re: How do I write a lisp interpreter in ASM.
Date: 
Message-ID: <87sn1193jx.fsf@jmmr.no-ip.com>
·········@earthlink.net (Ed LeBouthillier) writes:

> On 25 Aug 2002 05:06:22 +0200, ··········@web.de (J.St.) wrote:
> 
> >> I might be willing to scan them in and make them available as PDF's.
> >> I'll see if I can make some time this weekend.
> >
> >That would be _very_ nice.
> 
> 
> Here are the files:
> 
> 	http://home.earthlink.net/~apendragn/lisp/
> 
> They are about 15 GIFs. I didn't put the Doctor Dobbs article
> online because the article is larger and very small print. That
> makes the files much larger because I need higher resolution.
> 
> I'll leave these files online until next Sunday, 1 September.
> 
> If you have any problems, let me know.

No, everything is fine. I will read it anon.

Thank you!

Regards,
Julian
From: Damond Walker
Subject: Re: How do I write a lisp interpreter in ASM.
Date: 
Message-ID: <63637457.0208291201.123159e8@posting.google.com>
·········@earthlink.net (Ed LeBouthillier) wrote in message news:<················@news.earthlink.net>...
> 
> Here are the files:
> 

[snip]

The best part about reviewing these old Byte articles is the Ads
listed along side them.  They certainly bring back some memories.

Damo
From: Ed LeBouthillier
Subject: Re: How do I write a lisp interpreter in ASM.
Date: 
Message-ID: <3d6f758a.562512@news.earthlink.net>
On 29 Aug 2002 13:01:26 -0700, ·······@syncreticsoft.com (Damond
Walker) wrote:

>The best part about reviewing these old Byte articles is the Ads
>listed along side them.  They certainly bring back some memories.

I agree. I've got a couple of old magazines that I've saved over the
years and it's always great to see these adds for "16K of RAM only
$200"

Cheers,
Art Ed LeBouthillier
From: Thomas F. Burdick
Subject: Re: How do I write a lisp interpreter in ASM.
Date: 
Message-ID: <xcvbs7ums09.fsf@apocalypse.OCF.Berkeley.EDU>
I'm not sure of your motivation for learning assembly language, but if
it's consistent with your motivation, I'd *highly* reccomend learning
a RISC assembly language first.  PowerPC and SPARC machines can be had
very cheaply, and will be much easier and more enjoyable to learn on.
Once you're comfortable there, then I'd recommend learning x86
assembly language, which is a practical thing to know, but is also a
nasty accumulation of hacks.

-- 
           /|_     .-----------------------.                        
         ,'  .\  / | No to Imperialist war |                        
     ,--'    _,'   | Wage class war!       |                        
    /       /      `-----------------------'                        
   (   -.  |                               
   |     ) |                               
  (`-.  '--.)                              
   `. )----'                               
From: Wolfhard Buß
Subject: Re: How do I write a lisp interpreter in ASM.
Date: 
Message-ID: <m3r8glv3rx.fsf@buss-14250.user.cis.dfn.de>
muLISP-80 of 'The Soft Warehouse' Honolulu, Hawaii is available at

 http://www.retroarchive.org/cpm/lang/lisp80.zip

Disassemble it.

-- 
"I believe in the horse. The automobile is a passing phenomenon."
                              --  Kaiser Wilhelm II. (1859-1941)