matlisp/debian/cmucl-problem

Pontus Svenson <[email protected]>
Newsgroups gmane.lisp.matlisp.user
Message-ID <[email protected]>
I have a problem compiling matlisp for cmucl on a machine running 
Debian. I can't
get any functions in matlisp to work, even though I can define matrices, ie:

**************************************************************
* (setf a [1 2])
Warning:  Declaring A special.
 
#<MATLISP:REAL-MATRIX  1 x 2
    1.0000      2.0000     >
* (m+ a a)
 
Warning: This function is undefined:
  M+
 
Error in KERNEL:%COERCE-TO-FUNCTION:  the function M+ is undefined.
 
Restarts:
  0: [ABORT] Return to Top-Level.
 
Debug  (type H for help)
 
(KERNEL:%COERCE-TO-FUNCTION M+)
Source:
; File: target:code/fdefinition.lisp
 
; File has been modified since compilation:
;   target:code/fdefinition.lisp
; Using form offset instead of character position.
(ERROR 'UNDEFINED-FUNCTION :NAME NAME)
0]

**************************************************************

This seems to be very similar to a problem discussed here before, where 
the solution
was to manually edit the f77-mangling.lisp file. The same solution 
doesn't work
in my case, however -- doing so and make'ing gives me this error:


**************************************************************

;; Loading #p"/home/ponsve/linux_matlisp/config.lisp".
 
File: /home/ponsve/linux_matlisp/src/f77-mangling.lisp
 
In: DEFUN MAKE-FORTRAN-NAME
  (IF +F77-UNDERSCORE+ "" "")
==>
  ""
Note: Deleting unreachable code.
 
  (IF +F77-LOWER-CASE+ (STRING-DOWNCASE NAME) NAME)
==>
  NAME
Note: Deleting unreachable code.
 
 
Compilation unit finished.
  2 notes
 
 
 
Error in function COMMON-LISP::FOREIGN-SYMBOL-ADDRESS-AUX:
   Unknown foreign symbol: "daxpy"
 
Restarts:
  0: [CONTINUE] Return NIL from load of 
"/home/ponsve/linux_matlisp/bin/blas.x86f".
  1:            Return NIL from load of "start.lisp".
  2: [ABORT   ] Skip remaining initializations.
 
Debug  (type H for help)
 
(COMMON-LISP::FOREIGN-SYMBOL-ADDRESS-AUX "daxpy")
Source:
; File: target:code/x86-vm.lisp
 
; File has been modified since compilation:
;   target:code/x86-vm.lisp
; Using form offset instead of character position.
(ERROR "Unknown foreign symbol: ~S" NAME)
0]


**************************************************************

I'm using the CVS-version of matlisp and gcc-3.0.

What I do is:

beo201 17:41:34 ~/linux_matlisp/>export 
LDFLAGS=-L/usr/lib/gcc-lib/i386-linux/3.0.4
beo201 17:41:41 ~/linux_matlisp/>export CC=/usr/bin/gcc-3.0
beo201 17:41:41 ~/linux_matlisp/>export F77=/usr/bin/g77-3.0
beo201 17:41:42 ~/linux_matlisp/>./configure --with-lisp=cmucl 
--with-lisp-exec=lisp --prefix=`pwd`
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking target system type... i686-pc-linux-gnu
checking for ranlib... ranlib
checking for gcc... /usr/bin/gcc-3.0
checking for C compiler default output... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for executable suffix...
checking for object suffix... o
checking whether we are using the GNU C compiler... yes
checking whether /usr/bin/gcc-3.0 accepts -g... yes
checking whether /usr/bin/gcc-3.0 and cc understand -c and -o 
together... yes
checking whether we are using the GNU Fortran 77 compiler... yes
checking whether /usr/bin/g77-3.0 accepts -g... yes
checking whether /usr/bin/g77-3.0 understand -c and -o together... yes
checking whether we are using the GNU Fortran 77 compiler... (cached) yes
checking whether /usr/bin/g77-3.0 accepts -g... (cached) yes
checking how to get verbose linking output from /usr/bin/g77-3.0... -v
checking for Fortran 77 libraries...  
-L/usr/lib/gcc-lib/i386-linux/3.0.4 
-L/usr/lib/gcc-lib/i386-linux/3.0.4/../../.. -lg2c -lm
checking for Fortran 77 name-mangling scheme... lower case, underscore, 
extra underscore
configure: creating ./config.status
config.status: creating matlisp.mk
config.status: creating lib/lazy-loader.lisp
config.status: creating src/f77-mangling.lisp


**************************************************************

Trying to make with the standard f77-mangling.lisp gives this output:

**************************************************************

