Re: A :files clause and a possible change to parse-component-form

Daniel Barlow <[email protected]>
Newsgroups gmane.lisp.cclan.general
Message-ID <[email protected]>
Gary King <[email protected]> writes:

> Overall, I think ASDF is very nice. There is one thing, however, which
> I dislike: the amount of boilerplate code involved in defining a
> system with many files when the dependencies are already encoded in
> the file ordering. As an example, I'd rather type
>
> (asdf:defsystem :eksl-utilities-base
>   :version "1.0"
>   :components ((:files ("package"

How would you feel if it were instead to accept "foo" as shorthand for
(:file "foo"), so you would write

(defsystem :eksl-utilities-base
   :version "1.0"
   :components ("package" "l0-utils" ...

Two notes.  First, I'm suggesting this without actually referring to
the code; I don't know if I've just managed to pick a syntax that
spanners something else.

Second, although it _should_ work to define a system by listing
components with the compilation dependency implicit in the ordering, I
think there may be bugs in practice.  So, watch out.  

Third, ("three reasons.  Surprise, fear, ...") if point 2 does bite
you, you can always use :serial t to introduce a recompile-if-changed
dependency at each stage.  You don't want to if you can avoid it,
because it means that every change to file 3 recompiles 4..n, but it's
a workaround in a pinch.


-dan

-- 

   http://web.metacircles.com/cirCLe_CD - Free Software Lisp/Linux distro
signature.asc (application/pgp-signature, 188 B)
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3 (GNU/Linux)

iD8DBQA/nxScHDK5ZnWQiRMRAjC9AJ9ks9ig2CoQg8O181fOHqhrZtBnsQCcD8mT
PY/15Fbk3Cuwapu7NC9t2rk=
=gXJ8
-----END PGP SIGNATURE-----
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.