Skip to content

Commit

Permalink
added generated documentation
Browse files Browse the repository at this point in the history
  • Loading branch information
LorenzoBettini committed Jun 14, 2018
1 parent 228f75e commit 04fa367
Show file tree
Hide file tree
Showing 14 changed files with 5,459 additions and 13 deletions.
13 changes: 0 additions & 13 deletions doc/org.eclipse.xsemantics.doc/contents/.gitignore

This file was deleted.

137 changes: 137 additions & 0 deletions doc/org.eclipse.xsemantics.doc/contents/00-Main.html
@@ -0,0 +1,137 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" >
<title>Xsemantics Documentation</title>

<link href="book.css" rel="stylesheet" type="text/css">
<link href="code.css" rel="stylesheet" type="text/css">
<link rel="home" href="00-Main.html" title="">
</head>
<body>
<h1>Xsemantics Documentation</h1>
<ol><li><a href="00-Main_12.html#Xsemantics%20Documentation_12">Reference Documentation</a>
<ol> <li><a href="01-Introduction.html#Introduction">Introduction</a>
</li>
<li><a href="02-GettingStarted.html#GettingStarted">Getting Started</a>
<ol> <li><a href="02-GettingStarted.html#Install">Installation of Xsemantics</a>
<ol> <li><a href="02-GettingStarted.html#Sources">Sources</a>
</li>
</ol></li>
<li><a href="02-GettingStarted.html#UsingXsemantics">Using Xsemantics</a>
</li>
<li><a href="02-GettingStarted.html#UsingXsemanticsMaven">Using Xsemantics in Maven builds</a>
</li>
</ol></li>
<li><a href="XsemanticsSyntax.html#Syntax">Xsemantics Syntax</a>
<ol> <li><a href="XsemanticsSyntax.html#Imports">Imports</a>
</li>
<li><a href="XsemanticsSyntax.html#Copyright">Copyright</a>
</li>
<li><a href="XsemanticsSyntax.html#Fields">Fields</a>
</li>
<li><a href="XsemanticsSyntax.html#Judgments">Judgments</a>
</li>
<li><a href="XsemanticsSyntax.html#Premises">Premises</a>
<ol> <li><a href="XsemanticsSyntax.html#OrBlocks">Or Blocks</a>
</li>
<li><a href="XsemanticsSyntax.html#ExpressionsInPremises">Expressions in Premises</a>
</li>
<li><a href="XsemanticsSyntax.html#RuleInvocations">Rule Invocations</a>
</li>
<li><a href="XsemanticsSyntax.html#Environment">Rule Environment</a>
</li>
<li><a href="XsemanticsSyntax.html#ErrorSpecification">Error Specification</a>
</li>
<li><a href="XsemanticsSyntax.html#ExplicitFailure">Explicit Failure</a>
</li>
<li><a href="XsemanticsSyntax.html#PreviousFailure">Accessing Previous Failure of an Or Block</a>
</li>
<li><a href="XsemanticsSyntax.html#StringRepresentation">String Representation</a>
</li>
<li><a href="XsemanticsSyntax.html#GetAll">Graph Closures (getAll)</a>
</li>
</ol></li>
<li><a href="XsemanticsSyntax.html#Auxiliary">Auxiliary Functions</a>
</li>
<li><a href="XsemanticsSyntax.html#CheckRules">Rules for Validator: checkrule</a>
</li>
<li><a href="XsemanticsSyntax.html#SystemExtension">Extend another System</a>
</li>
<li><a href="XsemanticsSyntax.html#CodeGeneration">Generated Code</a>
<ol> <li><a href="XsemanticsSyntax.html#GeneratedPackage">The Generated Java Packages</a>
</li>
<li><a href="XsemanticsSyntax.html#GeneratedSystem">The Generated Java Rule System</a>
</li>
<li><a href="XsemanticsSyntax.html#GeneratedValidator">The Generated Java Validator</a>
<ol> <li><a href="XsemanticsSyntax.html#validatorExtends">The validatorExtends clause</a>
</li>
<li><a href="XsemanticsSyntax.html#withoutValidatorExtends">Without the validatorExtends clause</a>
</li>
</ol></li>
<li><a href="XsemanticsSyntax.html#ErrorGeneration">Error Marker Generation</a>
</li>
</ol></li>
<li><a href="XsemanticsSyntax.html#Caching">Automatic Caching</a>
</li>
</ol></li>
</ol></li>
<li><a href="00-Main_13.html#Xsemantics%20Documentation_13">Examples</a>
<ol> <li><a href="Examples.html#Examples">Examples</a>
</li>
<li><a href="Expressions-example.html#Expressions">An Expression Language</a>
<ol> <li><a href="Expressions-example.html#ExpressionsTS">Expressions Type System</a>
<ol> <li><a href="Expressions-example.html#ExpressionsInfer">Type Inference for Variables</a>
</li>
</ol></li>
<li><a href="Expressions-example.html#ExpressionsValidation">Expressions Validation</a>
</li>
<li><a href="Expressions-example.html#ExpressionsInterpreter">Interpreter for Expressions</a>
</li>
<li><a href="Expressions-example.html#ExpressionsCustomization">Customizations for Expressions</a>
</li>
<li><a href="Expressions-example.html#MoreInvolvedExpressionsSystem">A more involved Expressions System</a>
</li>
<li><a href="Expressions-example.html#ExpressionsCodeGeneration">Generation for Expressions</a>
</li>
</ol></li>
<li><a href="FJ-example.html#FJ">Featherweight Java</a>
<ol> <li><a href="FJ-example.html#FJInANutshell">FJ in a nutshell</a>
</li>
<li><a href="FJ-example.html#FJInXtext">FJ implemented in Xtext</a>
</li>
<li><a href="FJ-example.html#FJTypeSystem">FJ Type System</a>
<ol> <li><a href="FJ-example.html#FJTyping">Typing FJ Expressions</a>
</li>
<li><a href="FJ-example.html#FJScoping">FJ Scoping</a>
</li>
<li><a href="FJ-example.html#FJSubTyping">FJ Subtyping</a>
</li>
</ol></li>
<li><a href="FJ-example.html#FJValidation">FJ Validation</a>
</li>
<li><a href="FJ-example.html#FJReduction">FJ Operational Semantics</a>
</li>
</ol></li>
<li><a href="Lambda-example.html#Lambda">Lambda</a>
<ol> <li><a href="Lambda-example.html#LambdaInANutshell">Lambda in a nutshell</a>
</li>
<li><a href="Lambda-example.html#LambdaInXtext">Lambda implemented in Xtext</a>
</li>
<li><a href="Lambda-example.html#LambdaTypeSystem">Lambda Type Inference</a>
<ol> <li><a href="Lambda-example.html#WhyCloning">Why Cloning?</a>
</li>
</ol></li>
<li><a href="Lambda-example.html#LambdaChecking">Lambda Type Checking</a>
</li>
<li><a href="Lambda-example.html#LambdaCustomization">Customizations for Lambda</a>
</li>
<li><a href="Lambda-example.html#LambdaTypeInferenceIDE">Use of Type Inference in the IDE</a>
</li>
</ol></li>
</ol></li>
<li><a href="00-Main_14.html#Xsemantics%20Documentation_14">Appendix</a>
<ol> <li><a href="GettingSources.html#GettingSources">Getting Sources</a>
</li>
</ol></li>
</ol></body>
</html>
78 changes: 78 additions & 0 deletions doc/org.eclipse.xsemantics.doc/contents/00-Main_12.html
@@ -0,0 +1,78 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" >
<title>Reference Documentation</title>

