summaryrefslogtreecommitdiff
path: root/MLKForm.m
diff options
context:
space:
mode:
authorMatthias Andreas Benkard <matthias@benkard.de>2008-08-24 19:10:21 +0200
committerMatthias Andreas Benkard <matthias@benkard.de>2008-08-24 19:10:21 +0200
commitaa3f4a2b760c3d890aa51b3afa904ab604de794c (patch)
treec031c1242e0c1ad2ae92cf00347f36ec343065de /MLKForm.m
parentbaae263841853c289d48ce172e614171167cf1dd (diff)
parenta34b771cd9cc823260407b2905312b3be05390db (diff)
Merge mulk_benkard@ssh.phx.nearlyfreespeech.net:/home/htdocs/code/mulklisp
Diffstat (limited to 'MLKForm.m')
-rw-r--r--MLKForm.m17
1 files changed, 11 insertions, 6 deletions
diff --git a/MLKForm.m b/MLKForm.m
index c8a5416..3f529dc 100644
--- a/MLKForm.m
+++ b/MLKForm.m
@@ -18,7 +18,7 @@
#import "MLKCons.h"
#import "MLKForm.h"
-#import "MLKLLVMCompiler.h"
+#import "MLKInterpreter.h"
#import "util.h"
#import "special-symbols.h"
@@ -130,7 +130,6 @@
id car = [object car];
if (car == CATCH) return [MLKCatchForm class];
- else if (car == EVAL) return [MLKFunctionCallForm class];
else if (car == EVAL_WHEN) return [MLKEvalWhenForm class];
else if (car == _FOREIGN_LAMBDA) return [MLKForeignLambdaForm class];
else if (car == FUNCTION) return [MLKFunctionForm class];
@@ -215,6 +214,7 @@
[NSArray arrayWithObjects:
_form, context, nil]]
objectAtIndex:0]);
+ //NSLog (@"=> %@", MLKPrintToString (expansion));
return LRETAIN ([MLKForm formWithObject:expansion
inContext:context
@@ -361,11 +361,11 @@
int i;
self = [super complete];
- LASSIGN (_foreignName, [[_tail cdr] car]);
- LASSIGN (_name, [_tail car]);
- _returnType = MLKForeignTypeWithTypeDesignator ([[[_tail cdr] cdr] car]);
+ LASSIGN (_foreignName, [_tail car]);
+ LASSIGN (_foreignLibraryDesignator, [[_tail cdr] car]);
+ _returnType = MLKForeignTypeWithTypeDesignator ([[[[_tail cdr] cdr] cdr] car]);
- argtypes = [[[_tail cdr] cdr] cdr];
+ argtypes = [[[_tail cdr] cdr] car];
_argc = [argtypes length];
_argumentTypes = malloc (_argc * sizeof (MLKForeignType));
@@ -483,6 +483,11 @@
inContext:newContext];
return self;
}
+
+-(MLKSymbol *) lambdaListName
+{
+ return _lambdaListName;
+}
@end