spec/syntax/src: renamed directories
This commit is contained in:
parent
7933b2632c
commit
da80f1da30
|
@ -20,7 +20,7 @@ The playground depends on the components library which then depends on the langu
|
||||||
|
|
||||||
# Develop
|
# Develop
|
||||||
|
|
||||||
For any project in the repo (`packages/`), begin by running `yarn` in the top level (TODO: is this true?)
|
For any project in the repo (`packages/*`), begin by running `yarn` in the top level.
|
||||||
|
|
||||||
``` sh
|
``` sh
|
||||||
yarn
|
yarn
|
||||||
|
|
|
@ -13,7 +13,7 @@ let deps = [
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "render_squiggle-spec";
|
name = "render_squiggle-spec";
|
||||||
src = ./spec;
|
src = ./src;
|
||||||
buildInputs = deps;
|
buildInputs = deps;
|
||||||
buildPhase = ''
|
buildPhase = ''
|
||||||
echo rendering...
|
echo rendering...
|
|
@ -16,7 +16,7 @@
|
||||||
url = {https://craftinginterpreters.com/contents.html}
|
url = {https://craftinginterpreters.com/contents.html}
|
||||||
}
|
}
|
||||||
@article{@SqgSequence,
|
@article{@SqgSequence,
|
||||||
author = {Ozzie Gooen, Nuno Sempere},
|
author = {Ozzie Gooen and Nuno Sempere},
|
||||||
title = {Squiggle (Sequence)},
|
title = {Squiggle (Sequence)},
|
||||||
year = {2020},
|
year = {2020},
|
||||||
url = {https://www.lesswrong.com/s/rDe8QE5NvXcZYzgZ3}
|
url = {https://www.lesswrong.com/s/rDe8QE5NvXcZYzgZ3}
|
|
@ -6,7 +6,7 @@ The current document is a formal description of the syntax that Squiggle will ta
|
||||||
|
|
||||||
For an informal story of what we are about to see, consult \cite{@SqgCodePlan}.
|
For an informal story of what we are about to see, consult \cite{@SqgCodePlan}.
|
||||||
|
|
||||||
We proceed by a BNF (\cite{@BNFWiki}), and take nods about how to communicate about programming languages from \cite{@CraftingInterpreters}, neglecting lessons from \cite{@PFPL}.
|
We proceed by a BNF (\cite{@BNFWiki}), and take nods about how to communicate about programming languages from \cite{@CraftingInterpreters, Appendix I}, neglecting lessons from \cite{@PFPL}.
|
||||||
|
|
||||||
\subsection{Design goals}
|
\subsection{Design goals}
|
||||||
|
|
|
@ -9,6 +9,7 @@ At a high level, we will first be slightly dishonest because the different types
|
||||||
|
|
||||||
|
|
||||||
\subsection{THE FOLLOWING IS HERE FOR TEMPLATE SO I DON'T FORGET HOW TO BNF IN LATEX. }
|
\subsection{THE FOLLOWING IS HERE FOR TEMPLATE SO I DON'T FORGET HOW TO BNF IN LATEX. }
|
||||||
|
|
||||||
In regex notation, we provide the following means of describing literals as well as the specification of the constants T and F.
|
In regex notation, we provide the following means of describing literals as well as the specification of the constants T and F.
|
||||||
\begin{center}
|
\begin{center}
|
||||||
\begin{tabular}{c c c}
|
\begin{tabular}{c c c}
|
||||||
|
@ -23,7 +24,6 @@ In regex notation, we provide the following means of describing literals as well
|
||||||
\end{center}
|
\end{center}
|
||||||
\label{tab:atomsregex}
|
\label{tab:atomsregex}
|
||||||
|
|
||||||
Additionally, we have builtins as follows, (with semantics given in \ref{section:dynamics}). \textbf{Morgan: should a let ast node be in this list of builtins??}
|
|
||||||
\begin{grammar}
|
\begin{grammar}
|
||||||
<builtin> ::=
|
<builtin> ::=
|
||||||
"AddInteger" \alt "SubtractInteger" \alt "MultiplyInteger"
|
"AddInteger" \alt "SubtractInteger" \alt "MultiplyInteger"
|
||||||
|
@ -41,11 +41,4 @@ Additionally, we have builtins as follows, (with semantics given in \ref{section
|
||||||
\alt "EqualsData" \alt "MkPairData" \alt "MkNilData" \alt "MkNilPairData"
|
\alt "EqualsData" \alt "MkPairData" \alt "MkNilData" \alt "MkNilPairData"
|
||||||
\end{grammar}
|
\end{grammar}
|
||||||
|
|
||||||
Many of which have syntax sugars for infix application, like so
|
|
||||||
\begin{grammar}
|
|
||||||
<infixbuiltin> ::=
|
|
||||||
"+i" \alt "-i" \alt "*i" \alt "/i" \alt "//i" \alt $\%$"i" \alt "==i" \alt "lti" \alt $\leq$"i" \alt "+b" \alt ":b" \alt "!b" \alt "==b" \alt "ltb" \alt $\leq$"b" \alt "+s" \alt "==s" \alt "==d"
|
|
||||||
\end{grammar}
|
|
||||||
\textit{Sorry, having trouble getting lessthan sign to render rn}. In the small step dynamics given in \ref{section:dynamics}, only abstract syntax (i.e. $<builtin>$) will be provided, not concrete syntax (i.e. including sugar).
|
|
||||||
|
|
||||||
\end{document}
|
\end{document}
|
Loading…
Reference in New Issue
Block a user