Changeset 223b631
- Timestamp:
- Mar 13, 2024, 11:52:35 AM (9 months ago)
- Branches:
- master
- Children:
- 2583407, 54af365, df78cce
- Parents:
- 6337916
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
doc/theses/jiada_liang_MMath/relatedwork.tex
r6337916 r223b631 16 16 Values of algebraic types are access by subscripting, field qualification, or type (pattern) matching. 17 17 18 Enumeration types exist in many popular programming languages, both past and present, \eg Pascal~\cite{Pascal}, Ada~\cite{Ada}, \Csharp~\cite{Csharp}, Haskell~\cite{Haskell} \CC, Go~\cite{Go}, Java~\cite{Java}, Modula-3~\cite{Modula-3}, Rust~\cite{Rust}, Swift~\cite{Swift}, Python~\cite{Python}.18 Enumeration types exist in many popular programming languages, both past and present, \eg Pascal~\cite{Pascal}, Ada~\cite{Ada}, \Csharp~\cite{Csharp}, OCaml~\cite{OCaml} \CC, Go~\cite{Go}, Java~\cite{Java}, Modula-3~\cite{Modula-3}, Rust~\cite{Rust}, Swift~\cite{Swift}, Python~\cite{Python}. 19 19 Among theses languages, there are a large set of overlapping features, but each language has its own unique extensions and restrictions. 20 20 … … 2465 2465 \lstnewenvironment{ocaml}[1][]{\lstset{language=OCaml,escapechar=\$,moredelim=**[is][\color{red}]{@}{@},}\lstset{#1}}{} 2466 2466 2467 OCaml ~\cite{Ocaml}provides a variant (union) type, where multiple heterogeneously-typed objects share the same storage.2467 OCaml provides a variant (union) type, where multiple heterogeneously-typed objects share the same storage. 2468 2468 The simplest form of the variant type is a list of nullary datatype constructors, which is like an unscoped, pure enumeration. 2469 2469 \begin{ocaml} … … 2554 2554 - Gregor Richards 2555 2555 \end{comment} 2556 2557 2558 \section{Comparison} 2559 2560 \begin{tabular}{r|ccccccccc} 2561 feat. / lang. & Pascal & Ada & \Csharp & OCaml & Java & Modula-3 & Rust & Swift & Python \\ 2562 \hline 2563 pure & & & & & & & & & \\ 2564 ordered & & & & & & & & & \\ 2565 setable & & & & & & & & & \\ 2566 auto-init & & & & & & & & & \\ 2567 scoped & & & & & & & & & \\ 2568 typed & & & & & & & & & \\ 2569 switch & & & & & & & & & \\ 2570 loop & & & & & & & & & \\ 2571 array & & & & & & & & & \\ 2572 \end{tabular}
Note: See TracChangeset
for help on using the changeset viewer.