Compile failure on SBCL 1.0.22

View: New views
4 Messages — Rating Filter:   Alert me  

Compile failure on SBCL 1.0.22

by Keith James :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi,

I'm looking at PowerLoom to provide ontology-based reasoning for my Common
Lisp bioinformatics applications. I'm getting a type error when compiling on
SBCL.

Powerloom 3.2.0

CL-USER> (list (lisp-implementation-version) (machine-type))
("1.0.22" "X86")

In primal.lisp

Cannot set SYMBOL-VALUE of STELLA::*HASH-BYTE-RANDOM-TABLE* to :NULL_VALUE
(not of type SIMPLE-VECTOR.)
   [Condition of type SIMPLE-TYPE-ERROR]

Restarts:
 0: [RETRY] Retry SLIME REPL evaluation request.
 1: [ABORT] Return to SLIME's top level.
 2: [TERMINATE-THREAD] Terminate this thread (#<THREAD "repl-thread" RUNNING
{AB670F9}>)

Backtrace:
  0: (SB-INT:ABOUT-TO-MODIFY-SYMBOL-VALUE
STELLA::*HASH-BYTE-RANDOM-TABLE* "set SYMBOL-VALUE of ~S" :NULL_VALUE)
  1: (SET STELLA::*HASH-BYTE-RANDOM-TABLE* :NULL_VALUE)
  2: (SB-IMPL::%DEFVAR ..)


In literals.lisp

Cannot set SYMBOL-VALUE of STELLA::*CHARACTER-TYPE-TABLE* to :NULL_VALUE (not
of type SIMPLE-VECTOR.)
   [Condition of type SIMPLE-TYPE-ERROR]

Restarts:
 0: [RETRY] Retry SLIME REPL evaluation request.
 1: [ABORT] Return to SLIME's top level.
 2: [TERMINATE-THREAD] Terminate this thread (#<THREAD "repl-thread" RUNNING
{AB670F9}>)

