Add Liquid Haskell to Tools
[~bandali/cv] / cv.tex
diff --git a/cv.tex b/cv.tex
index a0fc4f0..e4dc7a2 100644 (file)
--- a/cv.tex
+++ b/cv.tex
@@ -1,5 +1,5 @@
 %% cv.tex
 %% cv.tex
-%% Copyright 2016 Amin Bandali <amin@aminb.org>
+%% Copyright 2016-2017 Amin Bandali <amin@aminb.org>
 %
 % This work may be distributed and/or modified under the
 % conditions of the LaTeX Project Public License, either version 1.3
 %
 % This work may be distributed and/or modified under the
 % conditions of the LaTeX Project Public License, either version 1.3
@@ -23,6 +23,7 @@
 \usepackage{graphicx}
 \usepackage{fontspec}
 \setmainfont[Numbers=Lining]{EB Garamond}
 \usepackage{graphicx}
 \usepackage{fontspec}
 \setmainfont[Numbers=Lining]{EB Garamond}
+\setmonofont[Scale=0.85]{Ubuntu Mono}
 \newfontfamily{\smallcaps}[RawFeature={+c2sc,+scmp}]{EB Garamond}
 \newcommand{\amper}{{\fontspec[Scale=.9]{EB Garamond}\selectfont\itshape\&}}
 
 \newfontfamily{\smallcaps}[RawFeature={+c2sc,+scmp}]{EB Garamond}
 \newcommand{\amper}{{\fontspec[Scale=.9]{EB Garamond}\selectfont\itshape\&}}
 
 \section*{Research Interests}
 
 \begin{itemize}
 \section*{Research Interests}
 
 \begin{itemize}
-\item Functional Programming and functional languages
+\item Functional Programming and functional languages.
 \item Formal methods, especially type systems, proof systems, and automated
 \item Formal methods, especially type systems, proof systems, and automated
-  provers
-\item Verification, Haskell, and Rust
+  provers.
+\item Verification, Haskell, and Rust.
 \end{itemize}
 
 \section*{Education}
 
 \begin{itemize}
 \end{itemize}
 
 \section*{Education}
 
 \begin{itemize}
+  \setlength\itemsep{.75em}
 \item {\large B.Sc. Honours Computer Science}\, |\, {\small 2013--present}
 
 \item {\large B.Sc. Honours Computer Science}\, |\, {\small 2013--present}
 
-  \textit{York University}, Canada
+  \textit{York University}, Toronto, Canada
 
   \begin{itemize}
 
   \begin{itemize}
-  \item GPA: 7.9/9.0
-  \item Expected completion: December 2017
+  \item Expected completion: December 2017 \hspace{1em} GPA: 7.9/9.0
   \item Relevant courses: System Specification \amper\
   \item Relevant courses: System Specification \amper\
-    Refinement, Operating System Design, Computational Complexity, Artificial
-    Intelligence \amper\ Logic Programming, Design \amper\ Analysis of
-    Algorithms.
+    Refinement, Software Requirements Eng., Software Design, Operating
+    Systems, Computational Complexity, Design \amper\ Analysis of Algorithms.
   \item Finished first year (2013-14) at \textit{Carleton University} with a GPA
     of 11.0/12.0 then transferred to \textit{York University} in Fall 2014.
   \end{itemize}
   \item Finished first year (2013-14) at \textit{Carleton University} with a GPA
     of 11.0/12.0 then transferred to \textit{York University} in Fall 2014.
   \end{itemize}
-  
+
+%% \item {\large High School Diploma}\, |\, {\small 2013}
+
+%%   \textit{Glebe Collegiate Institute}, Ottawa, Canada
+
+%%   \hspace{1.3em} Average: 94.3\%
 \end{itemize}
 
 \section*{Research Experience}
 
 \begin{itemize}
 \end{itemize}
 
 \section*{Research Experience}
 
 \begin{itemize}
+\item {\large Software Engineering Lab, } York University\, |\, {\small summer
+  2017}
+
+  \textit{Research Assistant}
+
+  \begin{itemize}
+  \item I'm working on expanding and testing the \texttt{mathmodels} library,
+    collection of abstract mathematical collections written in Eiffel. I'll also
+    be modeling various pieces of software in TLA+.
+  \end{itemize}
+
 \item {\large Software Engineering Lab, } York University\, |\, {\small summer 2016}
 
   \textit{Research Student}
 
   \begin{itemize}
 \item {\large Software Engineering Lab, } York University\, |\, {\small summer 2016}
 
   \textit{Research Student}
 
   \begin{itemize}
