thaw-grammar
Version:
Implementations of the grammars of several programming languages, including LISP, Scheme, Prolog, and the Lambda Calculus.
15 lines • 975 B
TypeScript
import { GrammarSymbol, IToken, SemanticStackType } from 'thaw-interpreter-types';
import { Name } from 'thaw-interpreter-core';
import { IExpression } from '../../common/domain-object-model/iexpression';
import { IVariable } from '../../common/domain-object-model/variable';
import { GrammarBase } from 'thaw-interpreter-core';
import { ISExpression } from './domain-object-model/isexpression';
export declare class LISPGrammar extends GrammarBase {
constructor();
get languageName(): string;
executeSemanticAction(semanticStack: SemanticStackType, action: string): void;
tokenToSymbol(token: IToken): GrammarSymbol;
pushTokenOntoSemanticStack(semanticStack: SemanticStackType, tokenAsSymbol: GrammarSymbol, token: IToken): void;
protected createLetUsage(letName: Name, varExprList: [IVariable<ISExpression>, IExpression<ISExpression>][], expression: IExpression<ISExpression>): IExpression<ISExpression>;
}
//# sourceMappingURL=lisp-grammar.d.ts.map