[plt-scheme] More PLT-Scheme 402 extension

From: Matthew Flatt (mflatt at cs.utah.edu)
Date: Tue Jul 15 13:29:40 EDT 2008

At Tue, 15 Jul 2008 19:13:05 +0200 (CEST), Ivanyi Peter wrote:
> Two little questions:
> - What is concept behind the naming convention for the 
> libmred3m_6m5fio.dll file? What is 6, m, 5, f, i, o?

It encodes the version number. As the version numbers got syntactically
bigger with v4, we changed the encoding to keep it compact. The
`dynext/filename-version' library implements the encoding.

> - Another question is related to probably the immutable lists.
> I want to pass a "normal" list to a function defined in an
> extension. However I have a problem with SCHEME_PAIRP. 
> Is anything wrong in the code snippet below? Maybe the 
> extension receives some other kind of list?

>From the PLT Scheme implementation's perspective, a "normal" list/pair
is an immutable one.

Did you want to accept mutable pairs? In that case, test with
SCHEME_MUTABLE_PAIRP (which isn't mentioned in the docs, so I'll fix
that).

The SCHEME_CAR and SCHEME_CDR macros are intended to work on mutable
pairs. In retrospect, that seems like a bad idea, so I'll add
SCHEME_MCAR and SCHEME_MCDR macros.

Matthew



Posted on the users mailing list.