#85: Hemlock fails to start
---------------------+------------------------------------------------------
Reporter: rtoy | Owner: rtoy
Type: defect | Status: new
Priority: minor | Milestone:
Component: Hemlock | Version: 2013-06
Keywords: |
---------------------+------------------------------------------------------
On some systems,
{{{
(require :hemlock)
(ed)
}}}
causes an X error. This is due to the fact that Hemlock wants to use
Courier fonts which are not available on the system.
The workaround is to install Courier fonts on the system.
--
Ticket URL: <http://trac.common-lisp.net/cmucl/ticket/85>
cmucl <http://common-lisp.net/project/cmucl>
Cmucl is a high-performance, free Common Lisp implementation.
#84: motifd is a 64-bit app
--------------------+-------------------------------------------------------
Reporter: rtoy | Owner: rtoy
Type: defect | Status: new
Priority: minor | Milestone:
Component: CLM | Version: 2013-06
Keywords: |
--------------------+-------------------------------------------------------
{{{motifd}}} is a 64-bit application, unlike {{{lisp}}} which is a 32-bit
app. This is only a problem if you install on a 32-bit OS where
{{{motifd}}} won't run at all.
But making {{{motifd}}} a 32-bit app may cause problems on a 64-bit OS
where the necessary 32-bit X libraries are not installed.
In addition, I (rtoy) have difficulties building {{{motifd}}} as a 32-bit
app on linux.
--
Ticket URL: <http://trac.common-lisp.net/cmucl/ticket/84>
cmucl <http://common-lisp.net/project/cmucl>
Cmucl is a high-performance, free Common Lisp implementation.
#82: Source location error on large files
--------------------+-------------------------------------------------------
Reporter: rtoy | Owner: somebody
Type: defect | Status: new
Priority: major | Milestone:
Component: Core | Version: 2013-05
Keywords: |
--------------------+-------------------------------------------------------
As noted in the [http://article.gmane.org/gmane.lisp.cmucl.general/6497
email from Matt Kaufmann], there is an error in computing the source
location. The problem was that the file was very large with many long
forms. This caused the form number to overflow the 14-bit number used to
hold the form number.
--
Ticket URL: <http://trac.common-lisp.net/cmucl/ticket/82>
cmucl <http://common-lisp.net/project/cmucl>
Cmucl is a high-performance, free Common Lisp implementation.
#81: Reversing a string is slow
--------------------+-------------------------------------------------------
Reporter: rtoy | Owner: somebody
Type: defect | Status: new
Priority: major | Milestone:
Component: Core | Version: 2013-05
Keywords: |
--------------------+-------------------------------------------------------
Consider this:
{{{
(defparameter *s* (make-string 1000000))
(defun time-rev (s)
(dotimes (k 100 nil)
(declare (fixnum k))
(setf s (reverse s)))
s)
(compile 'time-rev)
(time (prog1 t (time-rev *s*)))
; Evaluation took:
; 10.23 seconds of real time
; 10.151641 seconds of user run time
; 0.079628 seconds of system run time
; 31,310,669,055 CPU cycles
; [Run times include 0.08 seconds GC run time]
; 0 page faults and
; 200,114,224 bytes consed.
}}}
Since strings are basically arrays of unsigned 16-bit integers, compare
the time when reversing an array:
{{{
(defparameter *v* (make-array 1000000 :element-type '(unsigned-byte 16)))
(time (prog1 t (time-rev *v*)))
; Evaluation took:
; 3.62 seconds of real time
; 3.581727 seconds of user run time
; 0.039302 seconds of system run time
; 11,089,005,122 CPU cycles
; [Run times include 0.05 seconds GC run time]
; 0 page faults and
; 200,116,120 bytes consed.
}}}
Reversing a string is 3 times slower. There is some cost since strings
are utf-16 encoded, but we shouldn't be 3 times slower.
--
Ticket URL: <http://trac.common-lisp.net/cmucl/ticket/81>
cmucl <http://common-lisp.net/project/cmucl>
Cmucl is a high-performance, free Common Lisp implementation.
#83: (reverse "") signals an error
--------------------+-------------------------------------------------------
Reporter: rtoy | Owner: somebody
Type: defect | Status: new
Priority: major | Milestone:
Component: Core | Version: 2013-05
Keywords: |
--------------------+-------------------------------------------------------
As noted in [http://article.gmane.org/gmane.lisp.cmucl.general/6497 the
email from Matt Kaufmann], {{{(reverse "")}}} causes an error.
--
Ticket URL: <http://trac.common-lisp.net/cmucl/ticket/83>
cmucl <http://common-lisp.net/project/cmucl>
Cmucl is a high-performance, free Common Lisp implementation.
#80: (format t "~ve" 21 5d-324) generates an error
--------------------+-------------------------------------------------------
Reporter: rtoy | Owner: somebody
Type: defect | Status: new
Priority: major | Milestone:
Component: Core | Version: 2013-03-a
Keywords: |
--------------------+-------------------------------------------------------
{{{
(format t "~ve" 21 5d-324)
}}}
generates an error indexing into {{{*powers-of-ten*}}}. We can increase
the size of {{{*powers-of-ten*}}} a bit, but there will always be cases
where the table is too small. This can happen if {{{21}}} above is
changed to a much larger number.
--
Ticket URL: <http://trac.common-lisp.net/cmucl/ticket/80>
cmucl <http://common-lisp.net/project/cmucl>
Cmucl is a high-performance, free Common Lisp implementation.
#77: Add JOIN-PROCESS
-------------------------+--------------------------------------------------
Reporter: sionescu | Owner: somebody
Type: enhancement | Status: new
Priority: major | Milestone:
Component: Core | Version: 2013-03-a
Keywords: |
-------------------------+--------------------------------------------------
There should be a JOIN-PROCESS function that waits for a process to
complete and returns its return value.
The current implementation in Bordeaux-Threads uses (mp:process-wait "..."
(lambda () (not (mp:process-alive-p process)))), but that doesn't fulfill
the second requirement.
--
Ticket URL: <http://trac.common-lisp.net/cmucl/ticket/77>
cmucl <http://common-lisp.net/project/cmucl>
Cmucl is a high-performance, free Common Lisp implementation.
#75: cl-unicode regression in 2013-03
------------------------+---------------------------------------------------
Reporter: avodonosov | Owner: somebody
Type: defect | Status: new
Priority: major | Milestone:
Component: Core | Version: 2013-03
Keywords: |
------------------------+---------------------------------------------------
I can load library cl-unicode in cmucl-20d, but not in 2013-03 snapshot.
In the example below I use Quicklisp to load the library. To workaround
ASDF upgrade issue between the recent Quicklisp and CMUCL, ASDF is loaded
explicitly before Quicklisp.
{{{
./lisps/cmucl-20d/bin/lisp -noinit -nositeinit -load quicklisp/asdf.lisp
-load ./quicklisp/setup.lisp
(ql:quickload :cl-unicode)
=> OK
}}}
{{{
./lisps/cmucl-2013-03/bin/lisp -noinit -nositeinit -load
quicklisp/asdf.lisp -load ./quicklisp/setup.lisp
(ql:quickload :cl-unicode)
Error in function LISP::ASSERT-ERROR:
Unknown property name "OtherGraphemeExtend".
[Condition of type SIMPLE-ERROR]
Restarts:
0: [CONTINUE ] Retry assertion with new value for DESIGNATOR.
1: Return NIL from load of
#P"/home/testgrid/.cache/common-l isp/cmu-
snapshot-2013-03__20d_unicode_-linux-x86/home/testgrid/quicklisp/dists/q
uicklisp/software/cl-unicode-0.1.4/alias.sse2f".
2: [TRY-RECOMPILING] Recompile alias and try loading it again
3: [RETRY ] .Retry
loading FASL for #<CL-SOURCE-FILE "cl-unicode"
"alias">.
4: [ACCEPT ] Continue, treating
loading FASL for #<CL-SOURCE-FILE "cl-unicode"
"alias">
as having been successful.
5: [ABORT ] Give up on "cl-unicode"
6: Return to Top-Level.
Debug (type H for help)
(LISP::ASSERT-ERROR TEST-FUNCTION
(DESIGNATOR)
"Unknown property name ~S."
"OtherGraphemeExtend")
Source: Error finding source:
Error in function DEBUG::GET-FILE-TOP-LEVEL-FORM: Source file no longer
exists:
target:code/macros.lisp.
0] backtrace 10
0: (LISP::ASSERT-ERROR TEST-FUNCTION
(DESIGNATOR)
"Unknown property name ~S."
"OtherGraphemeExtend")
1: ((LABELS COLLECT-TEST-FUNCTIONS BUILD-DERIVED-TEST-FUNCTION)
("Me" "Mn" "OtherGraphemeExtend"))
2: (BUILD-DERIVED-TEST-FUNCTION ("Me" "Mn" "OtherGraphemeExtend"))
3: (BUILD-DERIVED-TEST-FUNCTIONS)
4: (BUILD-ALL-PROPERTY-TESTS)
5: (C::DO-CALL #<Code Object "Top-Level Form" {5904515F}> 16 17 7 ...)
6: (LISP::FOP-FUNCALL-FOR-EFFECT)
7: (LISP::LOAD-GROUP
#<Stream for file "/home/testgrid/.cache/common-lisp/cmu-snapshot-2013
-03__20d_unicode_-
linux-x86/home/testgrid/quicklisp/dists/quicklisp/software/cl-
unicode-0.1.4/alias.sse2f">)
8: (LISP::FASLOAD
#<Stream for file "/home/testgrid/.cache/common-lisp/cmu-snapshot-2013
-03__20d_unicode_-
linux-x86/home/testgrid/quicklisp/dists/quicklisp/software/cl-
unicode-0.1.4/alias.sse2f">)
9: (LISP::INTERNAL-LOAD
#P"/home/testgrid/.cache/common-lisp/cmu-snapshot-2013
-03__20d_unicode_-
linux-x86/home/testgrid/quicklisp/dists/quicklisp/software/cl-
unicode-0.1.4/alias.sse2f"
#P"/home/testgrid/.cache/common-lisp/cmu-snapshot-2013
-03__20d_unicode_-
linux-x86/home/testgrid/quicklisp/dists/quicklisp/software/cl-
unicode-0.1.4/alias.sse2f"
:ERROR :BINARY
...)
}}}
--
Ticket URL: <http://trac.common-lisp.net/cmucl/ticket/75>
cmucl <http://common-lisp.net/project/cmucl>
Cmucl is a high-performance, free Common Lisp implementation.
#79: File-position at start of file is wrong
--------------------+-------------------------------------------------------
Reporter: rtoy | Owner: somebody
Type: defect | Status: new
Priority: major | Milestone:
Component: Core | Version: 2013-03-a
Keywords: |
--------------------+-------------------------------------------------------
Let {{{foo}}} be an file of latin1 characters. Then
{{{
(with-open-file (s "foo" :external-format :latin1)
(print (file-position s))
(read-char s)
(print (file-position s)))
}}}
prints
{{{
512
513
}}}
This is totally unexpected. I would expect 0 and 1 to be printed.
If {{{foo}}} has utf8 encoding then
{{{
(with-open-file (s "foo" :external-format :utf8)
(print (file-position s))
(read-char s)
(print (file-position s)))
}}}
prints something like
{{{
512
1
}}}
I would expect 0 to be printed instead of 512.
--
Ticket URL: <http://trac.common-lisp.net/cmucl/ticket/79>
cmucl <http://common-lisp.net/project/cmucl>
Cmucl is a high-performance, free Common Lisp implementation.
#78: MP:PROCESS-WAIT should have an efficient way to wait for completion of
another process
----------------------+-----------------------------------------------------
Reporter: sionescu | Owner: somebody
Type: defect | Status: new
Priority: major | Milestone:
Component: Core | Version: 2013-03-a
Keywords: |
----------------------+-----------------------------------------------------
With the addition of a MP:PROCESS-FINISHED-P, the scheduler could avoid
polling in this case:
{{{
(mp:process-wait "..." #'mp:process-finished-p other-process)
}}}
--
Ticket URL: <http://trac.common-lisp.net/cmucl/ticket/78>
cmucl <http://common-lisp.net/project/cmucl>
Cmucl is a high-performance, free Common Lisp implementation.