From: Frank Goenninger
Subject: Lispworks (PE): Error: "Cannot have / in a top-level directory name" ???
Date:
Message-ID: <fcre2u$oh7$03$1@news.t-online.com>
Hi -
as new user of Lispworks I am encountering some errors I have never
seen with Allegro CL:
Error: Cannot have / in a top-level directory name "/Users/frgo/Music/Sounds/".
1 (abort) Return to level 0.
2 Return to top loop level 0.
Type :b for backtrace, :c <option number> to proceed, or :? for other options
CL-USER 7 : 1 >
Backtrace:
Call to MAKE-PATHNAME
Call to CELLO:SET-OPENAL-AUDIO-FILES-PATH
Call to NET.GOENNINGER.APP.CELLO-WIDGETS-USER:TEST01-MAIN
The offending function is:
(defun set-openal-audio-files-path (absolute-path)
(setf oal::*audio-files* (make-pathname :directory absolute-path
:type "wav")))
I am calling this function as follows:
(set-openal-audio-files "/Users/frgo/Music/Sounds")
When called as
(set-openal-audio-files '(:absolute "Users" "frgo" "Music" "Sounds")
things work... But: Why?
Thx for sharing ...
Frank
--
Frank Goenninger
frgo(at)goenninger(dot)net
"Don't ask me! I haven't been reading comp.lang.lisp long enough to
really know ..."
From: Edi Weitz
Subject: Re: Lispworks (PE): Error: "Cannot have / in a top-level directory name" ???
Date:
Message-ID: <u6426slkh.fsf@agharta.de>
On Wed, 19 Sep 2007 17:09:20 +0200, Frank Goenninger <····@goenninger.net> wrote:
> as new user of Lispworks I am encountering some errors I have never
> seen with Allegro CL:
>
> Error: Cannot have / in a top-level directory name "/Users/frgo/Music/Sounds/".
> 1 (abort) Return to level 0.
> 2 Return to top loop level 0.
>
> Type :b for backtrace, :c <option number> to proceed, or :? for other options
>
> CL-USER 7 : 1 >
>
> Backtrace:
>
> Call to MAKE-PATHNAME
> Call to CELLO:SET-OPENAL-AUDIO-FILES-PATH
> Call to NET.GOENNINGER.APP.CELLO-WIDGETS-USER:TEST01-MAIN
>
> The offending function is:
>
> (defun set-openal-audio-files-path (absolute-path)
> (setf oal::*audio-files* (make-pathname :directory absolute-path
> :type "wav")))
>
> I am calling this function as follows:
>
> (set-openal-audio-files "/Users/frgo/Music/Sounds")
>
> When called as
>
> (set-openal-audio-files '(:absolute "Users" "frgo" "Music" "Sounds")
>
> things work... But: Why?
According to 19.2.2.4.3, "each string names a single level of
directory structure," so I think LW is right to complain here.
--
Lisp is not dead, it just smells funny.
Real email: (replace (subseq ·········@agharta.de" 5) "edi")
In article <·············@agharta.de>, Edi Weitz <········@agharta.de>
wrote:
> On Wed, 19 Sep 2007 17:09:20 +0200, Frank Goenninger <····@goenninger.net> wrote:
>
> > as new user of Lispworks I am encountering some errors I have never
> > seen with Allegro CL:
> >
> > Error: Cannot have / in a top-level directory name "/Users/frgo/Music/Sounds/".
> > 1 (abort) Return to level 0.
> > 2 Return to top loop level 0.
> >
> > Type :b for backtrace, :c <option number> to proceed, or :? for other options
> >
> > CL-USER 7 : 1 >
> >
> > Backtrace:
> >
> > Call to MAKE-PATHNAME
> > Call to CELLO:SET-OPENAL-AUDIO-FILES-PATH
> > Call to NET.GOENNINGER.APP.CELLO-WIDGETS-USER:TEST01-MAIN
> >
> > The offending function is:
> >
> > (defun set-openal-audio-files-path (absolute-path)
> > (setf oal::*audio-files* (make-pathname :directory absolute-path
> > :type "wav")))
> >
> > I am calling this function as follows:
> >
> > (set-openal-audio-files "/Users/frgo/Music/Sounds")
> >
> > When called as
> >
> > (set-openal-audio-files '(:absolute "Users" "frgo" "Music" "Sounds")
> >
> > things work... But: Why?
>
> According to 19.2.2.4.3, "each string names a single level of
> directory structure," so I think LW is right to complain here.
yep.
One may use something like:
(make-pathname :defaults (pathname absolute-path) :type "wav")
? (make-pathname :defaults (pathname "/Users/frgo/Music/Sounds/") :type "wav")
#P"/Users/frgo/Music/Sounds/.wav"
? (describe *)
#P"/Users/frgo/Music/Sounds/.wav"
Type: PATHNAME
Class: #<BUILT-IN-CLASS PATHNAME>
TYPE: PATHNAME
%PATHNAME-DIRECTORY: (:ABSOLUTE "Users" "frgo" "Music" "Sounds")
%PATHNAME-NAME: NIL
%PATHNAME-TYPE: "wav"
%PHYSICAL-PATHNAME-VERSION: NIL
Note the ending slash for the directory string.
--
http://lispm.dyndns.org
From: Frank Goenninger
Subject: Re: Lispworks (PE): Error: "Cannot have / in a top-level directory name" ???
Date:
Message-ID: <fcrmeb$l6u$01$1@news.t-online.com>
On 2007-09-19 17:55:03 +0200, Rainer Joswig <······@lisp.de> said:
> In article <·············@agharta.de>, Edi Weitz <········@agharta.de>
> wrote:
>
>> On Wed, 19 Sep 2007 17:09:20 +0200, Frank Goenninger
>> <····@goenninger.net> wrote:
>>
>>> as new user of Lispworks I am encountering some errors I have never
>>> seen with Allegro CL:
>>>
>>> Error: Cannot have / in a top-level directory name "/Users/frgo/Music/Sounds/".
>>> 1 (abort) Return to level 0.
>>> 2 Return to top loop level 0.
>>>
>>> Type :b for backtrace, :c <option number> to proceed, or :? for other options
>>>
>>> CL-USER 7 : 1 >
>>>
>>> Backtrace:
>>>
>>> Call to MAKE-PATHNAME
>>> Call to CELLO:SET-OPENAL-AUDIO-FILES-PATH
>>> Call to NET.GOENNINGER.APP.CELLO-WIDGETS-USER:TEST01-MAIN
>>>
>>> The offending function is:
>>>
>>> (defun set-openal-audio-files-path (absolute-path)
>>> (setf oal::*audio-files* (make-pathname :directory absolute-path
>>> :type "wav")))
>>>
>>> I am calling this function as follows:
>>>
>>> (set-openal-audio-files "/Users/frgo/Music/Sounds")
>>>
>>> When called as
>>>
>>> (set-openal-audio-files '(:absolute "Users" "frgo" "Music" "Sounds")
>>>
>>> things work... But: Why?
>>
>> According to 19.2.2.4.3, "each string names a single level of
>> directory structure," so I think LW is right to complain here.
>
> yep.
>
> One may use something like:
>
> (make-pathname :defaults (pathname absolute-path) :type "wav")
>
> ? (make-pathname :defaults (pathname "/Users/frgo/Music/Sounds/") :type "wav")
> #P"/Users/frgo/Music/Sounds/.wav"
> ? (describe *)
> #P"/Users/frgo/Music/Sounds/.wav"
> Type: PATHNAME
> Class: #<BUILT-IN-CLASS PATHNAME>
> TYPE: PATHNAME
> %PATHNAME-DIRECTORY: (:ABSOLUTE "Users" "frgo" "Music" "Sounds")
> %PATHNAME-NAME: NIL
> %PATHNAME-TYPE: "wav"
> %PHYSICAL-PATHNAME-VERSION: NIL
>
> Note the ending slash for the directory string.
Thanks! Didn't see 19.2.2.4.3 ... ;-)
Frank
--
Frank Goenninger
frgo(at)goenninger(dot)net
"Don't ask me! I haven't been reading comp.lang.lisp long enough to
really know ..."