-  \item Semester project: As an undergraduate research student, I
-    worked on \textit{Literate Unit-B}, the verifier for Unit-B, a new
-    formal method focused on formal verification of reactive, concurrent
-    and distributed systems.
+  \item As an undergraduate research student, I worked on \textit{Literate
+      Unit-B}, the verifier for Unit-B, a new formal method focused on formal
+    verification of reactive, concurrent and distributed systems.
 
     From the Literate Unit-B codebase (written in Haskell), I decoupled the
     logic module and used it to build \textit{Unit-B Web}, a web interface using
     Literate Unit-B to do predicate calculus proofs. \linebreak Unit-B Web, also
     written in Haskell, supports the \LaTeX\ syntax of the Unit-B logic, renders
 
     From the Literate Unit-B codebase (written in Haskell), I decoupled the
     logic module and used it to build \textit{Unit-B Web}, a web interface using
     Literate Unit-B to do predicate calculus proofs. \linebreak Unit-B Web, also
     written in Haskell, supports the \LaTeX\ syntax of the Unit-B logic, renders
-    user input on the page, and calls the sequent prover of the logic
-    module, which uses the Z3 SMT solver to check the validity of user
-    input.
+    user input on the page, and calls the sequent prover of the logic module,
+    which uses the Z3 SMT solver to check the validity of user input.
 
 
-  \item Volunteer work: I'm currently working on implementing subtyping for
-    Literate Unit-B.
-  \end{itemize}
+  \item Further, I separated Literate Unit-B's type checker from its parser,
+    allowing easier substitution of other type checking algorithms and in
+    preparation for implementing subtyping.
   \end{itemize}
   \end{itemize}
+\end{itemize}
 
 \section*{Professional Experience}
 \begin{itemize}
 
 \section*{Professional Experience}
 \begin{itemize}
 \end{itemize}
 
 
 \end{itemize}
 
 
+\section*{Recent Projects}
+
+\begin{itemize}
+\item \textit{Unit-B Web:} The web interface for Unit-B, as mentioned in the
+  \textit{Research Experience} section.\\
+  Source code available at
+  \href{https://github.com/unitb/unitb-web}{https://github.com/unitb/unitb-web}
+
+\item \textit{tex2png-hs:} A tool for easily converting \TeX\ and \LaTeX\ to PNG
+  images. \verb#tex2png-hs# is a Haskell port of Xyne's \verb#tex2png# tool. It
+  is a wrapper around \verb#latex# and \verb#dvipng# and provides several
+  options for modifying its behaviour, such as cropping the whitespace around
+  the content, specifying the DPI, or inputting a full document.\\
+  Source code available at
+  \href{https://github.com/unitb/tex2png-hs}{https://github.com/unitb/tex2png-hs}
+
+\item For more projects, visit my GitHub profile at
+  \href{https://github.com/aminb}{https://github.com/aminb}.
+\end{itemize}
+
 \section*{Miscellaneous}
 
 \begin{itemize}
 \section*{Miscellaneous}
 
 \begin{itemize}
-\item \textit{Programming Languages:} Haskell, Rust, Python, C, Emacs Lisp,
-  \LaTeX, C\#, Java, JavaScript.
+\item \textit{Programming Languages:} Haskell, Rust, Eiffel, Python, C, Emacs
+  Lisp, C\#, JavaScript.
+\item \textit{Tools:} Emacs, Liquid Haskell, Git, Zsh, \LaTeX, CI Systems
+  (e.g. Travis CI), Rodin.
 \item \textit{Platforms:} Arch Linux, Ubuntu and other distros, Android, macOS,
   Windows.
 \item \textit{Platforms:} Arch Linux, Ubuntu and other distros, Android, macOS,
   Windows.
-\item \textit{Tools:} Emacs, Git, Zsh, CI Systems (e.g. Travis CI),
-  Rodin, SQL DBs.
-\item \textit{Languages:} English (fluent), Persian (native), French (beginner).
+\item \textit{Languages:} Persian (mother tongue), English (fluent), French
+  (beginner).
 \end{itemize}
 
 
 \end{itemize}