beo201 18:03:09 ~/linux_matlisp/>make
make -f matlisp.mk
make[1]: Entering directory `/home/ponsve/linux_matlisp'
               
                [removed output of compilation and linking -- no error 
messages here]

lisp -noinit -eval '(progn (load "start.lisp"))'
; Loading #p"/home/ponsve/linux_matlisp/start.lisp".
Converted SETLOGICALROOT.
Converted GETLOGICALROOT.
Converted DEFLOGICALPATH.
;; Loading #p"/home/ponsve/linux_matlisp/system.dcl".
;; Loading #p"/home/ponsve/linux_matlisp/config.lisp".

File: /home/ponsve/linux_matlisp/src/f77-mangling.lisp

In: DEFUN MAKE-FORTRAN-NAME
  (IF +F77-UNDERSCORE+ "_" "")
==>
  ""
Note: Deleting unreachable code.

  (IF +F77-LOWER-CASE+ (STRING-DOWNCASE NAME) NAME)
==>
  NAME
Note: Deleting unreachable code.


Compilation unit finished.
  2 notes


File: /home/ponsve/linux_matlisp/src/matrix.lisp

In: DEFMETHOD FILL-MATRIX (COMPLEX-MATRIX NUMBER)
  (COPY! FILL MATRIX)
Warning: Undefined function: COPY!


In: DEFMETHOD FILL-MATRIX (REAL-MATRIX REAL)
  (COPY! FILL MATRIX)
Warning: Undefined function: COPY!


Warning: This function is undefined:
  COPY!


Compilation unit finished.
  3 warnings


File: /home/ponsve/linux_matlisp/src/ref.lisp

In: DEFUN GET-REAL-MATRIX-SLICE-1D
  (MAKE-INSTANCE 'REAL-MATRIX :NROWS (IF (> N 1) K 1) :NCOLS ...)
--> FUNCALL C::%FUNCALL IF
==>
  (KERNEL:%COERCE-TO-FUNCTION FUNCTION)
Note: Unable to optimize because:
      Might be a symbol, so must call FDEFINITION at runtime.

  (FLOOR VAL)
--> FLOOR MULTIPLE-VALUE-BIND MULTIPLE-VALUE-CALL TRUNCATE LET
==>
  (KERNEL:%UNARY-TRUNCATE (/ C::X C::Y))
Note: Forced to do full call.
      Unable to do inline float truncate (cost 5) because:
      The result is a INTEGER, not a (SIGNED-BYTE 32).
      Unable to do inline float truncate (cost 5) because:
      The result is a INTEGER, not a (UNSIGNED-BYTE 32).

--> FLOOR MULTIPLE-VALUE-BIND MULTIPLE-VALUE-CALL TRUNCATE LET VALUES - 
- FLOAT
==>
  (KERNEL:%DOUBLE-FLOAT C::N)
Note: Forced to do full call.
      Unable to do inline float coercion (cost 5) because:
      The first argument is a INTEGER, not a (SIGNED-BYTE 32).
      Unable to do inline float coercion (cost 6) because:
      The first argument is a INTEGER, not a (UNSIGNED-BYTE 32).

--> FLOOR MULTIPLE-VALUE-BIND MULTIPLE-VALUE-CALL FUNCTION IF VALUES 1-
==>
  (- C::TRU 1)
Note: Forced to do GENERIC-- (cost 10).
      Unable to do inline fixnum arithmetic (cost 1) because:
      The first argument is a INTEGER, not a FIXNUM.
      The result is a INTEGER, not a FIXNUM.
      Unable to do inline fixnum arithmetic (cost 2) because:
      The first argument is a INTEGER, not a FIXNUM.
      The result is a INTEGER, not a FIXNUM.
      etc.

--> FLOOR MULTIPLE-VALUE-BIND MULTIPLE-VALUE-CALL TRUNCATE LET
==>
  (KERNEL:%UNARY-TRUNCATE (/ C::X C::Y))
Note: Doing float to pointer coercion (cost 13).


In: DEFUN GET-REAL-MATRIX-SLICE-1D-SEQ
  (LENGTH IDX)
Note: Unable to optimize due to type uncertainty:
      The first argument is a (OR VECTOR CONS NULL), not a (SIMPLE-ARRAY 
* (*)).
Note: Unable to optimize due to type uncertainty:
      The first argument is a (OR VECTOR CONS NULL), not a VECTOR.

  (MAKE-INSTANCE 'REAL-MATRIX :NROWS (IF (> N 1) K 1) :NCOLS ...)
--> FUNCALL C::%FUNCALL IF
==>
  (KERNEL:%COERCE-TO-FUNCTION FUNCTION)
Note: Unable to optimize because:
      Might be a symbol, so must call FDEFINITION at runtime.


In: DEFUN %MATRIX-EVERY
  (FORTRAN-MATRIX-INDEXING I J N)
--> BLOCK +
==>
  (* COL NROWS)
Note: Unable to recode as shift and add due to type uncertainty:
      The result is a (MOD 288230374541099011), not a (UNSIGNED-BYTE 32).

  (FUNCALL FN IDX)
--> C::%FUNCALL IF
==>
  (KERNEL:%COERCE-TO-FUNCTION FUNCTION)
Note: Unable to optimize because:
      Might be a symbol, so must call FDEFINITION at runtime.

  (FORTRAN-MATRIX-INDEXING I J N)
--> BLOCK +
==>
  (* COL NROWS)
Note: Forced to do GENERIC-* (cost 30).
      Unable to do inline fixnum arithmetic (cost 4) because:
      The result is a (MOD 288230374541099011), not a FIXNUM.
      Unable to do inline (signed-byte 32) arithmetic (cost 5) because:
      The result is a (MOD 288230374541099011), not a (SIGNED-BYTE 32).
      etc.

--> BLOCK
==>
  (+ ROW (* COL NROWS))
Note: Forced to do GENERIC-+ (cost 10).
      Unable to do inline fixnum arithmetic (cost 2) because:
      The second argument is a (MOD 288230374541099011), not a FIXNUM.
      Unable to do inline (signed-byte 32) arithmetic (cost 5) because:
      The second argument is a (MOD 288230374541099011), not a 
(SIGNED-BYTE 32).
      etc.

  (FLOOR VAL)
--> FLOOR MULTIPLE-VALUE-BIND MULTIPLE-VALUE-CALL TRUNCATE LET
==>
  (KERNEL:%UNARY-TRUNCATE (/ C::X C::Y))
Note: Forced to do full call.
      Unable to do inline float truncate (cost 5) because:
      The result is a INTEGER, not a (SIGNED-BYTE 32).
      Unable to do inline float truncate (cost 5) because:
      The result is a INTEGER, not a (UNSIGNED-BYTE 32).

--> FLOOR MULTIPLE-VALUE-BIND MULTIPLE-VALUE-CALL TRUNCATE LET VALUES - 
- FLOAT
==>
  (KERNEL:%DOUBLE-FLOAT C::N)
Note: Forced to do full call.
      Unable to do inline float coercion (cost 5) because:
      The first argument is a INTEGER, not a (SIGNED-BYTE 32).
      Unable to do inline float coercion (cost 6) because:
      The first argument is a INTEGER, not a (UNSIGNED-BYTE 32).

--> FLOOR MULTIPLE-VALUE-BIND MULTIPLE-VALUE-CALL FUNCTION IF VALUES 1-
==>
  (- C::TRU 1)
Note: Forced to do GENERIC-- (cost 10).
      Unable to do inline fixnum arithmetic (cost 1) because:
      The first argument is a INTEGER, not a FIXNUM.
      The result is a INTEGER, not a FIXNUM.
      Unable to do inline fixnum arithmetic (cost 2) because:
      The first argument is a INTEGER, not a FIXNUM.
      The result is a INTEGER, not a FIXNUM.
      etc.

--> FLOOR MULTIPLE-VALUE-BIND MULTIPLE-VALUE-CALL TRUNCATE LET
==>
  (KERNEL:%UNARY-TRUNCATE (/ C::X C::Y))
Note: Doing float to pointer coercion (cost 13).


In: DEFUN SET-REAL-MATRIX-SLICE-1D
  (FLOOR VAL)
--> FLOOR MULTIPLE-VALUE-BIND MULTIPLE-VALUE-CALL TRUNCATE LET
==>
  (KERNEL:%UNARY-TRUNCATE (/ C::X C::Y))
Note: Forced to do full call.
      Unable to do inline float truncate (cost 5) because:
      The result is a INTEGER, not a (SIGNED-BYTE 32).
      Unable to do inline float truncate (cost 5) because:
      The result is a INTEGER, not a (UNSIGNED-BYTE 32).

--> FLOOR MULTIPLE-VALUE-BIND MULTIPLE-VALUE-CALL TRUNCATE LET VALUES - 
- FLOAT
==>
  (KERNEL:%DOUBLE-FLOAT C::N)
Note: Forced to do full call.
      Unable to do inline float coercion (cost 5) because:
      The first argument is a INTEGER, not a (SIGNED-BYTE 32).
      Unable to do inline float coercion (cost 6) because:
      The first argument is a INTEGER, not a (UNSIGNED-BYTE 32).

--> FLOOR MULTIPLE-VALUE-BIND MULTIPLE-VALUE-CALL FUNCTION IF VALUES 1-
==>
  (- C::TRU 1)
Note: Forced to do GENERIC-- (cost 10).
      Unable to do inline fixnum arithmetic (cost 1) because:
      The first argument is a INTEGER, not a FIXNUM.
      The result is a INTEGER, not a FIXNUM.
      Unable to do inline fixnum arithmetic (cost 2) because:
      The first argument is a INTEGER, not a FIXNUM.
      The result is a INTEGER, not a FIXNUM.
      etc.

--> FLOOR MULTIPLE-VALUE-BIND MULTIPLE-VALUE-CALL TRUNCATE LET
==>
  (KERNEL:%UNARY-TRUNCATE (/ C::X C::Y))
Note: Doing float to pointer coercion (cost 13).


In: DEFUN SET-REAL-FROM-SCALAR-MATRIX-SLICE-1D
  (FLOOR VAL)
--> FLOOR MULTIPLE-VALUE-BIND MULTIPLE-VALUE-CALL TRUNCATE LET
==>
  (KERNEL:%UNARY-TRUNCATE (/ C::X C::Y))
Note: Forced to do full call.
      Unable to do inline float truncate (cost 5) because:
      The result is a INTEGER, not a (SIGNED-BYTE 32).
      Unable to do inline float truncate (cost 5) because:
      The result is a INTEGER, not a (UNSIGNED-BYTE 32).

--> FLOOR MULTIPLE-VALUE-BIND MULTIPLE-VALUE-CALL TRUNCATE LET VALUES - 
- FLOAT
==>
  (KERNEL:%DOUBLE-FLOAT C::N)
Note: Forced to do full call.
      Unable to do inline float coercion (cost 5) because:
      The first argument is a INTEGER, not a (SIGNED-BYTE 32).
      Unable to do inline float coercion (cost 6) because:
      The first argument is a INTEGER, not a (UNSIGNED-BYTE 32).

--> FLOOR MULTIPLE-VALUE-BIND MULTIPLE-VALUE-CALL FUNCTION IF VALUES 1-
==>
  (- C::TRU 1)
Note: Forced to do GENERIC-- (cost 10).
      Unable to do inline fixnum arithmetic (cost 1) because:
      The first argument is a INTEGER, not a FIXNUM.
      The result is a INTEGER, not a FIXNUM.
      Unable to do inline fixnum arithmetic (cost 2) because:
      The first argument is a INTEGER, not a FIXNUM.
      The result is a INTEGER, not a FIXNUM.
      etc.

--> FLOOR MULTIPLE-VALUE-BIND MULTIPLE-VALUE-CALL TRUNCATE LET
==>
  (KERNEL:%UNARY-TRUNCATE (/ C::X C::Y))
Note: Doing float to pointer coercion (cost 13).


In: DEFUN GET-COMPLEX-MATRIX-SLICE-1D
  (MAKE-INSTANCE 'COMPLEX-MATRIX :NROWS (IF (> N 1) K 1) :NCOLS ...)
--> FUNCALL C::%FUNCALL IF
==>
  (KERNEL:%COERCE-TO-FUNCTION FUNCTION)
Note: Unable to optimize because:
      Might be a symbol, so must call FDEFINITION at runtime.

  (FLOOR VAL)
--> FLOOR MULTIPLE-VALUE-BIND MULTIPLE-VALUE-CALL TRUNCATE LET
==>
  (KERNEL:%UNARY-TRUNCATE (/ C::X C::Y))
Note: Forced to do full call.
      Unable to do inline float truncate (cost 5) because:
      The result is a INTEGER, not a (SIGNED-BYTE 32).
      Unable to do inline float truncate (cost 5) because:
      The result is a INTEGER, not a (UNSIGNED-BYTE 32).

--> FLOOR MULTIPLE-VALUE-BIND MULTIPLE-VALUE-CALL TRUNCATE LET VALUES - 
- FLOAT
==>
  (KERNEL:%DOUBLE-FLOAT C::N)
Note: Forced to do full call.
      Unable to do inline float coercion (cost 5) because:
      The first argument is a INTEGER, not a (SIGNED-BYTE 32).
      Unable to do inline float coercion (cost 6) because:
      The first argument is a INTEGER, not a (UNSIGNED-BYTE 32).

--> FLOOR MULTIPLE-VALUE-BIND MULTIPLE-VALUE-CALL FUNCTION IF VALUES 1-
==>
  (- C::TRU 1)
Note: Forced to do GENERIC-- (cost 10).
      Unable to do inline fixnum arithmetic (cost 1) because:
      The first argument is a INTEGER, not a FIXNUM.
      The result is a INTEGER, not a FIXNUM.
      Unable to do inline fixnum arithmetic (cost 2) because:
      The first argument is a INTEGER, not a FIXNUM.
      The result is a INTEGER, not a FIXNUM.
      etc.

--> FLOOR MULTIPLE-VALUE-BIND MULTIPLE-VALUE-CALL TRUNCATE LET
==>
  (KERNEL:%UNARY-TRUNCATE (/ C::X C::Y))
Note: Doing float to pointer coercion (cost 13).


In: DEFUN GET-COMPLEX-MATRIX-SLICE-1D-SEQ
  (LENGTH IDX)
Note: Unable to optimize due to type uncertainty:
      The first argument is a (OR VECTOR CONS NULL), not a (SIMPLE-ARRAY 
* (*)).
Note: Unable to optimize due to type uncertainty:
      The first argument is a (OR VECTOR CONS NULL), not a VECTOR.

  (MAKE-INSTANCE 'COMPLEX-MATRIX :NROWS (IF (> N 1) K 1) :NCOLS ...)
--> FUNCALL C::%FUNCALL IF
==>
  (KERNEL:%COERCE-TO-FUNCTION FUNCTION)
Note: Unable to optimize because:
      Might be a symbol, so must call FDEFINITION at runtime.


In: DEFUN SET-COMPLEX-FROM-COMPLEX-MATRIX-SLICE-1D
  (FLOOR VAL)
--> FLOOR MULTIPLE-VALUE-BIND MULTIPLE-VALUE-CALL TRUNCATE LET
==>
  (KERNEL:%UNARY-TRUNCATE (/ C::X C::Y))
Note: Forced to do full call.
      Unable to do inline float truncate (cost 5) because:
      The result is a INTEGER, not a (SIGNED-BYTE 32).
      Unable to do inline float truncate (cost 5) because:
      The result is a INTEGER, not a (UNSIGNED-BYTE 32).

--> FLOOR MULTIPLE-VALUE-BIND MULTIPLE-VALUE-CALL TRUNCATE LET VALUES - 
- FLOAT
==>
  (KERNEL:%DOUBLE-FLOAT C::N)
Note: Forced to do full call.
      Unable to do inline float coercion (cost 5) because:
      The first argument is a INTEGER, not a (SIGNED-BYTE 32).
      Unable to do inline float coercion (cost 6) because:
      The first argument is a INTEGER, not a (UNSIGNED-BYTE 32).

--> FLOOR MULTIPLE-VALUE-BIND MULTIPLE-VALUE-CALL FUNCTION IF VALUES 1-
==>
  (- C::TRU 1)
Note: Forced to do GENERIC-- (cost 10).
      Unable to do inline fixnum arithmetic (cost 1) because:
      The first argument is a INTEGER, not a FIXNUM.
      The result is a INTEGER, not a FIXNUM.
      Unable to do inline fixnum arithmetic (cost 2) because:
      The first argument is a INTEGER, not a FIXNUM.
      The result is a INTEGER, not a FIXNUM.
      etc.

--> FLOOR MULTIPLE-VALUE-BIND MULTIPLE-VALUE-CALL TRUNCATE LET
==>
  (KERNEL:%UNARY-TRUNCATE (/ C::X C::Y))
Note: Doing float to pointer coercion (cost 13).


In: DEFUN SET-COMPLEX-FROM-REAL-MATRIX-SLICE-1D
  (FLOOR VAL)
--> FLOOR MULTIPLE-VALUE-BIND MULTIPLE-VALUE-CALL TRUNCATE LET
==>
  (KERNEL:%UNARY-TRUNCATE (/ C::X C::Y))
Note: Forced to do full call.
      Unable to do inline float truncate (cost 5) because:
      The result is a INTEGER, not a (SIGNED-BYTE 32).
      Unable to do inline float truncate (cost 5) because:
      The result is a INTEGER, not a (UNSIGNED-BYTE 32).

--> FLOOR MULTIPLE-VALUE-BIND MULTIPLE-VALUE-CALL TRUNCATE LET VALUES - 
- FLOAT
==>
  (KERNEL:%DOUBLE-FLOAT C::N)
Note: Forced to do full call.
      Unable to do inline float coercion (cost 5) because:
      The first argument is a INTEGER, not a (SIGNED-BYTE 32).
      Unable to do inline float coercion (cost 6) because:
      The first argument is a INTEGER, not a (UNSIGNED-BYTE 32).

--> FLOOR MULTIPLE-VALUE-BIND MULTIPLE-VALUE-CALL FUNCTION IF VALUES 1-
==>
  (- C::TRU 1)
Note: Forced to do GENERIC-- (cost 10).
      Unable to do inline fixnum arithmetic (cost 1) because:
      The first argument is a INTEGER, not a FIXNUM.
      The result is a INTEGER, not a FIXNUM.
      Unable to do inline fixnum arithmetic (cost 2) because:
      The first argument is a INTEGER, not a FIXNUM.
      The result is a INTEGER, not a FIXNUM.
      etc.

--> FLOOR MULTIPLE-VALUE-BIND MULTIPLE-VALUE-CALL TRUNCATE LET
==>
  (KERNEL:%UNARY-TRUNCATE (/ C::X C::Y))
Note: Doing float to pointer coercion (cost 13).


In: DEFUN SET-COMPLEX-FROM-SCALAR-MATRIX-SLICE-1D
  (REALPART NEW)
Note: Unable to optimize due to type uncertainty:
      The first argument is a NUMBER, not a (COMPLEX RATIONAL).

  (IMAGPART NEW)
Note: Unable to optimize due to type uncertainty:
      The first argument is a NUMBER, not a (COMPLEX RATIONAL).

  (FLOOR VAL)
--> FLOOR MULTIPLE-VALUE-BIND MULTIPLE-VALUE-CALL TRUNCATE LET
==>
  (KERNEL:%UNARY-TRUNCATE (/ C::X C::Y))
Note: Forced to do full call.
      Unable to do inline float truncate (cost 5) because:
      The result is a INTEGER, not a (SIGNED-BYTE 32).
      Unable to do inline float truncate (cost 5) because:
      The result is a INTEGER, not a (UNSIGNED-BYTE 32).

--> FLOOR MULTIPLE-VALUE-BIND MULTIPLE-VALUE-CALL TRUNCATE LET VALUES - 
- FLOAT
==>
  (KERNEL:%DOUBLE-FLOAT C::N)
Note: Forced to do full call.
      Unable to do inline float coercion (cost 5) because:
      The first argument is a INTEGER, not a (SIGNED-BYTE 32).
      Unable to do inline float coercion (cost 6) because:
      The first argument is a INTEGER, not a (UNSIGNED-BYTE 32).

--> FLOOR MULTIPLE-VALUE-BIND MULTIPLE-VALUE-CALL FUNCTION IF VALUES 1-
==>
  (- C::TRU 1)
Note: Forced to do GENERIC-- (cost 10).
      Unable to do inline fixnum arithmetic (cost 1) because:
      The first argument is a INTEGER, not a FIXNUM.
      The result is a INTEGER, not a FIXNUM.
      Unable to do inline fixnum arithmetic (cost 2) because:
      The first argument is a INTEGER, not a FIXNUM.
      The result is a INTEGER, not a FIXNUM.
      etc.

  (REALPART NEW)
Note: Forced to do full call.
      Unable to do complex float realpart (cost 3) because:
      The first argument is a NUMBER, not a (COMPLEX DOUBLE-FLOAT).

  (IMAGPART NEW)
Note: Forced to do full call.
      Unable to do complex float imagpart (cost 3) because:
      The first argument is a NUMBER, not a (COMPLEX DOUBLE-FLOAT).

  (FLOOR VAL)
--> FLOOR MULTIPLE-VALUE-BIND MULTIPLE-VALUE-CALL TRUNCATE LET
==>
  (KERNEL:%UNARY-TRUNCATE (/ C::X C::Y))
Note: Doing float to pointer coercion (cost 13).


In: DEFUN SET-COMPLEX-FROM-SCALAR-MATRIX-SLICE-1D-SEQ
  (REALPART NEW)
Note: Unable to optimize due to type uncertainty:
      The first argument is a NUMBER, not a (COMPLEX RATIONAL).

  (IMAGPART NEW)
Note: Unable to optimize due to type uncertainty:
      The first argument is a NUMBER, not a (COMPLEX RATIONAL).

  (REALPART NEW)
Note: Forced to do full call.
      Unable to do complex float realpart (cost 3) because:
      The first argument is a NUMBER, not a (COMPLEX DOUBLE-FLOAT).

  (IMAGPART NEW)
Note: Forced to do full call.
      Unable to do complex float imagpart (cost 3) because:
      The first argument is a NUMBER, not a (COMPLEX DOUBLE-FLOAT).


Compilation unit finished.
  52 notes


File: /home/ponsve/linux_matlisp/src/geev.lisp

In: DEFMETHOD GEEV (COMPLEX-MATRIX)
  (DIAG W)
Warning: Undefined function: DIAG


Warning: This function is undefined:
  DIAG


Compilation unit finished.
  2 warnings


File: /home/ponsve/linux_matlisp/src/compat.lisp

In: DEFUN JOIN-MATRIX
  #'JOIN
Warning: Undefined function: JOIN


Warning: This function is undefined:
  JOIN


Compilation unit finished.
  2 warnings


File: /home/ponsve/linux_matlisp/lib-src/macros.l

In: DEFUN DSIN
  (SIN X)
Note: Unable to avoid inline argument range check
because the argument range (DOUBLE-FLOAT) was not within 2^64


In: DEFUN DCOS
  (COS X)
Note: Unable to avoid inline argument range check
because the argument range (DOUBLE-FLOAT) was not within 2^64


In: DEFUN DTAN
  (TAN X)
Note: Unable to avoid inline argument range check
because the argument range (DOUBLE-FLOAT) was not within 2^64


In: DEFUN PROCESS-IMPLIED-DO
  (POSITION '= IMPLIED-DO)
--> DO BLOCK LET TAGBODY RETURN-FROM
==>
  (PROGN NIL)
Warning: This is not a (VALUES &OPTIONAL NUMBER &REST T):
  NIL
[Last message occurs 2 times]


Compilation unit finished.
  2 warnings
  3 notes


File: /home/ponsve/linux_matlisp/src/quadpack.lisp

In: DEFUN INTEGRATE-QAG
  (DQAG F (FLOAT A 1.0d0) (FLOAT B 1.0d0) (FLOAT EPSABS 1.0d0) ...)
Warning: Undefined function: DQAG


In: DEFUN INTEGRATE-QAGI
  (DQAGI F (FLOAT BOUND 1.0d0) INF (FLOAT EPSABS 1.0d0) ...)
Warning: Undefined function: DQAGI


In: DEFUN INTEGRATE-QAGS
  (DQAGS F (FLOAT A 1.0d0) (FLOAT B 1.0d0) (FLOAT EPSABS 1.0d0) ...)
Warning: Undefined function: DQAGS


In: DEFUN INTEGRATE-QAWC
  (DQAWC F (FLOAT A 1.0d0) (FLOAT B 1.0d0) (FLOAT C 1.0d0) ...)
Warning: Undefined function: DQAWC


In: DEFUN INTEGRATE-QAWS
  (DQAWS F (FLOAT A 1.0d0) (FLOAT B 1.0d0) (FLOAT ALFA 1.0d0) ...)
Warning: Undefined function: DQAWS


In: DEFUN INTEGRATE-QNG
  (DQNG F (FLOAT A 1.0d0) (FLOAT B 1.0d0) (FLOAT EPSABS 1.0d0) ...)
Warning: Undefined function: DQNG


Warning: These functions are undefined:
  DQAG DQAGI DQAGS DQAWC DQAWS DQNG


Compilation unit finished.
  7 warnings


File: /home/ponsve/linux_matlisp/lib-src/quadpack/dqwgtf.lisp

In: DEFUN DQWGTF
  (DCOS OMX)
--> BLOCK
==>
  (COS FORTRAN-TO-LISP::X)
Note: Unable to avoid inline argument range check
because the argument range (DOUBLE-FLOAT) was not within 2^64

  (DSIN OMX)
--> BLOCK
==>
  (SIN FORTRAN-TO-LISP::X)
Note: Unable to avoid inline argument range check
because the argument range (DOUBLE-FLOAT) was not within 2^64


Compilation unit finished.
  2 notes


File: /home/ponsve/linux_matlisp/lib-src/quadpack/dqc25f.lisp

In: DEFUN DQC25F
  (DSIN PARINT)
--> BLOCK
==>
  (SIN FORTRAN-TO-LISP::X)
Note: Unable to avoid inline argument range check
because the argument range (DOUBLE-FLOAT) was not within 2^64

  (DCOS PARINT)
--> BLOCK
==>
  (COS FORTRAN-TO-LISP::X)
Note: Unable to avoid inline argument range check
because the argument range (DOUBLE-FLOAT) was not within 2^64

  (DCOS (* CENTR OMEGA))
--> BLOCK
==>
  (COS FORTRAN-TO-LISP::X)
Note: Unable to avoid inline argument range check
because the argument range (DOUBLE-FLOAT) was not within 2^64

  (DSIN (* CENTR OMEGA))
--> BLOCK
==>
  (SIN FORTRAN-TO-LISP::X)
Note: Unable to avoid inline argument range check
because the argument range (DOUBLE-FLOAT) was not within 2^64


Compilation unit finished.
  4 notes


File: /home/ponsve/linux_matlisp/lib-src/minpack/dpmpar.lisp

In: DEFUN DPMPAR
  '""
Note: Deleting unreachable code.

  (PROG ((MAXMAG #) (MINMAG #) (MCHEPS #) (DPMPAR 0.0d0) (EQUIVALENCE 0.0))
    (DECLARE (TYPE SINGLE-FLOAT EQUIVALENCE)
             (TYPE DOUBLE-FLOAT DPMPAR)
             (TYPE # MCHEPS MINMAG MAXMAG))
    '"     **********" ..)
--> BLOCK
==>
  (LET ((MAXMAG #) (MINMAG #) (MCHEPS #) (DPMPAR 0.0d0) (EQUIVALENCE 0.0))
    (DECLARE (TYPE SINGLE-FLOAT EQUIVALENCE)
             (TYPE DOUBLE-FLOAT DPMPAR)
             (TYPE # MCHEPS MINMAG MAXMAG))
    (TAGBODY '"     **********" '"" '"     function dpmpar" '"" ...))
Note: Variable MAXMAG defined but never used.
Note: Variable MINMAG defined but never used.
Note: Variable MCHEPS defined but never used.
Note: Variable EQUIVALENCE defined but never used.


Compilation unit finished.
  5 notes


File: /home/ponsve/linux_matlisp/lib-src/minpack/enorm.lisp

In: DEFUN ENORM
  '""
Note: Deleting unreachable code.


Compilation unit finished.
  1 note


File: /home/ponsve/linux_matlisp/lib-src/minpack/fdjac2.lisp

In: DEFUN FDJAC2
  '""
Note: Deleting unreachable code.


Compilation unit finished.
  1 note


File: /home/ponsve/linux_matlisp/lib-src/minpack/qrsolv.lisp

In: DEFUN QRSOLV
  '""
Note: Deleting unreachable code.


Compilation unit finished.
  1 note


File: /home/ponsve/linux_matlisp/lib-src/minpack/lmpar.lisp

In: DEFUN LMPAR
  '""
Note: Deleting unreachable code.


Compilation unit finished.
  1 note


File: /home/ponsve/linux_matlisp/lib-src/minpack/qrfac.lisp

In: DEFUN QRFAC
  '""
Note: Deleting unreachable code.

  (PROG ((AJNORM 0.0d0) (EPSMCH 0.0d0) (SUM 0.0d0) (TEMP 0.0d0) (I 0) ...)
    (DECLARE (TYPE SINGLE-FLOAT ARRAY-SLICE DOUBLE-FLOAT)
             (TYPE INTEGER4 MINMN KMAX K ...)
             (TYPE DOUBLE-FLOAT TEMP SUM EPSMCH ...))
    (DECLARE (FTYPE # DPMPAR)) ..)
--> BLOCK
==>
  (LET ((AJNORM 0.0d0) (EPSMCH 0.0d0) (SUM 0.0d0) (TEMP 0.0d0) (I 0) ...)
    (DECLARE (TYPE SINGLE-FLOAT ARRAY-SLICE DOUBLE-FLOAT)
             (TYPE INTEGER4 MINMN KMAX K ...)
             (TYPE DOUBLE-FLOAT TEMP SUM EPSMCH ...))
    (DECLARE (FTYPE # DPMPAR)) ..)
Note: Variable DOUBLE-FLOAT defined but never used.
Note: Variable ARRAY-SLICE defined but never used.


Compilation unit finished.
  3 notes


File: /home/ponsve/linux_matlisp/lib-src/minpack/lmdif.lisp

In: DEFUN LMDIF
  '""
Note: Deleting unreachable code.


Compilation unit finished.
  1 note


File: /home/ponsve/linux_matlisp/lib-src/minpack/lmdif1.lisp

In: DEFUN LMDIF1
  '""
Note: Deleting unreachable code.


Compilation unit finished.
  1 note


File: /home/ponsve/linux_matlisp/lib-src/minpack/lmder.lisp

In: DEFUN LMDER
  '""
Note: Deleting unreachable code.


Compilation unit finished.
  1 note


File: /home/ponsve/linux_matlisp/lib-src/minpack/lmder1.lisp

In: DEFUN LMDER1
  '""
Note: Deleting unreachable code.


Compilation unit finished.
  1 note


File: /home/ponsve/linux_matlisp/lib-src/minpack/dogleg.lisp

In: DEFUN DOGLEG
  '""
Note: Deleting unreachable code.


Compilation unit finished.
  1 note


File: /home/ponsve/linux_matlisp/lib-src/minpack/qform.lisp

In: DEFUN QFORM
  '""
Note: Deleting unreachable code.


Compilation unit finished.
  1 note


File: /home/ponsve/linux_matlisp/lib-src/minpack/r1mpyq.lisp

In: DEFUN R1MPYQ
  '""
Note: Deleting unreachable code.


Compilation unit finished.
  1 note


File: /home/ponsve/linux_matlisp/lib-src/minpack/r1updt.lisp

In: DEFUN R1UPDT
  '""
Note: Deleting unreachable code.


Compilation unit finished.
  1 note


File: /home/ponsve/linux_matlisp/lib-src/minpack/hybrj.lisp

In: DEFUN HYBRJ
  '""
Note: Deleting unreachable code.


Compilation unit finished.
  1 note


File: /home/ponsve/linux_matlisp/lib-src/minpack/hybrj1.lisp

In: DEFUN HYBRJ1
  '""
Note: Deleting unreachable code.
 
 
Compilation unit finished.
  1 note
 
;; Loading #p"/home/ponsve/linux_matlisp/save.lisp".
 
 
 ** MATLISP is loaded.  Type (HELP MATLISP)
    to see a list of available symbols.
    To use matlisp:
 
          (use-package "MATLISP")
 
    or
 
          (in-package "MATLISP-USER")
 
 ** The logical pathname matlisp has been
    set to:
 
          /home/ponsve/linux_matlisp/
 
CMU Common Lisp release x86-linux 3.0.12 18d+ 23 May 2002 build 3350, 
running on beo201.foi.se
For support see http://www.cons.org/cmucl/support.html Send bug reports 
to the debian BTS.
or to [email protected]
type (help) for help, (quit) to exit, and (demo) to see the demos
 
Loaded subsystems:
    Python 1.0, target Intel x86
    CLOS based on PCL version:  September 16 92 PCL (f)
    MATLISP/Pre 2.0
* (setf a [1 2])
Warning:  Declaring A special.
 
#<MATLISP:REAL-MATRIX  1 x 2
    1.0000      2.0000     >
* (m+ a a)
 
Warning: This function is undefined:
  M+
 
Error in KERNEL:%COERCE-TO-FUNCTION:  the function M+ is undefined.
 
Restarts:
  0: [ABORT] Return to Top-Level.
 
Debug  (type H for help)
 
(KERNEL:%COERCE-TO-FUNCTION M+)
Source:
; File: target:code/fdefinition.lisp
 
; File has been modified since compilation:
;   target:code/fdefinition.lisp
; Using form offset instead of character position.
(ERROR 'UNDEFINED-FUNCTION :NAME NAME)
0]


**************************************************************

Does anybody have any idea what I might be doing wrong?

Thanks,
Pontus
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.