From: HB
Subject: scheme in lisp
Date: 
Message-ID: <1115311304.298036.63490@o13g2000cwo.googlegroups.com>
Hi,

does someone know of a scheme implementation in common lisp (r4rs or
r5rs would be best)? I wanted to ask if someone already did the work
before i started to do it myself.

Greetings HB

From: Kent M Pitman
Subject: Re: scheme in lisp
Date: 
Message-ID: <uacn9r0th.fsf@nhplace.com>
"HB" <······@gmx.de> writes:

> does someone know of a scheme implementation in common lisp (r4rs or
> r5rs would be best)? I wanted to ask if someone already did the work
> before i started to do it myself.

I think you might want to Google around for pseudoscheme and/or scheme48.

They may or may not be complete, bu they're a good place to start.
From: Jens Axel Søgaard
Subject: Re: scheme in lisp
Date: 
Message-ID: <427a5c48$0$250$edfadb0f@dread12.news.tele.dk>
HB wrote:
> does someone know of a scheme implementation in common lisp (r4rs or
> r5rs would be best)? I wanted to ask if someone already did the work
> before i started to do it myself.

PseudoScheme.

     <http://mumble.net/~jar/pseudoscheme/>

For the historically interested PseudoScheme was used
to bootstrap Scheme48.

-- 
Jens Axel Søgaard
From: R. Mattes
Subject: Re: scheme in lisp
Date: 
Message-ID: <pan.2005.05.05.17.42.06.996375@mh-freiburg.de>
On Thu, 05 May 2005 19:48:16 +0200, Jens Axel S�gaard wrote:

> HB wrote:
>> does someone know of a scheme implementation in common lisp (r4rs or
>> r5rs would be best)? I wanted to ask if someone already did the work
>> before i started to do it myself.
> 
> PseudoScheme.
> 
>      <http://mumble.net/~jar/pseudoscheme/>
> 
> For the historically interested PseudoScheme was used
> to bootstrap Scheme48.

But would that come close to a modern scheme (i.e. R4RS or R5RS)?
How does it handle call/cc?

 Thanks Ralf Mattes
From: Pascal Costanza
Subject: Re: scheme in lisp
Date: 
Message-ID: <3dv6drFc33aU2@individual.net>
R. Mattes wrote:
> On Thu, 05 May 2005 19:48:16 +0200, Jens Axel S�gaard wrote:
> 
>>HB wrote:
>>
>>>does someone know of a scheme implementation in common lisp (r4rs or
>>>r5rs would be best)? I wanted to ask if someone already did the work
>>>before i started to do it myself.
>>
>>PseudoScheme.
>>
>>     <http://mumble.net/~jar/pseudoscheme/>
>>
>>For the historically interested PseudoScheme was used
>>to bootstrap Scheme48.
> 
> But would that come close to a modern scheme (i.e. R4RS or R5RS)?
> How does it handle call/cc?

The README says that it uses BLOCK for call/cc, so no full 
continuations. You also only get "proper" tail recursion if the 
underlying Common Lisp implementation supports it. (For some construct, 
"proper" tail recursion is guaranteed.)

Apart from that it claims to be R4RS with some R5RS stuff added.

It also seems to be maintained. The last version is from November 2004.


Pascal

-- 
2nd European Lisp and Scheme Workshop
July 26 - Glasgow, Scotland - co-located with ECOOP 2005
http://lisp-ecoop05.bknr.net/
From: Jens Axel Søgaard
Subject: Re: scheme in lisp
Date: 
Message-ID: <427a734f$0$288$edfadb0f@dread12.news.tele.dk>
Pascal Costanza wrote:
> R. Mattes wrote:

>> But would that come close to a modern scheme (i.e. R4RS or R5RS)?
>> How does it handle call/cc?
> 
> The README says that it uses BLOCK for call/cc, so no full 
> continuations. You also only get "proper" tail recursion if the 
> underlying Common Lisp implementation supports it. (For some construct, 
> "proper" tail recursion is guaranteed.)
> 
> Apart from that it claims to be R4RS with some R5RS stuff added.

 From pseudo.lisp:

