[gambit-list] Operator is not a PROCEDURE, unbound
Matt Hastie
matthastie at gmail.com
Fri Sep 20 18:39:53 EDT 2013
Marc,
I think the situation appears more urgent than you suggest. The change appears to have broken executable compilation.
I was able to reproduce this problem trivially with the suggested code:
;; change-directory.scm
(define (change-directory path)
(current-directory path))
(change-directory (cadr (command-line)))
bash-3.2$ gsc -:s -exe change-directory.scm ../lib/syntax-case.scm
change-directory.scm:
/Volumes/Data/scratch/scheme/control/home/change-directory.c:
../lib/syntax-case.scm:
/Volumes/Data/scratch/scheme/control/lib/syntax-case.c:
/Volumes/Data/scratch/scheme/control/lib/syntax-case_.c:
bash-3.2$ ./change-directory ..
*** ERROR IN | change-directory| -- Operator is not a PROCEDURE
(#!unbound
'#(syntax-object change-directory ((top) #(ribcage #(change-directory) #((t...
'(global . change-directory)
'*top*)
bash-3.2$
I'll go back and study the psyntax code around this defect for a resolution that supports both the command line compilation and gsc repl envrionments.
Sven - my sincere apologies for this fail.
Matt.
On Sep 20, 2013, at 7:28 AM, Marc Feeley <feeley at iro.umontreal.ca> wrote:
> With the latest changes to syntax-case, it is now required to load syntax-case.scm (or use the -:s runtime option) when loading files which were compiled with the -:s option.
>
> Marc
>
> On 2013-09-20, at 7:56 AM, Sven Hartrumpf <hartrumpf at gmx.net> wrote:
>
>> Hi.
>>
>> I have a large program that runs fine in the interpreter.
>> But when compiled with these options (latest gambit from git)
>> (declare
>> (r5rs-scheme)
>> (constant-fold)
>> (inline)
>> (inlining-limit 500)
>> (standard-bindings)
>> (extended-bindings)
>> (safe)
>> (mostly-generic))
>> the compiled program crashes as follows:
>>
>> *** ERROR IN | n| -- Operator is not a PROCEDURE
>> (#!unbound '#(syntax-object change-directory ((top) #(ribcage #(change-directory) #((top)) #(change-directory)))) '(global . change-directory) '*top*)
>>
>> change-directory is from a simple Scheme portability layer:
>>
>> (define (change-directory path)
>> (current-directory path))
>>
>> Sven
>> _______________________________________________
>> Gambit-list mailing list
>> Gambit-list at iro.umontreal.ca
>> https://webmail.iro.umontreal.ca/mailman/listinfo/gambit-list
>
> _______________________________________________
> Gambit-list mailing list
> Gambit-list at iro.umontreal.ca
> https://webmail.iro.umontreal.ca/mailman/listinfo/gambit-list
More information about the Gambit-list
mailing list