<link href="book.css" rel="stylesheet" type="text/css">
<link href="code.css" rel="stylesheet" type="text/css">
<link rel="home" href="00-Main.html" title="">
</head>
<body>
<a name="Xsemantics%20Documentation_12"></a>
<h1>Reference Documentation</h1>
<ol><li><a href="01-Introduction.html#Introduction">Introduction</a>
</li>
<li><a href="02-GettingStarted.html#GettingStarted">Getting Started</a>
<ol> <li><a href="02-GettingStarted.html#Install">Installation of Xsemantics</a>
<ol> <li><a href="02-GettingStarted.html#Sources">Sources</a>
</li>
</ol></li>
<li><a href="02-GettingStarted.html#UsingXsemantics">Using Xsemantics</a>
</li>
<li><a href="02-GettingStarted.html#UsingXsemanticsMaven">Using Xsemantics in Maven builds</a>
</li>
</ol></li>
<li><a href="XsemanticsSyntax.html#Syntax">Xsemantics Syntax</a>
<ol> <li><a href="XsemanticsSyntax.html#Imports">Imports</a>
</li>
<li><a href="XsemanticsSyntax.html#Copyright">Copyright</a>
</li>
<li><a href="XsemanticsSyntax.html#Fields">Fields</a>
</li>
<li><a href="XsemanticsSyntax.html#Judgments">Judgments</a>
</li>
<li><a href="XsemanticsSyntax.html#Premises">Premises</a>
<ol> <li><a href="XsemanticsSyntax.html#OrBlocks">Or Blocks</a>
</li>
<li><a href="XsemanticsSyntax.html#ExpressionsInPremises">Expressions in Premises</a>
</li>
<li><a href="XsemanticsSyntax.html#RuleInvocations">Rule Invocations</a>
</li>
<li><a href="XsemanticsSyntax.html#Environment">Rule Environment</a>
</li>
<li><a href="XsemanticsSyntax.html#ErrorSpecification">Error Specification</a>
</li>
<li><a href="XsemanticsSyntax.html#ExplicitFailure">Explicit Failure</a>
</li>
<li><a href="XsemanticsSyntax.html#PreviousFailure">Accessing Previous Failure of an Or Block</a>
</li>
<li><a href="XsemanticsSyntax.html#StringRepresentation">String Representation</a>
</li>
<li><a href="XsemanticsSyntax.html#GetAll">Graph Closures (getAll)</a>
</li>
</ol></li>
<li><a href="XsemanticsSyntax.html#Auxiliary">Auxiliary Functions</a>
</li>
<li><a href="XsemanticsSyntax.html#CheckRules">Rules for Validator: checkrule</a>
</li>
<li><a href="XsemanticsSyntax.html#SystemExtension">Extend another System</a>
</li>
<li><a href="XsemanticsSyntax.html#CodeGeneration">Generated Code</a>
<ol> <li><a href="XsemanticsSyntax.html#GeneratedPackage">The Generated Java Packages</a>
</li>
<li><a href="XsemanticsSyntax.html#GeneratedSystem">The Generated Java Rule System</a>
</li>
<li><a href="XsemanticsSyntax.html#GeneratedValidator">The Generated Java Validator</a>
<ol> <li><a href="XsemanticsSyntax.html#validatorExtends">The validatorExtends clause</a>
</li>
<li><a href="XsemanticsSyntax.html#withoutValidatorExtends">Without the validatorExtends clause</a>
</li>
</ol></li>
<li><a href="XsemanticsSyntax.html#ErrorGeneration">Error Marker Generation</a>
</li>
</ol></li>
<li><a href="XsemanticsSyntax.html#Caching">Automatic Caching</a>
</li>
</ol></li>
</ol></body>
</html>
66 changes: 66 additions & 0 deletions doc/org.eclipse.xsemantics.doc/contents/00-Main_13.html
@@ -0,0 +1,66 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" >
<title>Examples</title>

