1. 28 Feb, 2002 3 commits
    • Daniel Barlow's avatar
      test with both available implementations without having to edit this · 9d4f1b24
      Daniel Barlow authored
      file.  patches for other CL implementations gratefully accepted
    • Daniel Barlow's avatar
      -(define-condition system-definition-error (error)) · 7265988e
      Daniel Barlow authored
       +(define-condition system-definition-error (error) ())
      fix for syntax error in probably any implementation other than cmucl.
      Thanks to John M Adams for pointing this out
      lose the special variables for tracking visited nodes; keep this data
      in the operation instead
       +(defmethod operation-ancestor ((operation operation))
       +  "Recursively chase the operation's parent pointer until we get to the head of the tree"
       +(defun make-sub-operation (o type)
      use this when creating new operations so that they inherit initargs
      appropriately from their parent
    • Daniel Barlow's avatar
      initarg handling in oos · 228b251a
      Daniel Barlow authored
      +** proclamations probably aren't
  2. 22 Feb, 2002 2 commits
    • Daniel Barlow's avatar
      make it work with CMUCL too · 120735f2
      Daniel Barlow authored
    • Daniel Barlow's avatar
      - (:use "CL")) · cc1db98b
      Daniel Barlow authored
       +  (:use :cl))
      may help people with odd read/print case (or ACL "modern" mode users)
       -    "telent:asdf;systems;"))
       +    #+nil "telent:asdf;systems;"))
      clisp objects to this
      fix pathname merging in internal-find-system so it works with CMUCL's
      rather odd *default-pathname-defaults*
      add a run-shell-command dfefintion for cmucl
  3. 20 Feb, 2002 6 commits
  4. 19 Feb, 2002 2 commits
    • Daniel Barlow's avatar
      (defclass module (component) · 6f6d3345
      Daniel Barlow authored
       +   (if-component-dep-fails :initform :fail
       +(defgeneric find-component (module name &optional version)
      though presently it ignores the extra arg
      major dependency rewrite to allow for and/or dependencies and specification
      of versions
      compile-and-load-op is dead
      we reuse old components when processing a defsystem form that we've already
      seen once.  this means that eql-specialized methods will continue to work
      and also that we can implement the pathname defaulting properly (it doesn't
      work yet)
    • Daniel Barlow's avatar
      new stuff describing · 39401b04
      Daniel Barlow authored
      - tetsing implementation features
      - version dependencies (doesn't yet work)
      - and/or dependencies (likewise, nonfunctional)
      proposed asdf system standard moved onto a cliki page
  5. 14 Feb, 2002 6 commits
    • Daniel Barlow's avatar
      kludge for outline-mode · f38228ed
      Daniel Barlow authored
    • Daniel Barlow's avatar
      clc lite · f80e6a79
      Daniel Barlow authored
    • Daniel Barlow's avatar
      component class · 3ec3a499
      Daniel Barlow authored
       -   (pathname :initarg :pathname)))
       +   (relative-pathname :initarg :pathname)))
      component-pathname, component-relative-pathname changed to actually work
      (defmethod print-object ((c component) stream)
      is suffering strangely, but that might just be me.  try re-enabling
      this and see if itworks for you
        (defmethod perform ((o load-op) (c cl-source-file))
       -    (mapc nil #'load (output-files co c))))
       +    (map nil #'load (output-files co c))))
      load-op and compile-and-load-op are actually the same thing (at least
      for CL files).  need to choose a name ...
    • Daniel Barlow's avatar
      s/-system/-op/ · d65a272e
      Daniel Barlow authored
    • Daniel Barlow's avatar
      s/{compile,load}-system/{compile,load}-op/ · 9d9f8a71
      Daniel Barlow authored
      defsystem parsing basically totally rewritten.  diffs unmeaningful,
      so UTSL
    • Daniel Barlow's avatar
  6. 12 Feb, 2002 2 commits
  7. 11 Feb, 2002 1 commit
  8. 04 Dec, 2001 4 commits
  9. 20 Aug, 2001 1 commit
  10. 06 Aug, 2001 6 commits
    • Daniel Barlow's avatar
      copile and load on a dso can now be separate operations · 39511286
      Daniel Barlow authored
       +(defmethod perform ((operation load-system) (c c-source-file))
      does nothing but must exist
      fixed dependencies to reflect reality after having played with them a lot
      for testing
    • Daniel Barlow's avatar
    • Daniel Barlow's avatar
      TODO: +** compiler/loader options · d6d83262
      Daniel Barlow authored
      +** operation instantiation in traverse sucks
    • Daniel Barlow's avatar
      add minimal (and probably also insufficient) set of :in-order-to args · d1f7aa37
      Daniel Barlow authored
      to see if the dependency chasing actually works
    • Daniel Barlow's avatar
      +(define-condition missing-dependency (system-definition-error) · 3708d88d
      Daniel Barlow authored
       -   (depends-on :initform nil
       +   (in-order-to :initform nil :initarg :in-order-to)
       +   ;; the defsystem syntax allows us to define EQL methods with our
       +   ;; components.  We must keep track of them all so we can get rid of
       +   ;; them if need be when the defsystem form is re-evaluated
      (although note that we don't yet parse the necessary syntax, but the
      infrastructure is ready when we do)
       +(defvar *visited-nodes* nil)
       +(defvar *visiting-nodes* nil)
      and logical equivalents in operation slots go away.
        (defmethod visit-component ((o operation) (c component))
        (defmethod component-visited-p ((o operation) (c component))
        (defmethod (setf visiting-component) (new-value (o operation) (c component))
        (defmethod component-visiting-p ((o operation) (c component))
      all get updated to use new variables
       +(defmethod component-depends-on ((o operation) (c component))
      looks up dependencies from :depends-on slot
      reintroduce circularity check.  also rewrote the dependency traversing
      to introduce new operations as and when it needs to
       +(defmethod component-depends-on ((operation load-system) (c component))
      depends on compile-system
       -	       (create-instance-for-component c :file (second i) nil)))
       +	       (create-instance-for-component c :file i nil)))
      oops.  thanks csr
    • Daniel Barlow's avatar
      Rewrote the section on dependencies. Dependencies are now between · 0d60754a
      Daniel Barlow authored
      (operation component) pairs, not just components.
  11. 03 Aug, 2001 4 commits
  12. 02 Aug, 2001 1 commit
    • Daniel Barlow's avatar
      a component represents a source file, or a · ebaee857
      Daniel Barlow authored
       -collection of source files.
       +collection of components.
      "We extend the defsystem syntax to allow for eql-specialised methods on
      modules": updated to fit current operation abstraction
      symbols vs strings: Warn the user that they should either use keywords
      or be careful with the package that they evaluate defsystem forms in
      the :pathname argument is misnamed
  13. 01 Aug, 2001 1 commit