Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #! /bin/bash
- # I, the copyright holder of this work, hereby release it into the public
- # domain. This applies worldwide.
- set -e
- cat<<EOF > right-recursive-parse-of-a-double-subtraction.mp
- prologues:=2;
- verbatimtex
- \documentclass{article}
- \begin{document}
- etex
- ;
- def connect(expr u, v)=
- pair toward;
- toward := unitvector (v - u);
- toward := toward * 8 / abs(ypart toward);
- draw (u+toward)--(v-toward);
- enddef;
- beginfig(0)
- pickup pencircle;
- xs := 60;
- ys := 30;
- pair a[];
- a0 := (0, 0) xscaled xs yscaled ys;
- a1 := (-1, -1) xscaled xs yscaled ys;
- a2 := (1, -1) xscaled xs yscaled ys;
- a3 := (-1, -2) xscaled xs yscaled ys;
- a4 := (0, -2) xscaled xs yscaled ys;
- a5 := (1, -2) xscaled xs yscaled ys;
- a6 := (3, -2) xscaled xs yscaled ys;
- a7 := (-1, -3) xscaled xs yscaled ys;
- a8 := (1, -3) xscaled xs yscaled ys;
- a9 := (2, -3) xscaled xs yscaled ys;
- a10 := (3, -3) xscaled xs yscaled ys;
- a11 := (4, -3) xscaled xs yscaled ys;
- a12 := (1, -4) xscaled xs yscaled ys;
- a13 := (3, -4) xscaled xs yscaled ys;
- a14 := (4, -4) xscaled xs yscaled ys;
- a15 := (3, -5) xscaled xs yscaled ys;
- label(btex \(\mathit{Expression}\) etex, a0);
- label(btex \(\mathit{Term}\) etex, a1);
- label(btex \(\mathit{Expression}'\) etex, a2);
- label(btex \(\mathit{Factor}\) etex, a3);
- label(btex \(-\) etex, a4);
- label(btex \(\mathit{Term}\) etex, a5);
- label(btex \(\mathit{Expression}'\) etex, a6);
- label(btex \(\mathit{Integer}\) etex, a7);
- label(btex \(\mathit{Factor}\) etex, a8);
- label(btex \(-\) etex, a9);
- label(btex \(\mathit{Term}\) etex, a10);
- label(btex \(\mathit{Expression}'\) etex, a11);
- label(btex \(\mathit{Integer}\) etex, a12);
- label(btex \(\mathit{Factor}\) etex, a13);
- label(btex \(\epsilon\) etex, a14);
- label(btex \(\mathit{Integer}\) etex, a15);
- connect(a0, a1);
- connect(a0, a2);
- connect(a1, a3);
- connect(a2, a4);
- connect(a2, a5);
- connect(a2, a6);
- connect(a3, a7);
- connect(a5, a8);
- connect(a6, a9);
- connect(a6, a10);
- connect(a6, a11);
- connect(a8, a12);
- connect(a10, a13);
- connect(a11, a14);
- connect(a13, a15);
- endfig;
- bye;
- EOF
- cat<<EOF > right-recursive-parse-of-a-double-subtraction.tex
- \documentclass{article}
- \usepackage[paperwidth=26cm,paperheight=13cm,text={26cm,13cm}]{geometry}
- \usepackage{graphicx}
- \pagestyle{empty}
- \begin{document}
- \hbox{}
- \centerline{\convertMPtoPDF{\jobname.0}{2}{2}}
- \end{document}
- EOF
- mpost right-recursive-parse-of-a-double-subtraction
- pdflatex right-recursive-parse-of-a-double-subtraction
- convert right-recursive-parse-of-a-double-subtraction.pdf right-recursive-parse-of-a-double-subtraction.png
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement