Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
A
asdf
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Container Registry
Model registry
Operate
Environments
Monitor
Incidents
Service Desk
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Jan Moringen
asdf
Commits
d9fec029
Commit
d9fec029
authored
23 years ago
by
Daniel Barlow
Browse files
Options
Downloads
Patches
Plain Diff
.system -> .asd
parent
715940af
No related branches found
Branches containing commit
No related tags found
Tags containing commit
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
README
+12
-11
12 additions, 11 deletions
README
with
12 additions
and
11 deletions
README
+
12
−
11
View file @
d9fec029
asdf: another system definition facility -*- Text -*-
$Id: README,v 1.1
4
2002/02/
19
15:27
:02
dan_b Exp $
$Id: README,v 1.1
5
2002/02/
20 14:
15:27 dan_b Exp $
This system definition utility talks in terms of 'components' and
'operations'.
...
...
@@ -333,7 +333,7 @@ In the case of a symbol,
No case translation is done for systems named by strings
This attempts to find the system in a file on the disk. This file has
the name of the system, the type "
system
", and is looked for in each
the name of the system, the type "
asd
", and is looked for in each
of the directories given by evaluating members of *central-registry*.
The first matching file is considered, whether or not it turns out to
actually define the appropriate system
...
...
@@ -344,7 +344,7 @@ If a suitable file exists, it is loaded if
- the file's last-modified time exceeds the last-modified time of the
system in memory
When system definitions are loaded from .
system
files, a new scratch
When system definitions are loaded from .
asd
files, a new scratch
package is created for them to load into, so that different systems do
not overwrite each others operations. The user may also wish to (and
is recommended to) include defpackage and in-package forms in his
...
...
@@ -453,7 +453,7 @@ These rules are designed so that (i) find-system will load a system
from disk and have its pathname default to the right place, (ii)
this pathname information will not be overwritten with
*default-pathname-defaults* (which could be somewhere else altogether)
if the user loads up the .
system
file into his editor and
if the user loads up the .
asd
file into his editor and
interactively re-evaluates that form
* Error handling
...
...
@@ -479,15 +479,19 @@ OPERATION-ERROR
(2) pathname computations for a component named by a symbol are
done using :case :common. This applies in component-relative-pathname
and in find-system or whatever it calls to load the foo.
system
file
and in find-system or whatever it calls to load the foo.
asd
file
** style guide for .
system
files
** style guide for .
asd
files
You should either use keywords or be careful with the package that you
evaluate defsystem forms in. Otherwise (defsystem partition ...)
being read in the cl-user package will intern a cl-user:partition
symbol, which will then collide with the partition:partition symbol.
Actually there's a hairier packages problem to think about too.
in-order-to is not a keyword: if you read defsystem forms in a package
that doesn't use ASDF, odd things might happen
** extending defsystem with new options
You might not want to write a whole parser, but just to add options to
...
...
@@ -501,6 +505,7 @@ the existing syntax. Reinstate parse-option or something akin
** reuse the same scratch package whenever a system is reloaded from disk
** "and" and "or" dependencies are broken
** compiler/loader options, other stuff needing specials
** rules for pathname defaulting are not yet implemented properly
new operations created during a traversal should get a link back to
their parent, and accessors for component properties should
...
...
@@ -508,13 +513,9 @@ automatically check the parent operation if it's not set on the
current op. Then we don't need specials for compiler options or "what
have we visited so far" stuff
** test suite
Some form of testing is essential. Preferably it should not involve
having to ship db-sockets along with asdf
* layered standard for lisp code packages a la clc
See http://ww.telent.net/cliki/ASDF%20System
http://bugs.plt-scheme.org/cgi-bin/gnats-query?pr-number=5271&query-type=pr-number
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment