dyn-lib.doc 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. From miked@nag.co.ukWed Oct 18 18:52:37 1995
  2. Date: Wed, 18 Oct 1995 14:23:18 +0000 (BST)
  3. From: Mike Dewar <miked@nag.co.uk>
  4. To: acn1 <acn1%cam.ac.uk@maths.bath.ac.uk>
  5. Subject: Interface for dynamic opening and closing of libraries
  6. Arthur:
  7. I've discussed the specification of the "dynamic libraries" interface with
  8. Barry and this is what we think we need. For a user's own code, we will
  9. always know the full pathname of the library it is in, so we can load the
  10. module explicitly.
  11. 1. A function that loads a particular module from a particular library, e.g.
  12. (load-module <module> <pathname>)
  13. The library need not be open for input. You might wish to have separate
  14. open-library, load-module, and close-library operations if that is more
  15. efficient.
  16. 2. A function that opens a library for output, e.g.
  17. (open-library <pathname>)
  18. The function need not be responsible for checking if the library is open
  19. already.
  20. 3. A function that reads a lisp source file, translates it into byte codes,
  21. and writes the results into a named library, e.g.
  22. (fasl-out <filename> <library>)
  23. This could either:
  24. (a) Overwrite an existing module with the same name (our preferred option),
  25. or
  26. (b) replace the entire library if it already exists.
  27. 4. A function that closes an open library and, if option 3a above is
  28. implemented, does all the necessary tidying-up, compaction etc, e.g.
  29. (close-library <pathname>)
  30. 5. Facilities for setting the library search path from within Lisp:
  31. (a) deleting a library from the search path;
  32. (b) adding a new library to the front of the search path;
  33. (c) adding a new library to the end of the search path.
  34. Let me know what you think of this. I had trouble sending email to you
  35. yesterday and today, so please let me know when/if this message arrives!
  36. Regards, Mike.
  37. --
  38. ---------------------------------------------------------------------------
  39. Mike Dewar email: miked@nag.co.uk
  40. AXIOM System Coordinator phone: (+44) 1865 511245
  41. NAG Ltd. fax: (+44) 1865 311205
  42. Wilkinson House, Jordan Hill Rd, Oxford, OX2 8DR
  43. ---------------------------------------------------------------------------