Hi
The question is about logical pathnames. In the following simple session
I can't understand what I see in the line marked [***]
cl-user(1): (setf (logical-pathname-translations "mailer") '(("*.*.*" "*.text.*")))
(("*.*.*" "*.text.*"))
cl-user(2): (translate-logical-pathname "mailer:predict-message")
#P"predict-message.text"
cl-user(3): (setf (logical-pathname-translations "mailer") '(("*.*.*" "sys:;*.text.*")))
(("*.*.*" "sys:;*.text.*"))
cl-user(4): (translate-logical-pathname "mailer:predict-message")
[***] #P"/usr/local/acl80/predict-message"
cl-user(5):
Why in the line [***] I don't see the ".text" extension? Would you
mind telling me where is my mistake?
To be honest, I still can't grasp the syntax of logical
pathnames. Every time when I need them I experience remarkable
difficulties. Something that I think should work doesn't and again
something that I think shouldn't -- works. For example, if I need
MAILER:FOO (logical) to be translated to ./FOO.text (physical) what
should I write? What's the difference between MAILER:FOO and
MAILER:;FOO, etc. These questions aren't meant to be answered. I
mentioned them only to illustrate my difficulties in understanding
logical pathnames. And to me processing wildcards is very confusing.
Using ACL 8.0 on x86f box
--
Vladimir Zolotykh
>>>>> "Vladimir" == Vladimir Zolotykh <······@eurocom.od.ua> writes:
Vladimir> cl-user(1): (setf (logical-pathname-translations "mailer") '(("*.*.*" "*.text.*")))
Vladimir> (("*.*.*" "*.text.*"))
Vladimir> cl-user(2): (translate-logical-pathname "mailer:predict-message")
Vladimir> #P"predict-message.text"
Vladimir> cl-user(3): (setf (logical-pathname-translations "mailer") '(("*.*.*" "sys:;*.text.*")))
Vladimir> (("*.*.*" "sys:;*.text.*"))
Vladimir> cl-user(4): (translate-logical-pathname "mailer:predict-message")
Vladimir> [***] #P"/usr/local/acl80/predict-message"
Vladimir> cl-user(5):
Vladimir> Why in the line [***] I don't see the ".text" extension? Would you
Vladimir> mind telling me where is my mistake?
What's the translation for sys? That might help to figure this out.
Vladimir> To be honest, I still can't grasp the syntax of logical
Vladimir> pathnames. Every time when I need them I experience remarkable
Vladimir> difficulties. Something that I think should work doesn't and again
Vladimir> something that I think shouldn't -- works. For example, if I need
Vladimir> MAILER:FOO (logical) to be translated to ./FOO.text (physical) what
Vladimir> should I write? What's the difference between MAILER:FOO and
Logical pathnames are case-insensitive (mostly), so if you want
MAILER:FOO to translate to FOO.text, you probably need an explicit
translation for it. Something like
(("FOO" "FOO.text"))
Vladimir> MAILER:;FOO, etc. These questions aren't meant to be answered. I
The mailer:;foo is a relative name. I think these are usually used
when merging logical pathnames together. But I'm not really very good
with logical pathnames.
Ray
On Wed, 08 Feb 2006 13:13:32 -0500
Raymond Toy <···········@ericsson.com> wrote:
> >>>>> "Vladimir" == Vladimir Zolotykh <······@eurocom.od.ua> writes:
>
>
> Vladimir> cl-user(1): (setf (logical-pathname-translations "mailer") '(("*.*.*" "*.text.*")))
> Vladimir> (("*.*.*" "*.text.*"))
> Vladimir> cl-user(2): (translate-logical-pathname "mailer:predict-message")
> Vladimir> #P"predict-message.text"
> Vladimir> cl-user(3): (setf (logical-pathname-translations "mailer") '(("*.*.*" "sys:;*.text.*")))
> Vladimir> (("*.*.*" "sys:;*.text.*"))
> Vladimir> cl-user(4): (translate-logical-pathname "mailer:predict-message")
> Vladimir> [***] #P"/usr/local/acl80/predict-message"
> Vladimir> cl-user(5):
>
> Vladimir> Why in the line [***] I don't see the ".text" extension? Would you
> Vladimir> mind telling me where is my mistake?
>
> What's the translation for sys? That might help to figure this out.
((#P";**;*.*" #P"/usr/local/acl80/" #S(excl::cached-translation-info :host nil :device nil :directory nil :name nil :type nil :version nil))
(#P"**;*.*" #P"/usr/local/acl80/" #S(excl::cached-translation-info :host nil :device nil :directory nil :name nil :type nil :version nil)))
You're right. It does help. Thanks
>
> Vladimir> To be honest, I still can't grasp the syntax of logical
> Vladimir> pathnames. Every time when I need them I experience remarkable
> Vladimir> difficulties. Something that I think should work doesn't and again
> Vladimir> something that I think shouldn't -- works. For example, if I need
> Vladimir> MAILER:FOO (logical) to be translated to ./FOO.text (physical) what
> Vladimir> should I write? What's the difference between MAILER:FOO and
>
> Logical pathnames are case-insensitive (mostly), so if you want
> MAILER:FOO to translate to FOO.text, you probably need an explicit
> translation for it. Something like
>
> (("FOO" "FOO.text"))
>
> Vladimir> MAILER:;FOO, etc. These questions aren't meant to be answered. I
>
> The mailer:;foo is a relative name. I think these are usually used
> when merging logical pathnames together. But I'm not really very good
> with logical pathnames.
>
> Ray
--
Vladimir Zolotykh