| Allegro CL version 10.1 Unrevised from 10.0 to 10.1. 10.0 version |
The value of this variable should be a (possibly empty) list of character objects. Any character on this list will be allowed in a word of a logical pathname even if the ANSI spec does not permit such characters to be used. (As specified by the ANSI spec, words in logical pathnames must consist of alphabetic characters, decimal digits, and the minus sign. Not allowed are characters such as underscore (#\_).)
For example, consider the namestring "expert:;engine;steam_power.lisp". Because it contains an underscore, it cannot (per the ANSI spec) be parsed as a logical pathname. Instead, it is parsed as a physical pathname (with a very odd but not, on UNIX, illegal name):
cl-user(102): *additional-logical-pathname-name-chars* nil cl-user(103): (describe (pathname "expert:;engine;steam_power.lisp")) #p"expert:;engine;steam_power.lisp" is a structure of type pathname. It has these slots: host nil device :unspecific directory nil name "expert:;engine;steam_power" [...]
But if #\_ is added to the list bound to *additional-logical-pathname-name-chars*
,
"expert:;engine;steam_power" does parse as a logical pathname:
cl-user(104): (push #\_ *additional-logical-pathname-name-chars*) (#\_) cl-user(105): (describe (pathname "expert:;engine;steam_power.lisp")) #p"expert:;engine;steam_power.lisp" is a structure of type logical-pathname. It has these slots: host "expert" device nil directory (:relative "engine") name "steam_power" [...]
The initial value of this variable is nil
,
which is the value necessary for ANSI compliance. Note that logical
pathname operations will not be portable if the value of this variable
is non-nil
.
See Logical pathnames: general implementation details in pathnames.htm for more information on this aspect of logical pathnames in Allegro CL.
Copyright (c) 1998-2022, Franz Inc. Lafayette, CA., USA. All rights reserved.
This page was not revised from the 10.0 page.
Created 2019.8.20.
| Allegro CL version 10.1 Unrevised from 10.0 to 10.1. 10.0 version |