\ifglsentryexists{dag}{}% {% \gls@defglossaryentry{dag}% {% name={DAG},% sort={DAG},% type={main},% first={DAG},% firstplural={DAGs},% text={DAG},% plural={DAGs},% description={Directed Acyclic Graph},% descriptionplural={Directed Acyclic Graph},% symbol={\relax },% symbolplural={\relax },% user1={},% user2={},% user3={},% user4={},% user5={},% user6={},% long={},% longplural={},% short={},% shortplural={},% counter={page},% parent={},% % }% }% \ifglsentryexists{ast}{}% {% \gls@defglossaryentry{ast}% {% name={AST},% sort={AST},% type={main},% first={AST},% firstplural={ASTs},% text={AST},% plural={ASTs},% description={Abstract Syntax Tree, an abstract representation of source code as a tree},% descriptionplural={Abstract Syntax Tree, an abstract representation of source code as a tree},% symbol={\relax },% symbolplural={\relax },% user1={},% user2={},% user3={},% user4={},% user5={},% user6={},% long={},% longplural={},% short={},% shortplural={},% counter={page},% parent={},% % }% }% \ifglsentryexists{ssa}{}% {% \gls@defglossaryentry{ssa}% {% name={SSA},% sort={SSA},% type={main},% first={SSA},% firstplural={SSAs},% text={SSA},% plural={SSAs},% description={Single Static Assignment, an intermediate representation between the AST and the compiled binary that simplifies and improves compiler optimisations},% descriptionplural={Single Static Assignment, an intermediate representation between the AST and the compiled binary that simplifies and improves compiler optimisations},% symbol={\relax },% symbolplural={\relax },% user1={},% user2={},% user3={},% user4={},% user5={},% user6={},% long={},% longplural={},% short={},% shortplural={},% counter={page},% parent={},% % }% }% \ifglsentryexists{copy-by-value}{}% {% \gls@defglossaryentry{copy-by-value}% {% name={copy by value},% sort={copy by value},% type={main},% first={copy by value},% firstplural={copy by values},% text={copy by value},% plural={copy by values},% description={Copy by value refers to the argument-passing style where the supplied arguments are copied. To pass references in Go, the developer needs to use pointers instead},% descriptionplural={Copy by value refers to the argument-passing style where the supplied arguments are copied. To pass references in Go, the developer needs to use pointers instead},% symbol={\relax },% symbolplural={\relax },% user1={},% user2={},% user3={},% user4={},% user5={},% user6={},% long={},% longplural={},% short={},% shortplural={},% counter={page},% parent={},% % }% }% \ifglsentryexists{ebnf}{}% {% \gls@defglossaryentry{ebnf}% {% name={EBNF},% sort={EBNF},% type={main},% first={EBNF},% firstplural={EBNFs},% text={EBNF},% plural={EBNFs},% description={Extended Backus-Naur Form, an extended version of the `Backus-Naur Form, a notation technique to describe programming language syntax},% descriptionplural={Extended Backus-Naur Form, an extended version of the `Backus-Naur Form, a notation technique to describe programming language syntax},% symbol={\relax },% symbolplural={\relax },% user1={},% user2={},% user3={},% user4={},% user5={},% user6={},% long={},% longplural={},% short={},% shortplural={},% counter={page},% parent={},% % }% }% \ifglsentryexists{stdout}{}% {% \gls@defglossaryentry{stdout}% {% name={stdout},% sort={stdout},% type={main},% first={stdout},% firstplural={stdouts},% text={stdout},% plural={stdouts},% description={Standard Output, the default output stream for programs},% descriptionplural={Standard Output, the default output stream for programs},% symbol={\relax },% symbolplural={\relax },% user1={},% user2={},% user3={},% user4={},% user5={},% user6={},% long={},% longplural={},% short={},% shortplural={},% counter={page},% parent={},% % }% }% \ifglsentryexists{sumtypes}{}% {% \gls@defglossaryentry{sumtypes}% {% name={sum types},% sort={sum types},% type={main},% first={sum types},% firstplural={sum typess},% text={sum types},% plural={sum typess},% description={Sum types, often also called aggregated types, variant or tagged union is a data structure that can hold one of several, predefined data types. For example, Haskell's \mintinline {haskell}|Either| holds either a value of type A or type B. Similar to that, \mintinline {haskell}|Maybe| can hold either a concrete value, or `Nothing'},% descriptionplural={Sum types, often also called aggregated types, variant or tagged union is a data structure that can hold one of several, predefined data types. For example, Haskell's \mintinline {haskell}|Either| holds either a value of type A or type B. Similar to that, \mintinline {haskell}|Maybe| can hold either a concrete value, or `Nothing'},% symbol={\relax },% symbolplural={\relax },% user1={},% user2={},% user3={},% user4={},% user5={},% user6={},% long={},% longplural={},% short={},% shortplural={},% counter={page},% parent={},% % }% }%