[LISPWORKS][Common Lisp HyperSpec (TM)] [Previous][Up][Next]


Issue COMPILE-FILE-PATHNAME-ARGUMENTS Writeup

Issue:              COMPILE-FILE-PATHNAME-ARGUMENTS

References: COMPILE-FILE, COMPILE-FILE-PATHNAME

Related issues: COMPILER-VERBOSITY

PATHNAME-LOGICAL

Category: CLARIFICATION, CHANGE

Edit history: v1, 13 Feb 1991, Sandra Loosemore

v2, 11 Mar 1991, Sandra Loosemore (suggestion from kmp)

Problem description:

If an implementation extends COMPILE-FILE to recognize additional

implementation-specific keyword arguments, COMPILE-FILE-PATHNAME

must also support those additional arguments. However, there is a

discrepancy between the standard keyword arguments accepted by

the two functions, as they are currently documented. (COMPILE-FILE

has been extended to accept :VERBOSE and :PRINT keyword arguments.)

Proposal (COMPILE-FILE-PATHNAME-ARGUMENTS:MAKE-CONSISTENT):

Change the specification of the arguments to COMPILE-FILE-PATHNAME to

COMPILE-FILE-PATHNAME pathname &key :output-file &allow-other-keys

Rationale:

The intent was clearly to enable COMPILE-FILE-PATHNAME to be applied

to any argument list acceptable to COMPILE-FILE. Documenting

COMPILE-FILE-PATHNAME with &ALLOW-OTHER-KEYS fixes the problem without

worrying about future extensions and changes to COMPILE-FILE getting

things out of sync again.

Current Practice:

Few implementations support COMPILE-FILE-PATHNAME or the extensions

to COMPILE-FILE yet.

Cost to Implementors:

Trivial.

Cost to Users:

None.

Cost of non-adoption:

COMPILE-FILE-PATHNAME can't be used reliably for what it was intended

to be used for.

Performance impact:

Minor.

Benefits:

A pointless inconsistency in the language is removed.

Esthetics:

Looks OK to me.

Discussion:


[Starting Points][Contents][Index][Symbols][Glossary][Issues]
Copyright 1996-2005, LispWorks Ltd. All rights reserved.