<link href="book.css" rel="stylesheet" type="text/css">
<link href="code.css" rel="stylesheet" type="text/css">
<link rel="home" href="00-Main.html" title="">
</head>
<body>
<a name="Xsemantics%20Documentation_13"></a>
<h1>Examples</h1>
<ol><li><a href="Examples.html#Examples">Examples</a>
</li>
<li><a href="Expressions-example.html#Expressions">An Expression Language</a>
<ol> <li><a href="Expressions-example.html#ExpressionsTS">Expressions Type System</a>
<ol> <li><a href="Expressions-example.html#ExpressionsInfer">Type Inference for Variables</a>
</li>
</ol></li>
<li><a href="Expressions-example.html#ExpressionsValidation">Expressions Validation</a>
</li>
<li><a href="Expressions-example.html#ExpressionsInterpreter">Interpreter for Expressions</a>
</li>
<li><a href="Expressions-example.html#ExpressionsCustomization">Customizations for Expressions</a>
</li>
<li><a href="Expressions-example.html#MoreInvolvedExpressionsSystem">A more involved Expressions System</a>
</li>
<li><a href="Expressions-example.html#ExpressionsCodeGeneration">Generation for Expressions</a>
</li>
</ol></li>
<li><a href="FJ-example.html#FJ">Featherweight Java</a>
<ol> <li><a href="FJ-example.html#FJInANutshell">FJ in a nutshell</a>
</li>
<li><a href="FJ-example.html#FJInXtext">FJ implemented in Xtext</a>
</li>
<li><a href="FJ-example.html#FJTypeSystem">FJ Type System</a>
<ol> <li><a href="FJ-example.html#FJTyping">Typing FJ Expressions</a>
</li>
<li><a href="FJ-example.html#FJScoping">FJ Scoping</a>
</li>
<li><a href="FJ-example.html#FJSubTyping">FJ Subtyping</a>
</li>
</ol></li>
<li><a href="FJ-example.html#FJValidation">FJ Validation</a>
</li>
<li><a href="FJ-example.html#FJReduction">FJ Operational Semantics</a>
</li>
</ol></li>
<li><a href="Lambda-example.html#Lambda">Lambda</a>
<ol> <li><a href="Lambda-example.html#LambdaInANutshell">Lambda in a nutshell</a>
</li>
<li><a href="Lambda-example.html#LambdaInXtext">Lambda implemented in Xtext</a>
</li>
<li><a href="Lambda-example.html#LambdaTypeSystem">Lambda Type Inference</a>
<ol> <li><a href="Lambda-example.html#WhyCloning">Why Cloning?</a>
</li>
</ol></li>
<li><a href="Lambda-example.html#LambdaChecking">Lambda Type Checking</a>
</li>
<li><a href="Lambda-example.html#LambdaCustomization">Customizations for Lambda</a>
</li>
<li><a href="Lambda-example.html#LambdaTypeInferenceIDE">Use of Type Inference in the IDE</a>
</li>
</ol></li>
</ol></body>
</html>
16 changes: 16 additions & 0 deletions doc/org.eclipse.xsemantics.doc/contents/00-Main_14.html
@@ -0,0 +1,16 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" >
<title>Appendix</title>

