91 lines
4.2 KiB
TeX
91 lines
4.2 KiB
TeX
% This is samplepaper.tex, a sample chapter demonstrating the
|
|
% LLNCS macro package for Springer Computer Science proceedings;
|
|
% Version 2.21 of 2022/01/12
|
|
%
|
|
\documentclass[runningheads]{llncs}
|
|
%
|
|
\usepackage[T1]{fontenc}
|
|
% T1 fonts will be used to generate the final print and online PDFs,
|
|
% so please use T1 fonts in your manuscript whenever possible.
|
|
% Other font encondings may result in incorrect characters.
|
|
%
|
|
\usepackage{graphicx}
|
|
% Used for displaying a sample figure. If possible, figure files should
|
|
% be included in EPS format.
|
|
%
|
|
% If you use the hyperref package, please uncomment the following two lines
|
|
% to display URLs in blue roman font according to Springer's eBook style:
|
|
%\usepackage{color}
|
|
%\renewcommand\UrlFont{\color{blue}\rmfamily}
|
|
%\urlstyle{rm}
|
|
%
|
|
|
|
% My packages:
|
|
\usepackage{unicode-math}
|
|
\usepackage{hyperref}
|
|
|
|
\begin{document}
|
|
%
|
|
\title{Topics in Compilers and Concurrency \\ Seminar Report on\\ Background Materials and Related Work}
|
|
%
|
|
%\titlerunning{Abbreviated paper title}
|
|
% If the paper title is too long for the running head, you can set
|
|
% an abbreviated paper title here
|
|
%
|
|
\author{Julius Fischer}
|
|
%
|
|
%
|
|
\institute{Student at Univerity of Freiburg (ALU)\\
|
|
\email{julius.fischer@email.uni-freiburg.com}\\
|
|
Matriculation Number: 5317202
|
|
}
|
|
|
|
|
|
%
|
|
\maketitle % typeset the header of the contribution
|
|
%
|
|
%\begin{abstract}
|
|
%The abstract should briefly summarize the contents of the paper in
|
|
%150--250 words.
|
|
%
|
|
%\keywords{First keyword \and Second keyword \and Another keyword.}
|
|
%\end{abstract}
|
|
%
|
|
%
|
|
%
|
|
|
|
\newcommand{\lad}{$\lambda_d$}
|
|
\newcommand{\dpsf}{DPS-$\tilde{F}$}
|
|
|
|
\section{Introduction}
|
|
In their work Bagrel and Spiwack \cite{bagrel_dp_2025} build on many prior contributions,
|
|
both directly in their calculus grammar and semantics, but also in their structural approach regarding typing and evaluation contexts.
|
|
From now on the calculus introduced in this specific paper will be referred to as \lad.
|
|
This report will highlight a number of select works, which are of significance to the $lambda_d$ calculus.
|
|
|
|
\section{A Functional Representation of Data Structures with a Hole by Y. Minamide\cite{minamide_holes_1998}}
|
|
This paper contributes fundamental work on holes in functional languages.
|
|
It introduces a hole abstraction $\hat\lambda x. T$ to formalize data structures with a single hole.
|
|
Which, while syntactically different, in principle remains similar to the \lad calculus.
|
|
Both utilize holes as the core features, where \lad has a type $T_1 \ltimes T_2$ to represent a
|
|
structure that is missing $T_1$ to complete a $T_2$, Minamide's calculus features $(T_1, T_2) hfun$.
|
|
In generael Minamide focusses more on the similarity of his hole abstraction to the regular $\lambda$ abstraction
|
|
and the similarity of a strucutre containing a hole, to a function that returns an type $T_2$, when applied argument to an argument $T_1$.
|
|
Notably both calculi contain linearity constraints on holes, but Bagrel's work eliviates some of those constraints by allowing for weakening.
|
|
Overall Minamide lays a lot of ground work, and influences that can be seen in the \lad formulation and in its discussion, as
|
|
similar benefits regarding tail recursion are adressed.
|
|
|
|
\section{Destination-Passing Style for Efficient Memory Management - Shaikhha et al. \cite{shaikhha_array_dps_2017}}
|
|
While Bagrel mostly theorizes on the advantages of the \lad calculus,
|
|
this paper give emprical evidence on runtime and memory improvements of Destination Passing Style (DPS) in a functional language.
|
|
Shaikhha et al. demonstrate the benefits of implementing a DPS-transformation step into the compilation of an array-programming language.
|
|
The authors chose to not give any direct memory control to the programmer, but their intermediate language '\dpsf' still feature
|
|
some similarity to \lad.
|
|
\dpsf is typed using a shape type, which contains the dimensions of the array, which will be written to a memory location/ destination.
|
|
Because of to the array-programming nature of the langauge, the shape type is fit only to arrays, but displays some flexibility,
|
|
which, in a way, is more akin to the constructors used in \lad than to the holes used by Minamide \cite{minamide_holes_1998}.
|
|
|
|
\input{./bibliography/all.tex}
|
|
\bibliographystyle{splncs04}
|
|
\end{document}
|