Backtrace:
  0: (SB-INT:ABOUT-TO-MODIFY-SYMBOL-VALUE STELLA::*CHARACTER-TYPE-TABLE* "set
SYMBOL-VALUE of ~S" :NULL_VALUE)
  1: (SET STELLA::*CHARACTER-TYPE-TABLE* :NULL_VALUE)
  2: (SB-IMPL::%DEFVAR ..)


I think this is due to these specials being declaimed to be one type (vectors)
when already NULL. I hacked through these manually to allow compilation to
complete with many type warnings (all involving :NULL_VALUE as far as I can
see). Finally I get the following when

(stella::make-system "powerloom" :common-lisp)

is called, where the reader seems to choke:

Illegal read syntax: `" +---------------------------- BEGIN LICENSE
BLOCK ---------------------------+
 |                                                                            |
 | Version: MPL 1.1/GPL 2.0/LGPL
2.1                                          |
 |                                                                            |
 | The contents of this file are subject to the Mozilla Public
License        |
 | Version 1.1 (the \"License\"); you may not use this file except
in           |
 | compliance with the License. You may obtain a copy of the License
at       |
 |
http://www.mozilla.org/MPL/                                                |
 |                                                                            |
 | Software distributed under the License is distributed on an \"AS IS\"
basis, | ..
   [Condition of type STELLA::READ-EXCEPTION]

Restarts:
 0: [RETRY] Retry SLIME REPL evaluation request.
 1: [ABORT] Return to SLIME's top level.
 2: [TERMINATE-THREAD] Terminate this thread (#<THREAD "repl-thread" RUNNING
{AB670F9}>)

Backtrace:
  0: (STELLA::TOKENIZE-S-EXPRESSION #<unavailable argument> #<unavailable
argument>)
  1: (STELLA::READ-S-EXPRESSION #<unavailable argument>)
  2: ((SB-PCL::FAST-METHOD STELLA::NEXT? (STELLA::S-EXPRESSION-ITERATOR))
#<unavailable argument> #<unavailable argument> #<unavailable argument>)
  3: (STELLA::%LOAD-FILE #<unavailable argument>)
  4: (STELLA::GET-SYSTEM-DEFINITION #<unavailable argument>)
  5: (STELLA::DEFINE-SYSTEM #<unavailable argument> #<unavailable argument>)
  6: (STELLA::EVALUATE-CONS-TREE #<unavailable argument>)
  7: (STELLA::%EVALUATE #<unavailable argument>)
  8: (STELLA::EVALUATE-COMMAND #<unavailable argument> #<unavailable
argument>)
  9: (STELLA::%LOAD-FILE #<unavailable argument>)
 10: (STELLA::GET-SYSTEM-DEFINITION #<unavailable argument>)
 11: (STELLA::%MAKE-SYSTEM #<unavailable argument> #<unavailable argument>
#<unavailable argument>)
 12: (SB-INT:SIMPLE-EVAL-IN-LEXENV
(STELLA::MAKE-SYSTEM "powerloom" :COMMON-LISP) #<NULL-LEXENV>)
 13: (SB-INT:SIMPLE-EVAL-IN-LEXENV (PROGN
(STELLA::MAKE-SYSTEM "powerloom" :COMMON-LISP)) #<NULL-LEXENV>)
 14: (SB-INT:SIMPLE-EVAL-IN-LEXENV (UNLESS (STELLA::SYSTEM-LOADED? "logic")
(STELLA::MAKE-SYSTEM "powerloom" :COMMON-LISP)) #<NULL-LEXENV>)
 15: (SB-FASL::LOAD-AS-SOURCE #<SB-SYS:FD-STREAM
for "file /home/keith/lib/powerloom-3.2.0/load-powerloom.lisp" {AF0B879}> NIL
NIL)
 16: ((FLET SB-FASL::LOAD-STREAM) #<SB-SYS:FD-STREAM
for "file /home/keith/lib/powerloom-3.2.0/load-powerloom.lisp" {AF0B879}>)
 17: (LOAD "/home/keith/lib/powerloom-3.2.0/load-powerloom.lisp")[:EXTERNAL]
 18: (SB-INT:SIMPLE-EVAL-IN-LEXENV
(LOAD "/home/keith/lib/powerloom-3.2.0/load-powerloom.lisp") #<NULL-LEXENV>)
 19: (SWANK::EVAL-REGION "(load
\"/home/keith/lib/powerloom-3.2.0/load-powerloom.lisp\")\n")
 20: ((LAMBDA ()))

--
Keith


_______________________________________________
powerloom-forum mailing list
powerloom-forum@...
http://mailman.isi.edu/mailman/listinfo/powerloom-forum

Re: Compile failure on SBCL 1.0.22

by Thomas Russ :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


On Dec 12, 2008, at 6:54 AM, Keith James wrote:

> Hi,
>
> I'm looking at PowerLoom to provide ontology-based reasoning for my  
> Common
> Lisp bioinformatics applications. I'm getting a type error when  
> compiling on
> SBCL.
>
> Powerloom 3.2.0

You should use the most recent snapshot.  A lot of bug fixes have gone  
in since our last official release.  In particular, there were a  
number of changes to make PowerLoom work with the stricter type  
inference and enforcement of SBCL and CMUCL.

The current snapshot compiles for me with SBCL 1.0.12 (I haven't  
upgraded in a while).

>
>
> CL-USER> (list (lisp-implementation-version) (machine-type))
> ("1.0.22" "X86")
>
> In primal.lisp
>
> Cannot set SYMBOL-VALUE of STELLA::*HASH-BYTE-RANDOM-TABLE*  
> to :NULL_VALUE
> (not of type SIMPLE-VECTOR.)
>   [Condition of type SIMPLE-TYPE-ERROR]
>
> Restarts:
> 0: [RETRY] Retry SLIME REPL evaluation request.
> 1: [ABORT] Return to SLIME's top level.
> 2: [TERMINATE-THREAD] Terminate this thread (#<THREAD "repl-thread"  
> RUNNING
> {AB670F9}>)
>
> Backtrace:
>  0: (SB-INT:ABOUT-TO-MODIFY-SYMBOL-VALUE
> STELLA::*HASH-BYTE-RANDOM-TABLE* "set SYMBOL-VALUE of ~S" :NULL_VALUE)
>  1: (SET STELLA::*HASH-BYTE-RANDOM-TABLE* :NULL_VALUE)
>  2: (SB-IMPL::%DEFVAR ..)
>
>
> In literals.lisp
>
> Cannot set SYMBOL-VALUE of STELLA::*CHARACTER-TYPE-TABLE*  
> to :NULL_VALUE (not
> of type SIMPLE-VECTOR.)
>   [Condition of type SIMPLE-TYPE-ERROR]
>
> Restarts:
> 0: [RETRY] Retry SLIME REPL evaluation request.
> 1: [ABORT] Return to SLIME's top level.
> 2: [TERMINATE-THREAD] Terminate this thread (#<THREAD "repl-thread"  
> RUNNING
> {AB670F9}>)
>
> Backtrace:
>  0: (SB-INT:ABOUT-TO-MODIFY-SYMBOL-VALUE STELLA::*CHARACTER-TYPE-
> TABLE* "set
> SYMBOL-VALUE of ~S" :NULL_VALUE)
>  1: (SET STELLA::*CHARACTER-TYPE-TABLE* :NULL_VALUE)
>  2: (SB-IMPL::%DEFVAR ..)
>
>
> I think this is due to these specials being declaimed to be one type  
> (vectors)
> when already NULL. I hacked through these manually to allow  
> compilation to
> complete with many type warnings (all involving :NULL_VALUE as far  
> as I can
> see). Finally I get the following when
>
> (stella::make-system "powerloom" :common-lisp)
>
> is called, where the reader seems to choke:
>
> Illegal read syntax: `" +---------------------------- BEGIN LICENSE
> BLOCK ---------------------------+
> |
>                                                                             |
> | Version: MPL 1.1/GPL 2.0/LGPL
> 2.1                                          |
> |
>                                                                             |
> | The contents of this file are subject to the Mozilla Public
> License        |
> | Version 1.1 (the \"License\"); you may not use this file except
> in           |
> | compliance with the License. You may obtain a copy of the License
> at       |
> |
> http://www.mozilla.org/ 
> MPL/                                                |
> |
>                                                                             |
> | Software distributed under the License is distributed on an \"AS IS
> \"
> basis, | ..
>   [Condition of type STELLA::READ-EXCEPTION]
>
> Restarts:
> 0: [RETRY] Retry SLIME REPL evaluation request.
> 1: [ABORT] Return to SLIME's top level.
> 2: [TERMINATE-THREAD] Terminate this thread (#<THREAD "repl-thread"  
> RUNNING
> {AB670F9}>)
>
> Backtrace:
>  0: (STELLA::TOKENIZE-S-EXPRESSION #<unavailable argument>  
> #<unavailable
> argument>)
>  1: (STELLA::READ-S-EXPRESSION #<unavailable argument>)
>  2: ((SB-PCL::FAST-METHOD STELLA::NEXT? (STELLA::S-EXPRESSION-
> ITERATOR))
> #<unavailable argument> #<unavailable argument> #<unavailable  
> argument>)
>  3: (STELLA::%LOAD-FILE #<unavailable argument>)
>  4: (STELLA::GET-SYSTEM-DEFINITION #<unavailable argument>)
>  5: (STELLA::DEFINE-SYSTEM #<unavailable argument> #<unavailable  
> argument>)
>  6: (STELLA::EVALUATE-CONS-TREE #<unavailable argument>)
>  7: (STELLA::%EVALUATE #<unavailable argument>)
>  8: (STELLA::EVALUATE-COMMAND #<unavailable argument> #<unavailable
> argument>)
>  9: (STELLA::%LOAD-FILE #<unavailable argument>)
> 10: (STELLA::GET-SYSTEM-DEFINITION #<unavailable argument>)
> 11: (STELLA::%MAKE-SYSTEM #<unavailable argument> #<unavailable  
> argument>
> #<unavailable argument>)
> 12: (SB-INT:SIMPLE-EVAL-IN-LEXENV
> (STELLA::MAKE-SYSTEM "powerloom" :COMMON-LISP) #<NULL-LEXENV>)
> 13: (SB-INT:SIMPLE-EVAL-IN-LEXENV (PROGN
> (STELLA::MAKE-SYSTEM "powerloom" :COMMON-LISP)) #<NULL-LEXENV>)
> 14: (SB-INT:SIMPLE-EVAL-IN-LEXENV (UNLESS (STELLA::SYSTEM-LOADED?  
> "logic")
> (STELLA::MAKE-SYSTEM "powerloom" :COMMON-LISP)) #<NULL-LEXENV>)
> 15: (SB-FASL::LOAD-AS-SOURCE #<SB-SYS:FD-STREAM
> for "file /home/keith/lib/powerloom-3.2.0/load-
> powerloom.lisp" {AF0B879}> NIL
> NIL)
> 16: ((FLET SB-FASL::LOAD-STREAM) #<SB-SYS:FD-STREAM
> for "file /home/keith/lib/powerloom-3.2.0/load-
> powerloom.lisp" {AF0B879}>)
> 17: (LOAD "/home/keith/lib/powerloom-3.2.0/load-powerloom.lisp")
> [:EXTERNAL]
> 18: (SB-INT:SIMPLE-EVAL-IN-LEXENV
> (LOAD "/home/keith/lib/powerloom-3.2.0/load-powerloom.lisp") #<NULL-
> LEXENV>)
> 19: (SWANK::EVAL-REGION "(load
> \"/home/keith/lib/powerloom-3.2.0/load-powerloom.lisp\")\n")
> 20: ((LAMBDA ()))
>
> --
> Keith
>
>
> _______________________________________________
> powerloom-forum mailing list
> powerloom-forum@...
> http://mailman.isi.edu/mailman/listinfo/powerloom-forum

_______________________________________________
powerloom-forum mailing list
powerloom-forum@...
http://mailman.isi.edu/mailman/listinfo/powerloom-forum

Re: Compile failure on SBCL 1.0.22

by Keith James :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Friday 12 December 2008 18:03:52 Thomas Russ wrote:

> You should use the most recent snapshot.  A lot of bug fixes have gone
> in since our last official release.  In particular, there were a
> number of changes to make PowerLoom work with the stricter type
> inference and enforcement of SBCL and CMUCL.
>
> The current snapshot compiles for me with SBCL 1.0.12 (I haven't
> upgraded in a while).
>
> > CL-USER> (list (lisp-implementation-version) (machine-type))
> > ("1.0.22" "X86")

Thanks for the quick reply. I experience the same errors with the 3.2.38
snapshot.

I'm unable to backup to an older SBCL, so I've set
*stella-compiler-optimization* to a higher debug level and rebuilt so that I
can have a look around.

(Incidentally, I get a clean build with CMUCL 19e.)

--
Keith
_______________________________________________
powerloom-forum mailing list
powerloom-forum@...
http://mailman.isi.edu/mailman/listinfo/powerloom-forum

Re: Compile failure on SBCL 1.0.22

by Thomas Russ :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


On Dec 12, 2008, at 12:28 PM, Keith James wrote:

> On Friday 12 December 2008 18:03:52 Thomas Russ wrote:
>> You should use the most recent snapshot.  A lot of bug fixes have  
>> gone
>> in since our last official release.  In particular, there were a
>> number of changes to make PowerLoom work with the stricter type
>> inference and enforcement of SBCL and CMUCL.
>>
>> The current snapshot compiles for me with SBCL 1.0.12 (I haven't
>> upgraded in a while).
>>
>>> CL-USER> (list (lisp-implementation-version) (machine-type))
>>> ("1.0.22" "X86")
>
> Thanks for the quick reply. I experience the same errors with the  
> 3.2.38
> snapshot.
>
> I'm unable to backup to an older SBCL, so I've set
> *stella-compiler-optimization* to a higher debug level and rebuilt  
> so that I
> can have a look around.

OK.  I downloaded the 1.0.22 version of SBCL and ran into the same  
problem.
There seems to be a bug in our translator, in that it isn't producing  
the correct value.

For a quick workaround, locate the following file and make these  
changes:

    native/lisp/stella/primal.lisp

Change

   (CL:DEFVAR *HASH-BYTE-RANDOM-TABLE* :NULL_VALUE
      ...)

  to

   (CL:DEFVAR *HASH-BYTE-RANDOM-TABLE* #()
      ...)


We'll see about getting a corrected version out soon.


> (Incidentally, I get a clean build with CMUCL 19e.)
>
> --
> Keith
> _______________________________________________
> powerloom-forum mailing list
> powerloom-forum@...
> http://mailman.isi.edu/mailman/listinfo/powerloom-forum

_______________________________________________
powerloom-forum mailing list
powerloom-forum@...
http://mailman.isi.edu/mailman/listinfo/powerloom-forum