<link href="book.css" rel="stylesheet" type="text/css">
<link href="code.css" rel="stylesheet" type="text/css">
<link rel="home" href="00-Main.html" title="">
</head>
<body>
<a name="Xsemantics%20Documentation_14"></a>
<h1>Appendix</h1>
<ol><li><a href="GettingSources.html#GettingSources">Getting Sources</a>
</li>
</ol></body>
</html>
44 changes: 44 additions & 0 deletions doc/org.eclipse.xsemantics.doc/contents/01-Introduction.html
@@ -0,0 +1,44 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" >
<title>Introduction</title>

<link href="book.css" rel="stylesheet" type="text/css">
<link href="code.css" rel="stylesheet" type="text/css">
<link rel="home" href="00-Main.html" title="">
</head>
<body>
<a name="Introduction"></a>
<h1>Introduction</h1>
<p>
Xsemantics is a DSL (implemented in Xtext itself) for writing type systems,
reduction rules, interpreters (and in general relation rules) for languages
implemented in Xtext.
A system definition in Xsemantics is a set of judgment rules which have a
conclusion and a set of premises; these rules can act on any
Java object, though, typically, they will act on EObjects which are
elements of your Xtext language.
Xsemantics then generates Java code that can be used in your language implemented
in Xtext for scoping and validation (it also generates a validator in Java).
</p>
<p>
Xsemantics&apos; language relies on Xbase, so that you have a rich
syntax for the rules of your system, and you have access to all Java!
You might want to take a look at <a href="http://www.eclipse.org/Xtext/documentation/2_1_0/199e-xbase-language-reference.php">Xbase
language reference</a> before you start using Xsemantics.
</p>
<p>
Xsemantics is thought to be used by people who are at least a little familiar
with formal type systems and operational semantics: it aims at providing
a syntax which is close to the way deduction rules are written in a formal setting.
Actually, Xsemantics rules are written in the other direction with respect
to standard deduction rules: the conclusion come before the premises; this is just
to make IDE tooling work better, and to give a more "programming" style to rules.
</p>
<p>
In the following we will first give a brief description of
the shape of syntactic elements of Xsemantics, and then we will continue
with some examples.
</p>
</body>
</html>

0 comments on commit 04fa367

Please sign in to comment.