appendix-portability.tex 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. % -*- Mode: TeX -*-
  2. %%Portability Issues
  3. Following is a list of situations which are known to cause portability
  4. problems between \term{implementations}:
  5. \beginlist
  6. %% 5.1.4 3
  7. \item{\bull}
  8. \term{Macros} provided by an implementation might expand
  9. into code that is not portable among differing \term{implementations}.
  10. \item{\bull}
  11. The precision and range of \term{floats} might vary between \term{implementations}.
  12. \item{\bull}
  13. Sizes of \term{numbers} might vary between \term{implementations}.
  14. \Seesection\ImplemDefFeatures.
  15. \item{\bull}
  16. \term{Implementations} might support additional pre-defined \term{condition} types.
  17. \item{\bull}
  18. \term{Implementations} might support additional \term{type specifiers}.
  19. \item{\bull}
  20. \term{Implementations} might vary with respect to their treatment of
  21. \term{pathnames}, the native syntax of file names,
  22. and the determination of the actual files present.
  23. \item{\bull}
  24. \term{Implementations} might vary with respect to the the capabilities
  25. and power of their file system operations.
  26. \item{\bull}
  27. \term{Implementations} might differ in their treatment of \term{packages}.
  28. \item{\bull}
  29. The {\tt #+}, {\tt #-} notations institute deliberate non-portability.
  30. %\item{\bull}
  31. % \term{implementations} may extend the syntax for some
  32. % \term{macros} and \term{special forms} (\eg \specref{if}).
  33. \item{\bull}
  34. \term{Implementations} might extend the number of arguments for some
  35. \term{functions} (\eg non-standard \funref{open} keywords).
  36. \item{\bull}
  37. \term{Implementations} might extend the functionality of certain \term{operators}
  38. by permitting arguments not required by the standard
  39. (\eg a \term{pathname} as an \term{argument} to \funref{string}
  40. or a \term{string} as a second \term{argument} to \term{intern}).
  41. \item{\bull}
  42. \term{Implementations} might extend \funref{format} operations.
  43. \item{\bull}
  44. \term{Implementations} may vary with respect to how they handle aspects of
  45. terminal input/output such as buffering and input editing.
  46. \endlist