Newsgroups: comp.lang.lisp
Path: cantaloupe.srv.cs.cmu.edu!nntp.club.cc.cmu.edu!news.duq.edu!newsfeed.pitt.edu!gatech!csulb.edu!hammer.uoregon.edu!newsgate.cuhk.edu.hk!news.hk.net!howland.erols.net!rill.news.pipex.net!pipex!blackbush.xlink.net!news.ppp.net!news.Hanse.DE!wavehh.hanse.de!cracauer
From: cracauer@wavehh.hanse.de (Martin Cracauer)
Subject: Re: CMUCL & the SI Package
Message-ID: <1997Mar26.180443.6025@wavehh.hanse.de>
Keywords: CMU COMMON LISP PACKAGE SI
Reply-To: cracauer@wavehh.hanse.de
Organization: '(a (cons tructive organization))
References: <5hbdav$k82@ecom7.ecn.bgu.edu>
Date: Wed, 26 Mar 97 18:04:43 GMT
Lines: 54

xmas@uxa.ecn.bgu.edu (Mark A. Stevens) writes:

[...]
>* (in-package 'SI)
>Warning:  Old-style IN-PACKAGE.

[...]
>* (si::getenv "DISPLAY")
>Warning: This function is undefined:
>  GETENV

In CMUCL, use the global variable 
   ext:*environment-list*
to access the environment (it is an association list).

CLX defines a function (getenv <string>) that is based on this. 

To modify the environment for processes called from Lisp, pass a
modified alist to (run-program ...).

>* (si::chdir ".")
>Warning: This function is undefined:
>  CHDIR

The global variable DEFAULT-DIRECTORY in package Lisp does this. It is
setf -able.

>Someone, anyone, what am I doing wrong?

CMUCL does not have a SI package, CLX loaded or not. 

The first thing you did wrong is using the old-style in-package. The
way you used it it creates the package you want to change to if it
doesn't exist. Did you use (in-package "SI"), CMUCL would have raised
an error stating the package does not exist.

Then, you obviously assumed that CMUCL's SI package contains the same
as Franz Allegro's package of the same name. This is not the case,
these functions are non-standard and Lisp vendors didn't agreee on
similar interfaces even where it would be problem-free (like the
examples you gave).

I have to admit that CMUCL's manual doesn't contain information on
these functions. (apropos ...) and (documentation ...) are your
friends. Luckily, the manual is just being reworked :-)

Hope this helps.

Martin
-- 
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Martin_Cracauer@wavehh.hanse.de http://cracauer.cons.org  Fax.: +4940 5228536
"As far as I'm concerned,  if something is so complicated that you can't ex-
 plain it in 10 seconds, then it's probably not worth knowing anyway"- Calvin
