Additional source code

This commit is contained in:
Jip J. Dekker 2021-07-29 14:44:00 +10:00
parent e84fce6ac8
commit 31786c719d
No known key found for this signature in database
GPG Key ID: 517DF4A00618C9C3
2 changed files with 3 additions and 6 deletions

View File

@ -485,8 +485,7 @@ The framework has the ability to support multiple \solvers{}.
It can pretty-print the \nanozinc{} code to standard \flatzinc{}, so that any solver currently compatible with \minizinc{} can be used.
Additionally, a direct C++ \glsxtrshort{api} can be used to connect solvers directly, in order to enable incremental solving.
We revisit this topic in \cref{ch:incremental}.
The source code for the complete system will be made available under an open source licence.
\todo{Actually make source available}
The source code for the complete system has been made available under an open-source license, and it has been included in the experiment resources in \cref{ch:benchmarks}.
\section{NanoZinc Simplification}\label{sec:rew-simplification}
@ -786,8 +785,6 @@ When the \gls{avar} become unused, they will be removed using the normal mechani
We have created a prototype implementation of the architecture presented in the preceding sections.
It consists of a \compiler{} from \minizinc{} to \microzinc{}, and a \microzinc{} \interpreter{} producing \nanozinc{}.
The system supports a significant subset of the full \minizinc{} language; notable features that are missing are support for set and float variables, option types, and compilation of model output expressions and \glspl{annotation}.
We will release our implementation under an open-source licence and can make it available to the reviewers upon request.
\todo{I suppose it is time to release the prototype.}
The implementation is not optimized for performance yet, but was created as a faithful implementation of the developed concepts, in order to evaluate their suitability and provide a solid baseline for future improvements.
In the following we present experimental results on basic \gls{rewriting} performance as well as a comparison with \glspl{interpreter} of other programming languages to demonstrate the efficiency gains that are possible thanks to the new architecture.

View File

@ -20,7 +20,7 @@ Each part is published as a Git repository on GitHub.
\paragraph{MiniZinc Prototype} The design for the experiments of the \minizinc{} prototype implementation can be found in:
\begin{center}
\url{file://TODO}
\url{https://github.com/Dekker1/bytecode-benchmarks}
\end{center}
This repository contains the \gls{rewriting} and recursive function benchmarks.
@ -63,7 +63,7 @@ In this thesis we use three different programs to rewrite \minizinc{} to \flatzi
\item A prototype for the language architecture designed as part of this thesis.
The source code for this version can be found here:
\begin{center}
\url{file://TODO}
\url{https://github.com/Dekker1/libminizinc/tree/feature/bytecode}
\end{center}
\item The official MiniZinc release (version 2.5.5) \autocite{minizinc-2021-minizinc}, adjusted to support \gls{rbmo}.