Skip to content
Snippets Groups Projects
  1. Jul 14, 2008
  2. Jun 27, 2008
  3. Jun 26, 2008
    • rtoy's avatar
      code/rand-mt19937.lisp: · d4cb5a5e
      rtoy authored
      o Recursively call RANDOM for the integer case to let the deftransform
        handle the case.
      
      compiler/float-tran.lisp:
      o Remove comment about modifying RANDOM to match the deftransform.
        We're automatically in sync now.
      d4cb5a5e
  4. Jun 25, 2008
  5. Jun 24, 2008
    • rtoy's avatar
      compiler/float-tran.lisp: · a282fdc9
      rtoy authored
        Fix bug in deftransform where the case for x86 and num-high >
        random-fixnum-max was never used.  We now always use the bignum
        multiply code for all platforms and use that for all cases for which
        the deftransform applies.
      
        Simplify the constant-continuation case too so we don't have to the
        check.  I think the bignum multiply version does not have the bias
        problem that rem has.
      
      code/rand-mt19937.lisp:
        Change the RANDOM function to compute the same value as the
        deftransform would.
      
      general-info/release-19f.txt:
        Update
      
      Make a note that both the function and the deftransform should be
      synchronized to match.  This change also changes the sequence of
      numbers produced.
      a282fdc9
  6. Jun 23, 2008
  7. Jun 20, 2008
    • rtoy's avatar
      Update from Paul: · 44d17370
      rtoy authored
      I've moved some slots out of external-format so they can be shared
      between external-formats that are identical in all but some variables.
      
      Also fixed a bug in octets-to-string that made it return one character
      short, and used char-code-limit instead of #x100 to determine when
      octets-to-char returns a "?", so now it'll work without change on 8 or
      16 bit lisps.
      44d17370
  8. Jun 19, 2008
    • rtoy's avatar
      Cosmetic change to WITH-OPEN-FILE so that the macro argument looks · a8722f10
      rtoy authored
      more like the actual call (var filespec &rest open-args) instead of
      (var &rest open-args).  Fix up the macro documentation too since that
      didn't really match the arguments very well either.
      a8722f10
    • rtoy's avatar
      Make DIRECTORY work faster when there are a large number of files. · a83f8cf0
      rtoy authored
      Basically, don't use delete-duplicates but do it ourselves since the
      list is already sorted.
      
      From Lynn Quam, cmucl-imp, 2008/06/05, slightly modified.
      
      code/filesys.lisp:
      o New DIRECTORY function
      
      general-info/release-19f.txt:
      o Update
      a83f8cf0
    • rtoy's avatar
      Create a new search-list "ext-formats" that is initialized to · 44232c3d
      rtoy authored
      "library:ext-formats/".  This makes it easier to add new directories
      where external formats can be found.  The previous use made it
      difficult because the formats had to be in the subdirectory
      ext-formats.
      
      save.lisp:
      o Create and initialize new search-list.
      
      extfmts.lisp:
      o Use the new search-list instead of "library:ext-formats/".
      44232c3d
    • rtoy's avatar
      New external format stuff from Paul. · 4a665a5f
      rtoy authored
      bootfiles/19e/boot-2008-06-1.lisp:
      o Use this bootfile to compile the change in external-format
        structure.  Just needed to get rid of a restart when compiling pcl.
      
      code/exports.lisp:
      o Renames ENCODE-STRING to STRING-ENCODE.  Similarly for
        DECODE-STRING.
      
      code/extfmts.lisp:
      pcl/simple-streams/impl.lisp:
      pcl/simple-streams/strategy.lisp:
      pcl/simple-streams/external-formats/iso8859-1.lisp:
      pcl/simple-streams/external-formats/utf-8.lisp:
      pcl/simple-streams/external-formats/void.lisp:
      o Updated for new external format.  I think the main change is not
        having to do a funcall for each character.
      
      pcl/simple-streams/external-formats/aliases
      o New file describing different names for external formats.
      
      pcl/simple-streams/external-formats/crlf.lisp:
      o New file for composing external format for CR/LF
      
      pcl/simple-streams/external-formats/utf-16-be.lisp:
      pcl/simple-streams/external-formats/utf-16-le.lisp:
      o New files supporting UTF-16 BE and LE formats.
      
      tools/make-main-dist.sh:
      o Copy over the new files and the aliases file too.
      4a665a5f
  9. Jun 18, 2008
  10. May 23, 2008
  11. Apr 29, 2008
  12. Apr 22, 2008
  13. Apr 15, 2008
  14. Apr 04, 2008
    • rtoy's avatar
      o Pathname printer was producing an error for (MAKE-PATHNAME :HOST NIL · 52d2dc6c
      rtoy authored
        :TYPE "foo").  This is because PATHNAME-HOST was signaling an error
        for a host of NIL.  We check for a host of NIL now, and bypass the
        call to PATHNAME-HOST.  This allows the pathname printer to print
        #P(:HOST NIL :TYPE "foo"), as we want.
      
        (The error comes from host-pathname.  NIL is a valid result of
        host-pathname, so we could change that, but I think that has other
        implications, one of which is (MAKE-PATHNAME :HOST NIL :NAME "foo"
        :TYPE "lisp") gets printed as #P"foo.lisp", which is wrong, since
        that pathname has a unix-host host.)
      
      o Fix merging of version in MAKE-PATHNAME.  CLHS MERGE-PATHNAMES says
        if the pathname name is given, the version is not affected by the
        default pathname.
      52d2dc6c
  15. Apr 03, 2008
  16. Apr 02, 2008
  17. Mar 26, 2008
  18. Mar 13, 2008
    • rtoy's avatar
      Fix off-by-one bug in ~R which prevents printing numbers from 10^63 to · 971d3122
      rtoy authored
      10^66-1.  10^63 is a vigintillion.  (From SBCL).
      971d3122
    • rtoy's avatar
      (format nil "~5f" 1d-10) was printing out way too many zeroes, · a660c8de
      rtoy authored
      exceeding the specified width.  I think the correct answer is
      ".0000".
      
      So, add a parameter, allow-overflow-p, to FLONUM-TO-STRING to allow
      the width constraint to be exceeded.  This defaults to T.
      FLONUM-TO-STRING looks at this and decides whether or not to print out
      all the leading zeroes or not.  In FIXED-FORMAT-AUX, set
      allow-overflow-p to NIL so we don't exceed the width.
      
      I wish there were another way to do this, but I can't think of one
      right now.
      
      All print tests pass, and add the following test:
      
      (format nil "~5F" 1d-10) -> ".0000"
      
      print.lisp:
      o Change FLONUM-TO-STRING to use keyword parameters instead of
        optional parameters.
      o Add :ALLOW-OVERFLOW-P, defaulting to T.
      o Use :ALLOW-OVERFLOW-P to determine if all the leading zeroes should
        be printed or not.
      
      format.lisp:
      o Update calls to FLONUM-TO-STRING to use keywords parameters.
      o In FIXED-FORMAT-AUX, set :ALLOW-OVERFLOW-P to NIL
      a660c8de
  19. Mar 03, 2008
  20. Feb 29, 2008
  21. Feb 27, 2008
    • rtoy's avatar
      Trac ticket #13. · 74f5a075
      rtoy authored
      Basically caused by a change of exponent due rounding of the number
      for printing.  0.999999 might get printed as 1.000.  The original
      number had an exponent of -1, but the printed number has an exponent
      of 0, and we need to account for this.
      
      code/print.lisp:
      o Modify FLONUM-TO-STRING to take into account of the actual and
        printed exponent of the number.  Return an extra value to indicate
        if rounding has the exponent to change.
      
      code/format.lisp:
      o Use the new return value from FLONUM-TO-STRING to tell us if we need
        to adjust the printed exponent to account for the rounding change.
      
      All print tests still pass, and we add the following tests:
      
      (assert (string= (format nil "~11,3,2,0,'*,,'EE" .99) "  0.990E+00"))
      (assert (string= (format nil "~11,3,2,0,'*,,'EE" .999) "  0.999E+00"))
      (assert (string= (format nil "~11,3,2,0,'*,,'EE" .9999) "  0.100E+01"))
      (assert (string= (format nil "~11,3,2,0,'*,,'EE" .0000999) "  0.999E-04"))
      (assert (string= (format nil "~11,3,2,0,'*,,'EE" .00009999) "  0.100E-03"))
      (assert (string= (format nil "~11,3,2,,'*,,'EE" .00009999) "  9.999E-05"))
      (assert (string= (format nil "~11,3,2,,'*,,'EE" .000099999) "  1.000E-04"))
      74f5a075
  22. Feb 13, 2008
  23. Feb 08, 2008
    • rtoy's avatar
      Need to export the following so cross-compiles work better: · 227d9627
      rtoy authored
      UNIX-SYSINFO SI-SYSNAME SI-HOSTNAME SI-RELEASE SI-VERSION SI-MACHINE
      SI-ARCHITECTURE SI-HW-SERIAL SI-HW-PROVIDER SI-SRPC-DOMAIN SI-PLATFORM
      SI-ISALIST SI-DHCP-CACHE
      
      Actually only UNIX-SYSINFO, SI-MACHINE, and SI-PLATFORM are needed
      (sparc-svr4-vm.lisp) but let's export them all since they're in
      exports.lisp.
      227d9627
  24. Feb 01, 2008
  25. Jan 31, 2008
    • rtoy's avatar
      Correct some comments. · b2a4d85d
      rtoy authored
      b2a4d85d
    • rtoy's avatar
      Revise again. Don't limit the fraction digits. Just print out · 3c160594
      rtoy authored
      whatever dd says.  This allows ~G to match what Fortran does, and also
      defers to ~F to let it decide what to do.
      
      The following tests now fail:
      
      (assert (string= (format nil "~9,5G" pi) "3.142    "))
      (assert (string= (format nil "~12,,,,'%g" 1.2345678d1) "12.34568 "))
      
      The former should be
      (assert (string= (format nil "~9,5G" pi) "3.1416    "))
      
      and the latter should be removed or changed to
      
      (assert (string= (format nil "~12,,,,'%g" 1.2345678d1) "%%%%%%%%%%%%"))
      3c160594
  26. Jan 30, 2008
  27. Jan 29, 2008
Loading