[CM] Source File for SIMP

Esben Stien b0ef@esben-stien.name
Mon, 22 May 2006 08:53:03 +0200


Rick Taube <taube@uiuc.edu> writes:

> you cannot evaluate a definstument.

That's one fundamental I missed;)

> (load "/path/to/clm/all.lisp")
> (load (compile-file "/path/to/clm/v.ins"))
> (with-sound () (fm-violin 0 1 200 .1))

Trying to evaluate this with a fresh emacs slime boot, this is what I
get:

CL-USER> (load "/home/b0ef/.inbound/clm-3/all.lisp")
;   using existing configuration file config.h
T
CL-USER> (load (compile-file "/home/b0ef/.inbound/clm-3/v.ins"))
; Writing "/home/b0ef/.inbound/clm-3/clm_FM_VIOLIN.c"
; 
; caught STYLE-WARNING:
;   using deprecated EVAL-WHEN situation names EVAL LOAD

; 
; caught STYLE-WARNING:
;   using deprecated EVAL-WHEN situation names EVAL LOAD COMPILE
; Compiling "/home/b0ef/.inbound/clm-3/clm_FM_VIOLIN.c"
; Creating shared object file "/home/b0ef/.inbound/clm-3/clm_FM_VIOLIN.so"

; 
; caught STYLE-WARNING:
;   using deprecated EVAL-WHEN situation names LOAD EVAL


