Re: fi-stella breaks mlisp

"Robert P. Goldman" <[email protected]> Thu, 08 Feb 2007 15:14:06 -0600
Newsgroups gmane.comp.ai.powerloom
Organization SIFT, LLC
Message-ID <[email protected]>
Hans Chalupsky wrote:
> Robert,
> 
> we'll see what we can do to make this generic.  Just downcasing the CL
> package prefixes in fi-stella might do the trick (you could try that
> and let me know whether it worked).  I don't think you can use the
> #:cl syntax, since that just gives you an uninterned symbol as opposed
> to one that's interened in the CL package.  But maybe I'm missing
> something here.  Anyway, we'll have a look.
> 
> Hans

The problem arises in code like the following:
(defvar fi-stella-lisp-directory-form
  ;; Form to evaluate to determine the directory where Lisp translations of
  ;; STELLA files are stored.  We can't evaluate this at initialization
time,
  ;; since STELLA might not yet be up and running.
  ;; Not sure how to do this right, since the Lisp translations could really
  ;; go anywhere dependent on the pathname definitions for a particular
system.
  ;; Maybe these should be lists, or should we store the STELLA source
file in
  ;;    the Lisp translation instead?
  '(fi:eval-in-lisp
    "(cl:ignore-errors (CL:namestring (CL:translate-logical-pathname
\"PL:native;lisp;\")))"))

I think that the CL stuff could be fixed just by replacing the
upper-case with lower-cased "CL:" --- an ANSI lisp will quietly upcase
"cl", but "CL" chokes mlisp.

I think you may need to be careful about the "PL:" --- logical pathnames
are supposed to be case-insensitive, but this is not a good design
decision for modern filesystems so ACL flouts it.  [Indeed, it's such a
bad decision that logical pathnames seem almost totally useless across
multiple lisp implementations.]

I hope this is of assistance,
Robert

-- 
Robert P. Goldman
Senior Scientist
Smart Information Flow Technologies (d/b/a SIFT, LLC)

211 N. First St., Suite 300
Minneapolis, MN 55401

Voice:	(612) 384-3454
Email:    [email protected]