diff --git a/doc/spec/spec.tex b/doc/spec/spec.tex index 9994f33eb..241706982 100644 --- a/doc/spec/spec.tex +++ b/doc/spec/spec.tex @@ -72,11 +72,12 @@ \renewcommand{\emptyset}{\varnothing} \newcommand{\dom}[1]{\mathtt{dom}\;{#1}} \newcommand{\primi}[2]{\mathbf{#1}\;{#2}} -\newcommand{\sial}{S\textit{\lower -.5ex\hbox{I}\kern -.1667em\lower .5ex\hbox {A}}\kern -.125emL\@\xspace} +\newcommand{\lama}{$\lambda\mbox{\textsc{Algol}}$\xspace} +%\newcommand{\sial}{S\textit{\lower -.5ex\hbox{I}\kern -.1667em\lower .5ex\hbox {A}}\kern -.125emL\@\xspace} \definecolor{light-gray}{gray}{0.90} \newcommand{\graybox}[1]{\colorbox{light-gray}{#1}} -\lstdefinelanguage{sial}{ +\lstdefinelanguage{lama}{ keywords={fun, case, esac, do, od, if, then, else, elif, fi, skip, repeat, until, for, local}, sensitive=true, %basicstyle=\small, @@ -99,12 +100,12 @@ commentstyle=\scriptsize\rmfamily, basewidth={0.5em,0.5em}, fontadjust=true, escapechar=!, -language=sial +language=lama } \sloppy -\title{\sial Language Definition} +\title{\lama Language Definition} \author{Dmitry Boulytchev} diff --git a/stdlib/Ostap.expr b/stdlib/Ostap.expr index 6b3b8ad45..1068b4de9 100644 --- a/stdlib/Ostap.expr +++ b/stdlib/Ostap.expr @@ -101,7 +101,7 @@ fun seq (a, b) { --infixr |> after | (a, b) {seq (a, b)} infixr || before !! (a, b) {alt_k (a, b)} -infixr ||> after || (a, b) {seq_nm (a, b)} +infixr ||> after || (a, b) {seq_k (a, b)} infix @ at * (a, f) { fun (k) { @@ -171,8 +171,8 @@ local a = token_k ("a"); local as = memo ( fun (k) { - (empty_k || (as ||> a)) (k) + (empty_k @ fun (x) {""} || as ||> fun(as) {a @ fun (a) {as ++ a}}) $ k } ); -as (print) ({"a", "a"}) \ No newline at end of file +(as ||> fun (as) {eof_k @ lift (as)}) (print) ({"a", "a"}) \ No newline at end of file