; file: /home/b0ef/.inbound/clm-3/v.ins
; in: DEFINSTRUMENT FM-VIOLIN
;     (RUN
;    (LOOP FOR
;          I
;          FROM
;          BEG
;          TO
;          END
;          DO
;          (DECLARE
;           (TYPE :FLOAT
;                 NOISE-AMOUNT
;                 FUZZ
;                 IND-FUZZ
;                 AMP-FUZZ
;                 MODULATION
;                 FM1-RAT
;                 FM2-RAT
;                 FM3-RAT
;                 VIB)
;           (TYPE :MUS-ANY IND-NOI AMP-NOI)
;           (TYPE :DOUBLE* COEFFS)
;           (TYPE :BOOLEAN FROBBER EASY-CASE MODULATE))
;          (IF (/= 0.0 NOISE-AMOUNT)
;              (IF (NULL FROBBER) (SETF FUZZ #) (SETF FUZZ #)))
;          (SETF VIB (+ (ENV FRQF) (TRIANGLE-WAVE PERVIB) (RAND-INTERP RANVIB)))
;          (IF IND-NOI (SETF IND-FUZZ (+ 1.0 #)))
;          ...))
; --> MACROEXPAND-1 CLM::RUN-1 PROGN CLM::<END-2> LET MULTIPLE-VALUE-BIND 
; --> MULTIPLE-VALUE-CALL 
; ==>
;   #'(LAMBDA
;         (&OPTIONAL (CLM::*CLM-DATAI-LEN*) (CLM::*CLM-DATAR-LEN*) &REST #:G226)
;       (DECLARE (IGNORE #:G226))
;       (LET ((CLM::*CLM-BEG* (FLOOR #))
;             (CLM::*CLM-END* (AND # #))
;             (CLM::*CLM-DATAI*
;              (MAKE-INTEGER-ARRAY CLM::*CLM-DATAI-LEN* :INITIAL-ELEMENT 0))
;             (CLM::*CLM-DATAR* (MAKE-DOUBLE-ARRAY CLM::*CLM-DATAR-LEN*)))
;         (CLM::LOAD-VARS 49
;                         26
;                         '((MODULATE 47 0 :BOOLEAN) (EASY-CASE 45 0 :BOOLEAN)
;                           (FROBBER 43 0 :BOOLEAN) (COEFFS 41 0 :DOUBLE-ARRAY)
;                           (VIB 0 25 :REAL) (FM3-RAT 0 24 :REAL)
;                           (FM2-RAT 0 23 :REAL) (FM1-RAT 0 22 :REAL)
;                           (MODULATION 0 21 :REAL) (AMP-FUZZ 0 20 :REAL)
;                           (IND-FUZZ 0 19 :REAL) (FUZZ 0 18 :REAL) ...)
;                         CLM::VARDATA
;                         CLM::*CLM-DATAI*
;                         CLM::*CLM-DATAR*)
;         (CLM::TO-BIGNUM CLM::*CLM-BEG* CLM::*CLM-DATAI* CLM::+CLM-BEG+)
;         (CLM::TO-BIGNUM (OR CLM::*CLM-END* 0) CLM::*CLM-DATAI* CLM::+CLM-END+)
;         (IF (AND END (< CLM::*CLM-END* CLM::*CLM-BEG*))
;             (WARN "end time < begin time: ~A from ~A to ~A?"
;                   'FM-VIOLIN
;                   CLM::*CLM-BEG*
;                   CLM::*CLM-END*))
;         (IF *CLM-DEBUG*
;             (PRINT
;              (FORMAT NIL
;                      "(~A ~A~%  ~A~%  ~A ~A ~A)"
;                      '|clm_fm_violin2|
;                      CLM::*CLM-BEG*
;                      CLM::*CLM-END*
;                      CLM::*CLM-DATAR*
;                      CLM::*CLM-DATAI*
;                      CLM::*CLM-DATAR-LEN*)))
;         (SETF (GET *CLM-INS* :DATAI) CLM::*CLM-DATAI*)
;         (SETF (GET *CLM-INS* :DATAR) CLM::*CLM-DATAR*)
;         (SETF CLM-LAST-BEGIN-TIME (MAX CLM-LAST-BEGIN-TIME CLM::*CLM-BEG*))
;         (PROGN (TAGBODY (RESTART-CASE # #) CLM::NOTE-ALL-DONE))
;         (IF (NOT (ZEROP #))
;             (FORMAT T
;                     "interrupted: ~A"
;                     (AREF CLM::*CLM-DATAI* CLM::+CLM-INTERRUPTED+)))))
; 
; caught STYLE-WARNING:
;   using the lexical binding of the symbol CLM::*CLM-DATAI-LEN*, not the
;   dynamic binding, even though the symbol name follows the usual naming
;   convention (names like *FOO*) for special variables
; 
; caught STYLE-WARNING:
;   using the lexical binding of the symbol CLM::*CLM-DATAR-LEN*, not the
;   dynamic binding, even though the symbol name follows the usual naming
;   convention (names like *FOO*) for special variables

; --> MACROEXPAND-1 CLM::RUN-1 PROGN CLM::<END-2> LET MULTIPLE-VALUE-BIND 
; --> MULTIPLE-VALUE-CALL FUNCTION 
; ==>
;   (LET ((CLM::*CLM-BEG* (FLOOR (+ BEG CLM::*OFFSET*)))
;         (CLM::*CLM-END* (AND (NUMBERP END) (FLOOR #)))
;         (CLM::*CLM-DATAI*
;          (MAKE-INTEGER-ARRAY CLM::*CLM-DATAI-LEN* :INITIAL-ELEMENT 0))
;         (CLM::*CLM-DATAR* (MAKE-DOUBLE-ARRAY CLM::*CLM-DATAR-LEN*)))
;     (CLM::LOAD-VARS 49
;                     26
;                     '((MODULATE 47 0 :BOOLEAN) (EASY-CASE 45 0 :BOOLEAN)
;                       (FROBBER 43 0 :BOOLEAN) (COEFFS 41 0 :DOUBLE-ARRAY)
;                       (VIB 0 25 :REAL) (FM3-RAT 0 24 :REAL)
;                       (FM2-RAT 0 23 :REAL) (FM1-RAT 0 22 :REAL)
;                       (MODULATION 0 21 :REAL) (AMP-FUZZ 0 20 :REAL)
;                       (IND-FUZZ 0 19 :REAL) (FUZZ 0 18 :REAL) ...)
;                     CLM::VARDATA
;                     CLM::*CLM-DATAI*
;                     CLM::*CLM-DATAR*)
;     (CLM::TO-BIGNUM CLM::*CLM-BEG* CLM::*CLM-DATAI* CLM::+CLM-BEG+)
;     (CLM::TO-BIGNUM (OR CLM::*CLM-END* 0) CLM::*CLM-DATAI* CLM::+CLM-END+)
;     (IF (AND END (< CLM::*CLM-END* CLM::*CLM-BEG*))
;         (WARN "end time < begin time: ~A from ~A to ~A?"
;               'FM-VIOLIN
;               CLM::*CLM-BEG*
;               CLM::*CLM-END*))
;     (IF *CLM-DEBUG*
;         (PRINT
;          (FORMAT NIL
;                  "(~A ~A~%  ~A~%  ~A ~A ~A)"
;                  '|clm_fm_violin2|
;                  CLM::*CLM-BEG*
;                  CLM::*CLM-END*
;                  CLM::*CLM-DATAR*
;                  CLM::*CLM-DATAI*
;                  CLM::*CLM-DATAR-LEN*)))
;     (SETF (GET *CLM-INS* :DATAI) CLM::*CLM-DATAI*)
;     (SETF (GET *CLM-INS* :DATAR) CLM::*CLM-DATAR*)
;     (SETF CLM-LAST-BEGIN-TIME (MAX CLM-LAST-BEGIN-TIME CLM::*CLM-BEG*))
;     (PROGN
;      (TAGBODY
;        (RESTART-CASE
;         (|clm_fm_violin2| CLM::*CLM-DATAR*
;                           CLM::*CLM-DATAR-LEN*
;                           CLM::*CLM-DATAI*
;                           CLM::*CLM-DATAI-LEN*)
;         (NIL NIL :REPORT "try to exit current note cleanly and go on." #))
;       CLM::NOTE-ALL-DONE))
;     (IF (NOT (ZEROP (AREF CLM::*CLM-DATAI* CLM::+CLM-INTERRUPTED+)))
;         (FORMAT T
;                 "interrupted: ~A"
;                 (AREF CLM::*CLM-DATAI* CLM::+CLM-INTERRUPTED+))))
; 
; caught STYLE-WARNING:
;   using the lexical binding of the symbol CLM::*CLM-BEG*, not the
;   dynamic binding, even though the symbol name follows the usual naming
;   convention (names like *FOO*) for special variables
; 
; caught STYLE-WARNING:
;   using the lexical binding of the symbol CLM::*CLM-END*, not the
;   dynamic binding, even though the symbol name follows the usual naming
;   convention (names like *FOO*) for special variables
; 
; caught STYLE-WARNING:
;   using the lexical binding of the symbol CLM::*CLM-DATAI*, not the
;   dynamic binding, even though the symbol name follows the usual naming
;   convention (names like *FOO*) for special variables
; 
; caught STYLE-WARNING:
;   using the lexical binding of the symbol CLM::*CLM-DATAR*, not the
;   dynamic binding, even though the symbol name follows the usual naming
;   convention (names like *FOO*) for special variables

; 
; caught STYLE-WARNING:
;   using deprecated EVAL-WHEN situation names LOAD EVAL
; 
; compilation unit finished
;   caught 10 STYLE-WARNING conditions
T
CL-USER> (with-sound () (fm-violin 0 1 200 .1))

memory fault
   [Condition of type SB-KERNEL::MEMORY-FAULT-ERROR]

Restarts:
  0: [NIL] try to exit current note cleanly and go on.
  1: [NIL] abort current note.
  2: [NIL] close files and return to top-level.
  3: [NIL] jump past remaining notes.
  4: [ABORT-REQUEST] Abort handling SLIME request.
  5: [TERMINATE-THREAD] Terminate this thread (#<THREAD "repl-thread" {B571819}>)

Backtrace:
  0: (SB-KERNEL::MEMORY-FAULT-ERROR)
  1: ("foreign function: call_into_lisp")
  2: ("foreign function: post_signal_tramp")
  3: ("foreign function: mus_env")
  4: ("foreign function: clm_fm_violin2")
  5: (|clm_fm_violin3| #.(SB-SYS:INT-SAP #X0B61D990) 72 #.(SB-SYS:INT-SAP #X0B61D7F8) 98)
  6: (FM-VIOLIN 0 1 200 0.1 :FM-INDEX 1.0 :AMP-ENV (0 0 25 1 75 1 100 0) :PERIODIC-VIBRATO-RATE 5.0 :RANDOM-VIBRATO-RATE 16.0 :PERIODIC-VIBRATO-AMPLITUDE 0.0025 :RANDOM-VIBRATO-AMPLITUDE 0.005 :NOISE-AMOUNT 0.0 :NOISE-FREQ 1000.0 :IND-NOISE-FREQ 10.0 :IND-NOISE-AMOUNT 0.0 :AMP-NOISE-FREQ 20.0 :AMP-NOISE-AMOUNT 0.0 :GLISS-ENV (0 0 100 0) :GLISSANDO-AMOUNT 0.0 :FM1-ENV (0 1 25 0.4 75 0.6 100 0) :FM2-ENV (0 1 25 0.4 75 0.6 100 0) :FM3-ENV (0 1 25 0.4 75 0.6 100 0) :FM1-RAT 1.0 :FM2-RAT 3.0 :FM3-RAT 4.0 :FM1-INDEX NIL :FM2-INDEX NIL :FM3-INDEX NIL :BASE NIL :FROBBER NIL :REVERB-AMOUNT 0.01 :INDEX-TYPE :VIOLIN :DEGREE NIL :DISTANCE 1.0 :DEGREES NIL :NO-WAVESHAPING NIL :DENOISE NIL :DENOISE-DUR 0.1 :DENOISE-AMP 0.005)
  7: (NIL)
  8: (SB-INT:EVAL-IN-LEXENV (WITH-SOUND NIL (FM-VIOLIN 0 1 200 0.1)) #<NULL-LEXENV>)
  9: (SWANK::EVAL-REGION "(with-sound () (fm-violin 0 1 200 .1))
" T)
 10: ((LAMBDA NIL))
 11: ((SB-PCL::FAST-METHOD SWANK-BACKEND:CALL-WITH-SYNTAX-HOOKS (T)) #<unused argument> #<unused argument> #<CLOSURE (LAMBDA NIL) {A8F05C5}>)
 12: (SWANK::CALL-WITH-BUFFER-SYNTAX #<CLOSURE (LAMBDA NIL) {A8F05C5}>)
 13: (SB-INT:EVAL-IN-LEXENV (SWANK:LISTENER-EVAL "(with-sound () (fm-violin 0 1 200 .1))
") #<NULL-LEXENV>)
 14: ((LAMBDA NIL))
 15: ((SB-PCL::FAST-METHOD SWANK-BACKEND:CALL-WITH-DEBUGGER-HOOK (T T)) #<unused argument> #<unused argument> #<FUNCTION SWANK:SWANK-DEBUGGER-HOOK> #<CLOSURE (LAMBDA NIL) {A8DDE15}>)
 16: ((LAMBDA NIL))
 17: ((SB-PCL::FAST-METHOD SWANK-BACKEND:CALL-WITH-DEBUGGER-HOOK (T T)) #<unused argument> #<unused argument> #<FUNCTION SWANK:SWANK-DEBUGGER-HOOK> #<FUNCTION (LAMBDA NIL) {ADE6C35}>)
 18: (SWANK::CALL-WITH-REDIRECTED-IO #<SWANK::CONNECTION {B3E76C9}> #<CLOSURE (LAMBDA NIL) {A8DDCC5}>)
 19: (SWANK::CALL-WITH-CONNECTION #<SWANK::CONNECTION {B3E76C9}> #<FUNCTION (LAMBDA NIL) {ADE6C35}>)
 20: (SWANK::HANDLE-REQUEST #<SWANK::CONNECTION {B3E76C9}>)
 21: ((LAMBDA NIL))
 22: ((LAMBDA NIL))
 23: ((SB-PCL::FAST-METHOD SWANK-BACKEND:CALL-WITH-DEBUGGER-HOOK (T T)) #<unused argument> #<unused argument> #<FUNCTION SWANK:SWANK-DEBUGGER-HOOK> #<CLOSURE (LAMBDA NIL) {B5880B5}>)
 24: (SWANK::CALL-WITH-REDIRECTED-IO #<SWANK::CONNECTION {B3E76C9}> #<CLOSURE (LAMBDA NIL) {B5880C5}>)
 25: (SWANK::CALL-WITH-CONNECTION #<SWANK::CONNECTION {B3E76C9}> #<CLOSURE (LAMBDA NIL) {B5880B5}>)
 26: (SWANK::CALL-WITH-BINDINGS NIL #<CLOSURE (LAMBDA NIL) {B588095}>)
 27: ((LAMBDA NIL))
 28: ("foreign function: call_into_lisp")
 29: ("foreign function: funcall0")
 30: ("foreign function: new_thread_trampoline")
 31: ("foreign function: #xB7FC110B")

Guess I'm very unlucky;). 

-- 
Esben Stien is b0ef@e     s      a             
         http://www. s     t    n m
          irc://irc.  b  -  i  .   e/%23contact
           sip:b0ef@   e     e 
           jid:b0ef@    n     n