Comments (6)
Can confirm on b05884f under Slime:
CL-USER> (let* ((x 1)
(x (+ 1 x)))
(print x))
The symbol[X] is already in the environment
[Condition of type SIMPLE-PROGRAM-ERROR]
Restarts:
0: [RETRY] Retry SLIME REPL evaluation request.
1: [*PROCESS-INPUT] Continue reading input.
2: [ABORT] Return to SLIME's top level.
3: [CLOSE-CONNECTION] Close SLIME connection.
4: [RESTART-TOPLEVEL] Go back to Top-Level REPL.
Backtrace:
0: (CORE::UNNAMED-LAMBDA #<COMMON-LISP:COMPILED-FUNCTION CORE::UNNAMED-LAMBDA CompiledClosure>)
1: (APPLY #<COMMON-LISP:COMPILED-FUNCTION CORE::UNNAMED-LAMBDA CompiledClosure> #<COMMON-LISP:COMPILED-FUNCTION CORE::UNNAMED-LAMBDA CompiledClosure> NIL)
2: (SWANK/BACKEND:CALL-WITH-DEBUGGING-ENVIRONMENT #<COMMON-LISP:COMPILED-FUNCTION CORE::UNNAMED-LAMBDA CompiledClosure>)
3: (TOP-LEVEL)
4: (CALL-WITH-VARIABLE-BOUND SWANK::*SLDB-STEPPING-P* NIL #<COMMON-LISP:COMPILED-FUNCTION CORE:TOP-LEVEL CompiledClosure>)
5: (TOP-LEVEL)
6: (CALL-WITH-VARIABLE-BOUND SWANK::*SLDB-LEVEL* 1 #<COMMON-LISP:COMPILED-FUNCTION CORE:TOP-LEVEL CompiledClosure>)
7: (TOP-LEVEL)
8: (CALL-WITH-VARIABLE-BOUND *PACKAGE* #<COMMON-LISP-USER> #<COMMON-LISP:COMPILED-FUNCTION CORE:TOP-LEVEL CompiledClosure>)
9: (TOP-LEVEL)
10: (CALL-WITH-VARIABLE-BOUND SWANK:*SLDB-QUIT-RESTART* #<RESTART.2120592393> #<COMMON-LISP:COMPILED-FUNCTION CORE:TOP-LEVEL CompiledClosure>)
11: (TOP-LEVEL)
12: (CALL-WITH-VARIABLE-BOUND SWANK::*SLDB-RESTARTS* (#<RESTART.2121942409> #<RESTART.2120592393> #<RESTART.2120272201> #<RESTART.2139755337> #<RESTART.2054272137>) #<COMMON-LISP:COMPILED-FUNCTION CORE:TO..
13: (TOP-LEVEL)
14: (CALL-WITH-VARIABLE-BOUND SWANK::*SWANK-DEBUGGER-CONDITION* #<CORE:SIMPLE-PROGRAM-ERROR @0x7fb47e7b8e09> #<COMMON-LISP:COMPILED-FUNCTION CORE:TOP-LEVEL CompiledClosure>)
15: (SWANK::DEBUG-IN-EMACS #<CORE:SIMPLE-PROGRAM-ERROR @0x7fb47e7b8e09>)
16: (TOP-LEVEL)
17: (CALL-WITH-VARIABLE-BOUND SWANK::*SLIME-INTERRUPTS-ENABLED* NIL #<COMMON-LISP:COMPILED-FUNCTION CORE:TOP-LEVEL CompiledClosure>)
18: (CORE::UNNAMED-LAMBDA)
19: (MULTIPLE-VALUE-PROG1-FUNCTION #<COMMON-LISP:COMPILED-FUNCTION CORE::UNNAMED-LAMBDA CompiledClosure> #<COMMON-LISP:COMPILED-FUNCTION CORE::UNNAMED-LAMBDA CompiledClosure>)
20: (SWANK:INVOKE-SLIME-DEBUGGER #<CORE:SIMPLE-PROGRAM-ERROR @0x7fb47e7b8e09>)
21: (CORE::UNNAMED-LAMBDA)
22: (FUNCALL #<COMMON-LISP:COMPILED-FUNCTION CORE::UNNAMED-LAMBDA CompiledClosure>)
23: (TOP-LEVEL)
24: (CALL-WITH-VARIABLE-BOUND EXT:*INVOKE-DEBUGGER-HOOK* #<COMMON-LISP:COMPILED-FUNCTION CORE::UNNAMED-LAMBDA CompiledClosure> #<COMMON-LISP:COMPILED-FUNCTION CORE:TOP-LEVEL CompiledClosure>)
25: (TOP-LEVEL)
26: (CALL-WITH-VARIABLE-BOUND *DEBUGGER-HOOK* #<COMMON-LISP:COMPILED-FUNCTION SWANK:SWANK-DEBUGGER-HOOK CompiledClosure> #<COMMON-LISP:COMPILED-FUNCTION CORE:TOP-LEVEL CompiledClosure>)
27: (CORE::UNNAMED-LAMBDA #<COMMON-LISP:COMPILED-FUNCTION CORE::UNNAMED-LAMBDA CompiledClosure> #<COMMON-LISP:COMPILED-FUNCTION SWANK:SWANK-DEBUGGER-HOOK CompiledClosure>)
28: (APPLY #<COMMON-LISP:COMPILED-FUNCTION CORE::UNNAMED-LAMBDA CompiledClosure> #<COMMON-LISP:COMPILED-FUNCTION SWANK:SWANK-DEBUGGER-HOOK CompiledClosure> #<COMMON-LISP:COMPILED-FUNCTION CORE::UNNAMED-LA..
29: (SWANK/BACKEND:CALL-WITH-DEBUGGER-HOOK #<COMMON-LISP:COMPILED-FUNCTION SWANK:SWANK-DEBUGGER-HOOK CompiledClosure> #<COMMON-LISP:COMPILED-FUNCTION CORE::UNNAMED-LAMBDA CompiledClosure>)
30: (TOP-LEVEL)
31: (CALL-WITH-VARIABLE-BOUND CORE::*HANDLER-CLUSTERS* (((SWANK::INVOKE-DEFAULT-DEBUGGER . #<COMMON-LISP:COMPILED-FUNCTION CORE::UNNAMED-LAMBDA CompiledClosure>)) ..) #<COMMON-LISP:COMPILED-FUNCTION CORE:..
32: (SWANK:SWANK-DEBUGGER-HOOK #<CORE:SIMPLE-PROGRAM-ERROR @0x7fb47e7b8e09> #<COMMON-LISP:COMPILED-FUNCTION SWANK:SWANK-DEBUGGER-HOOK CompiledClosure>)
33: (FUNCALL #<COMMON-LISP:COMPILED-FUNCTION SWANK:SWANK-DEBUGGER-HOOK CompiledClosure> #<CORE:SIMPLE-PROGRAM-ERROR @0x7fb47e7b8e09> #<COMMON-LISP:COMPILED-FUNCTION SWANK:SWANK-DEBUGGER-HOOK CompiledClosu..
34: (TOP-LEVEL)
35: (CALL-WITH-VARIABLE-BOUND *DEBUGGER-HOOK* NIL #<COMMON-LISP:COMPILED-FUNCTION CORE:TOP-LEVEL CompiledClosure>)
36: (INVOKE-DEBUGGER #<CORE:SIMPLE-PROGRAM-ERROR @0x7fb47e7b8e09>)
37: (UNIVERSAL-ERROR-HANDLER NIL SIMPLE-PROGRAM-ERROR (:FORMAT-CONTROL "The symbol[X] is already in the environment" :FORMAT-ARGUMENTS NIL))
38: (ERROR #<COMMON-LISP:FUNCTION COMMON-LISP:ERROR VariadicFunctoid> SIMPLE-PROGRAM-ERROR :FORMAT-CONTROL "The symbol[X] is already in the environment" :FORMAT-ARGUMENTS)
39: (APPLY #<COMMON-LISP:FUNCTION COMMON-LISP:ERROR VariadicFunctoid> SIMPLE-PROGRAM-ERROR :FORMAT-CONTROL "The symbol[X] is already in the environment" :FORMAT-ARGUMENTS NIL NIL)
40: (SIGNAL-SIMPLE-ERROR PROGRAM-ERROR NIL "The symbol[X] is already in the environment" NIL)
41: (EVAL (LET* ((X 1) (X (+ 1 X))) ..))
--more--
but works fine from the REPL
> (let* ((x 1)
(x (+ 1 x)))
(print x))
2
2
from clasp.
The interpreter has this problem still - so switching eval to use the compiler will hide the problem but in the proper way. EVAL should be using the compiler after the system starts up. I still need to fix the interpreter.
from clasp.
I'll close this once I can confirm it and open a new ticket for the interpreter bug.
from clasp.
Still there on 2e97cc5
Starting Boehm cclasp 0.3-test-10-159-g2e97cc5 ... loading image... it takes a few seconds
Top level.
> (let* ((x 1)
(x (+ 1 x)))
(print x))
2
2
> (eval '(let* ((x 1)
(x (+ 1 x)))
(print x)))
Condition of type: SIMPLE-PROGRAM-ERROR
The symbol[X] is already in the environment
from clasp.
I may not have pushed this to testing yet.
from clasp.
Fixed on 482d6ca
> (let* ((x 1)
(x (+ 1 x)))
(print x))
2
2
> (eval '(let* ((x 1)
(x (+ 1 x)))
(print x)))
2
2
from clasp.
Related Issues (20)
- Build failure on Linux (musl) HOT 13
- bytecode compiler doesn't establish a compilation unit
- `ext:save-lisp-and-die` breaks since 2.2.0 HOT 5
- slow bytecode wrappers
- inline mv local calls
- Use the abstract interpreter
- Do not interpolate at IR level HOT 1
- Rewrite debuginfo
- Rtypes as objects
- Primitive bytecode FASL loader
- FDEFNs
- Unboxed structure slots
- Debug info for bytecode
- VM Backtraces HOT 2
- MacOS build can't find llvm-config HOT 4
- Latest release (2.2.0) doesn't build any more. HOT 2
- The version number has not been updated to 2.3.0 HOT 1
- Wrapped functions no longer cooperate with unwinder
- error loading ningle HOT 1
- BIR verification failed when installing serapuem(required by spinneret) HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from clasp.