summaryrefslogtreecommitdiff
path: root/sb-eval2.lisp
Commit message (Collapse)AuthorAgeFilesLines
...
* Never allocate environment objects on the stack.Matthias Andreas Benkard2013-07-191-1/+5
| | | We still allocate the actual data vector on the stack sometimes.
* MAYBE-CLOSES-OVER-P: Be tolerant towards errors raised by SB-WALKER.Matthias Andreas Benkard2013-07-191-1/+3
|
* Add special handling for MACROLET, SYMBOL-MACROLET, FLET, LABELS.Matthias Andreas Benkard2013-07-191-5/+15
|
* LET*, LAMBDA: Fix use of MAYBE-CLOSES-OVER-P to also search references from ↵Matthias Andreas Benkard2013-07-191-3/+7
| | | | binding forms.
* Remove an obsolete comment.Matthias Andreas Benkard2013-07-191-1/+0
|
* Update MAYBE-CLOSES-OVER-P call sites.Matthias Andreas Benkard2013-07-191-3/+3
|
* Register specials in the context.Matthias Andreas Benkard2013-07-191-7/+20
|
* Reimplement MAYBE-CLOSES-OVER-P using SB-WALKER.Matthias Andreas Benkard2013-07-191-30/+43
|
* Reorder forms for compilability.Matthias Andreas Benkard2013-07-181-19/+21
|
* LET: Support SPECIAL declarations, fix the order of evaluation for special ↵Matthias Andreas Benkard2013-07-181-31/+38
| | | | | variables. Note that no other special forms support SPECIAL declarations yet. This includes LAMBDA and LET*.
* Fix a typo.Matthias Andreas Benkard2013-07-181-1/+1
|
* Partially implement declaration parsing.Matthias Andreas Benkard2013-07-181-304/+332
|
* Fix support for ((LAMBDA ...) ...) forms.Matthias Andreas Benkard2013-07-181-4/+3
|
* LAMBDA: Raise SIMPLE-PROGRAM-ERRORs for argument number mismatches.Matthias Andreas Benkard2013-07-181-3/+9
|
* TAGBODY: Support non-symbols as tags.Matthias Andreas Benkard2013-07-181-2/+2
|
* Fix symbol macro application.Matthias Andreas Benkard2013-07-181-1/+1
|
* Semi-fix LOCALLY.Matthias Andreas Benkard2013-07-181-1/+2
|
* CONTEXT->NATIVE-ENVIRONMENT: Handle macros and symbol macros.Matthias Andreas Benkard2013-07-181-2/+10
| | | | | | | | This especially helps in the presence of SETF in that it makes stuff like the following expand correctly: (let (foo) (macrolet ((x () 'foo)) (setf (x) 10)) foo)
* Fix the TAGBODY parser.Matthias Andreas Benkard2013-07-181-5/+8
|
* PREPARE-PROGN: Fix a typo.Matthias Andreas Benkard2013-07-181-1/+1
|
* SPECIALIZE: Use CL:EVAL rather than SB-INT:EVAL-IN-LEXENV.Matthias Andreas Benkard2013-07-181-3/+3
|
* PREPARE-PROGN: Support multiple values.Matthias Andreas Benkard2013-07-181-4/+8
|
* Fix type declaration for PREPARE-MACRO-LAMBDA.Matthias Andreas Benkard2013-07-181-1/+1
|
* Optimize PREPARE-FUNCTION-REF.Matthias Andreas Benkard2013-07-181-3/+5
|
* Add dummy function NATIVE-ENVIRONMENT->CONTEXT.Matthias Andreas Benkard2013-07-181-0/+5
|
* Fix +STACK-MAX+ usage.Matthias Andreas Benkard2013-07-181-1/+1
|
* Stack allocation: Limit size, simplify code.Matthias Andreas Benkard2013-07-181-14/+12
|
* Implement MACROLET.Matthias Andreas Benkard2013-07-181-2/+20
|
* Bug fixes and improvements.Matthias Andreas Benkard2013-07-181-7/+13
|
* PREPARE-LAMBDA: Handle &REST arguments.Matthias Andreas Benkard2013-07-181-1/+3
|
* PREPARE-LAMBDA: Handle &ALLOW-OTHER-KEYS, improve error handling, fix ↵Matthias Andreas Benkard2013-07-171-12/+29
| | | | erroneous mutation of shared closed variables.
* PREPARE-LAMBDA: Fix context.Matthias Andreas Benkard2013-07-171-2/+3
|
* LET, LET*: Fix some environment issues.Matthias Andreas Benkard2013-07-171-22/+14
|
* LET, LET*: Support globally special variables.Matthias Andreas Benkard2013-07-161-39/+86
|
* Reimplement LET* using progressive context extension.Matthias Andreas Benkard2013-07-161-25/+36
|
* PREPARE-LAMBDA: Give default argument forms LET*-like scope.Matthias Andreas Benkard2013-07-161-2/+19
|
* Add a small missed optimization.Matthias Andreas Benkard2013-07-161-1/+1
|
* Merge branch 'stack'Matthias Andreas Benkard2013-07-161-92/+316
|\ | | | | | | | | Conflicts: sb-eval2.lisp
| * PREPARE-LAMBDA: Simplify.Matthias Andreas Benkard2013-07-161-13/+13
| |
| * Remove explicit stack management.Matthias Andreas Benkard2013-07-161-205/+35
| |
| * PREPARE-LAMBDA: Support &KEY ((:keyword var) ...) syntax.Matthias Andreas Benkard2013-07-161-2/+6
| |
| * PREPARE-LAMBDA: Stack-allocate environments instead of managing a stack.Matthias Andreas Benkard2013-07-161-13/+31
| |
| * Implement lambda-lists properly.Matthias Andreas Benkard2013-07-161-24/+145
| |
| * Simplify PREPARE-LAMBDA to rely on &MORE optimization.Matthias Andreas Benkard2013-07-161-40/+17
| |
| * PREPARE-GLOBAL-CALL: Deal with redefinition by using FDEFINITION-OBJECTs.Matthias Andreas Benkard2013-07-161-21/+12
| | | | | | | | | | Conflicts: sb-eval2.lisp
| * Fix indentation.Matthias Andreas Benkard2013-07-151-3/+3
| |
| * LAMBDA: Bail out on complex lambda lists.Matthias Andreas Benkard2013-07-151-1/+3
| | | | | | | | | | Conflicts: sb-eval2.lisp
| * Merge branch 'master' into stackMatthias Andreas Benkard2013-07-151-30/+49
| |\ | | | | | | | | | | | | Conflicts: sb-eval2.lisp
| * | Add a (wrong) definition of LOAD-TIME-VALUE.Matthias Andreas Benkard2013-07-151-0/+4
| | |
| * | Specialize STACK-REF over the stack nesting depth.Matthias Andreas Benkard2013-07-151-14/+72
| | |