diff options
author | Matthias Benkard <mulk@Minimulk.local> | 2008-08-24 17:03:33 +0200 |
---|---|---|
committer | Matthias Benkard <mulk@Minimulk.local> | 2008-08-24 17:03:33 +0200 |
commit | 3fd292f83ef33f8052feb22eb133d37913d33c66 (patch) | |
tree | 67ce92a5dc1e374e67c097ffcbf0c78008ab2271 /MLKInterpreter.h | |
parent | f4240af04599a9b25645ecae78e5a45b46247cca (diff) |
Refactor the interpreter so as to build upon the MLKForm class cluster.
The transition is not finished yet, so lots of things are broken right now.
Diffstat (limited to 'MLKInterpreter.h')
-rw-r--r-- | MLKInterpreter.h | 25 |
1 files changed, 15 insertions, 10 deletions
diff --git a/MLKInterpreter.h b/MLKInterpreter.h index 59e2dfd..67f7377 100644 --- a/MLKInterpreter.h +++ b/MLKInterpreter.h @@ -16,9 +16,10 @@ * along with this program. If not, see <http://www.gnu.org/licenses/>. */ -#import "MLKStream.h" +#import "MLKForm.h" #import "MLKLexicalContext.h" #import "MLKLexicalEnvironment.h" +#import "MLKStream.h" #import <Foundation/NSArray.h> #import <Foundation/NSObject.h> @@ -43,15 +44,19 @@ enum MLKProcessingMode inLexicalContext:(MLKLexicalContext *)context withEnvironment:(MLKLexicalEnvironment *)lexenv; -+(NSArray*) eval:(id)program - inLexicalContext:(MLKLexicalContext *)context - withEnvironment:(MLKLexicalEnvironment *)lexenv - expandOnly:(BOOL)expandOnly; ++(BOOL) load:(MLKStream *)stream verbose:(BOOL)verbose print:(BOOL)print; -+(NSArray*) eval:(id)program - inLexicalContext:(MLKLexicalContext *)context - withEnvironment:(MLKLexicalEnvironment *)lexenv - mode:(enum MLKProcessingMode)mode; ++(id) compile:(id)object + inContext:(MLKLexicalContext *)context; +@end -+(BOOL) load:(MLKStream *)stream verbose:(BOOL)verbose print:(BOOL)print; + +@interface MLKForm (MLKInterpretation) +-(NSArray *) interpret; +-(NSArray *) interpretWithEnvironment:(MLKLexicalEnvironment *)env; +-(NSArray *) reallyInterpretWithEnvironment:(MLKLexicalEnvironment *)env; +@end + +@interface MLKBodyForm (MLKInterpretation) +-(NSArray *) interpretBodyWithEnvironment:(MLKLexicalEnvironment *)env; @end |