资 源 简 介
About Jigsaw
Jigsaw is a C# library that makes building programming language tools easier. For example parsers, interpreters, translators, validators, type-checkers, pretty-printers, and so on.
At the heart of Jigsaw is a PEG PackRat parsing engine. In other words it is a recursive descent parser which uses memoization. This parsing engine is the evolution of the parsing engines used in Heron and Cat programming languages.
Included with Jigsaw are classes which facilitate writing evaluators, pretty printers, tree transformers, and expression tree compilers.
For an introduction on how to use Jigsaw see the article Implementing Programming Languages using C# at CodeProject.com
Related Project
There are a large number of related projects on the internet. Some of th
文 件 列 表
Jigsaw.csproj
Jigsaw.sln
Jigsaw.suo
Program.cs
TheoremProver.cs
Compilers
.svn
CodeDOMCompilers.cs
CSharpFunctionCompiler.cs
ExpressionCompiler.cs
ILCompiler.cs
JavaScriptExpressionCompiler.cs
SchemeExpressionCompiler.cs
.svn
all-wcprops
entries
all-wcprops
entries
all-wcprops
entries
all-wcprops
entries
all-wcprops
entries
all-wcprops
entries
all-wcprops
entries
all-wcprops
entries
all-wcprops
entries
Evaluators
.svn
ArithmeticEvaluator.cs
CatEvaluator.cs
Evaluator.cs
JavaScriptEvaluator.cs
JsonObject.cs
PostfixCalculator.cs
Grammars
.svn
ArithmeticGrammar.cs
CatGrammar.cs
CSharpExprGrammar.cs
CSharpLiteralsGrammar.cs
CSVGrammar.cs
ILGrammar.cs
JavaScriptGrammar.cs
JsonGrammar.cs
SchemeGrammar.cs
SExpressionGrammar.cs
SharedGrammar.cs
Parsing
.svn
Grammar.cs
ParserState.cs
ParseTree.cs
Rule.cs
Printers
JavaScriptSourcePrinter.cs
Printer.cs
Properties
.svn
AssemblyInfo.cs
Sandbox
.svn
CalculatorGrammar.cs
CGrammar.cs
Circuits.cs
CssGrammar.cs
Currying.cs
DoxygenGrammar.cs
HtmlGrammar.cs
JavaGrammar.cs
LeftRecursion.cs
ListFusion.cs
LuaGrammar.cs
ObserverPattern.cs
PPGrammar.cs
PythonGrammar.cs
RTFGrammar.cs
ScalaGrammar.cs
SECDMachine.cs
TabDelimitedGrammar.cs
XmlGrammar.cs
Tests
.svn
ArithmeticTests.cs
CatTests.cs
CodeDOMCompilerTests.cs
CodeProjectArticleSnippets.cs
CSharpFunctionCompilerTests.cs
GrammarTest.cs
ILTests.cs
JavaScriptCompilerTests.cs
JavaScriptTests.cs
JsonTests.cs
SchemeTests.cs
SExprTests.cs
UnifierTests.cs
Theory
.svn
EmbeddedLambdaCalculus.cs
EmbeddedScheme.cs
SKCalculus.cs
Transformers
JavaScriptTransformer.cs
TreeTransformer.cs
Utilities
.svn
Extensions.cs
List.cs
Primitives.cs
Unifier.cs
Utilities.cs
VarBindings.cs