(format ...
          ~%All of Revised^4.5 Scheme is available, including define-syntax,~
	 ~%values, dynamic-wind, and eval, but not things that are too~
	 ~%difficult to do in Common Lisp, e.g. upward continuations and~
	 ~%proper tail-recursion in all possible circumstances.  See the~
	 ~%user guide for more information.~%")

-- 
Jens Axel Søgaard
From: Pascal Costanza
Subject: Re: scheme in lisp
Date: 
Message-ID: <3dvgomFejn6U1@individual.net>
Pascal Costanza wrote:

[...]
>>> PseudoScheme.
>>>
>>>     <http://mumble.net/~jar/pseudoscheme/>
>>>
>>> For the historically interested PseudoScheme was used
>>> to bootstrap Scheme48.
>>
>>
>> But would that come close to a modern scheme (i.e. R4RS or R5RS)?
>> How does it handle call/cc?
> 
> The README says that it uses BLOCK for call/cc, so no full 
> continuations. You also only get "proper" tail recursion if the 
> underlying Common Lisp implementation supports it. (For some construct, 
> "proper" tail recursion is guaranteed.)

For some constructs... [typo].



Pascal

-- 
2nd European Lisp and Scheme Workshop
July 26 - Glasgow, Scotland - co-located with ECOOP 2005
http://lisp-ecoop05.bknr.net/
From: Pascal Costanza
Subject: Re: scheme in lisp
Date: 
Message-ID: <3dv5dcFcidbU2@individual.net>
Jens Axel S�gaard wrote:
> HB wrote:
> 
>> does someone know of a scheme implementation in common lisp (r4rs or
>> r5rs would be best)? I wanted to ask if someone already did the work
>> before i started to do it myself.
> 
> 
> PseudoScheme.
> 
>     <http://mumble.net/~jar/pseudoscheme/>

Depending on the Common Lisp implementation, this needs some 
fine-tuning. Follow the link to the older versions and find a README 
there that explains some of the details. Apart from that, this seems to 
work well.


Pascal

-- 
2nd European Lisp and Scheme Workshop
July 26 - Glasgow, Scotland - co-located with ECOOP 2005
http://lisp-ecoop05.bknr.net/
From: Joerg Hoehle
Subject: Re: scheme in lisp
Date: 
Message-ID: <u3bsm6vxf.fsf@users.sourceforge.net>
"HB" <······@gmx.de> writes:

> does someone know of a scheme implementation in common lisp (r4rs or
> r5rs would be best)? I wanted to ask if someone already did the work
> before i started to do it myself.

Why did nobody suggest the Schemes that are bart of Peter Norvig's
PAIP or Paul Graham's On Lisp books? Both feature compilers.

I used Peter's, added APPLY and some other functions, had had fun
playing with it in CLISP several times.

IIRC, Code of both books is online, so you needn't even type it in.

Both these will be R4RS. But then, Schemers typically turn to Jaffer's
stdlib for library code, which has plenty of code and also the R5RS
macros. I expect little problems getting that code to work with these
Schemes.

Regards,
	Jorg Hohle
Telekom/T-Systems Technology Center
From: ivant
Subject: Re: scheme in lisp
Date: 
Message-ID: <1116413335.768353.41040@g49g2000cwa.googlegroups.com>
Joerg Hoehle wrote:
> "HB" <······@gmx.de> writes:
>
> > does someone know of a scheme implementation in common lisp (r4rs
or
> > r5rs would be best)? I wanted to ask if someone already did the
work
> > before i started to do it myself.
>
> Why did nobody suggest the Schemes that are bart of Peter Norvig's
> PAIP or Paul Graham's On Lisp books? Both feature compilers.
>
> I used Peter's, added APPLY and some other functions, had had fun
> playing with it in CLISP several times.
>
> IIRC, Code of both books is online, so you needn't even type it in.
>
> Both these will be R4RS. But then, Schemers typically turn to
Jaffer's
> stdlib for library code, which has plenty of code and also the R5RS
> macros. I expect little problems getting that code to work with these
> Schemes.
>
> Regards,
> 	Jorg Hohle
> Telekom/T-Systems Technology Center

IIRC, there is no scheme implementation in "On Lisp".  Paul Graham
*uses* scheme to demonstrate continuations, and then implements
continuation-passing macros in Common Lisp.

As for Peter Norvig's PAIP, it's a great tutorial on how you can
implement Scheme in Common Lisp, but his implementation is far from
ready for prime time.  E.g. it uses the Lisp reader, doesn't provide
any Scheme-level macros, has a very limited amount of library
functions, etc.  All these issues are fixable, but it doesn't sound
like what the OP is looking for.

Ivan

--
Java has too few parentheses.
From: HB
Subject: Re: scheme in lisp
Date: 
Message-ID: <1117890583.158928.84070@g49g2000cwa.googlegroups.com>
Thanks for the answers (didn't get around to repost earlier, sorry
about that). Should've been exact in my question, but slightly modified
pseudoscheme 2.13 did the trick because I didn't need call/cc.

Greetings HB