140 lines
4.9 KiB
TeX
140 lines
4.9 KiB
TeX
|
|
\documentclass[anonymous,USenglish]{llncs}
|
|
%This is a template for producing LIPIcs articles.
|
|
%See lipics-v2021-authors-guidelines.pdf for further information.
|
|
%for A4 paper format use option "a4paper", for US-letter use option "letterpaper"
|
|
%for british hyphenation rules use option "UKenglish", for american hyphenation rules use option "USenglish"
|
|
%for section-numbered lemmas etc., use "numberwithinsect"
|
|
%for enabling cleveref support, use "cleveref"
|
|
%for enabling autoref support, use "autoref"
|
|
%for anonymousing the authors (e.g. for double-blind review), add "anonymous"
|
|
%for enabling thm-restate support, use "thm-restate"
|
|
%for enabling a two-column layout for the author/affilation part (only applicable for > 6 authors), use "authorcolumns"
|
|
%for producing a PDF according the PDF/A standard, add "pdfa"
|
|
|
|
%\pdfoutput=1 %uncomment to ensure pdflatex processing (mandatatory e.g. to submit to arXiv)
|
|
%\hideLIPIcs %uncomment to remove references to LIPIcs series (logo, DOI, ...), e.g. when preparing a pre-final version to be uploaded to arXiv or another public repository
|
|
|
|
%\graphicspath{{./graphics/}}%helpful if your graphic files are in another directory
|
|
|
|
\usepackage[T1]{fontenc}
|
|
|
|
\usepackage{cite}
|
|
\usepackage[disable]{todonotes} % [disable]
|
|
\usepackage[utf8]{inputenc}
|
|
\usepackage{hyperref}
|
|
\usepackage{amsmath}
|
|
\usepackage{amssymb}
|
|
\usepackage{subcaption}
|
|
\usepackage{prftree}
|
|
\usepackage{tabularx}
|
|
\usepackage{multicol}
|
|
\usepackage{nicematrix}
|
|
\usepackage{tikz}
|
|
\usepackage{soul}
|
|
\newcommand{\mathcolorbox}[2]{\colorbox{#1}{$\displaystyle #2$}}
|
|
\usepackage{cancel}
|
|
\usepackage{tcolorbox}
|
|
\usepackage{arydshln}
|
|
\usepackage{dashbox}
|
|
|
|
\input{prolog}
|
|
|
|
\begin{document}
|
|
\bibliographystyle{plainurl}% the mandatory bibstyle
|
|
|
|
\title{Global Type Inference for Featherweight Java with Wildcards} %TODO Please add
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
%% ANON
|
|
|
|
% \author{Andreas Stadelmeier\inst{1}, Martin Plümicke\inst{1}, Peter Thiemann\inst{2}}
|
|
% \institute{DHBW Stuttgart, Campus Horb, Germany\\
|
|
% \email{a.stadelmeier@hb.dhbw-stuttgart.de} \and
|
|
% Universität Freiburg, Institut für Informatik, Germany\\
|
|
% \email{thiemann@informatik.uni-freiburg.de}}
|
|
|
|
% \authorrunning{A. Stadelmeier and M. Plümicke and P. Thiemann}
|
|
|
|
%% END ANON
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
|
|
%\category{} %optional, e.g. invited paper
|
|
|
|
%\relatedversion{} %optional, e.g. full version hosted on arXiv, HAL, or other respository/website
|
|
%\relatedversiondetails[linktext={opt. text shown instead of the URL}, cite=DBLP:books/mk/GrayR93]{Classification (e.g. Full Version, Extended Version, Previous Version}{URL to related version} %linktext and cite are optional
|
|
|
|
%\supplement{}%optional, e.g. related research data, source code, ... hosted on a repository like zenodo, figshare, GitHub, ...
|
|
%\supplementdetails[linktext={opt. text shown instead of the URL}, cite=DBLP:books/mk/GrayR93, subcategory={Description, Subcategory}, swhid={Software Heritage Identifier}]{General Classification (e.g. Software, Dataset, Model, ...)}{URL to related version} %linktext, cite, and subcategory are optional
|
|
|
|
%\funding{(Optional) general funding statement \dots}%optional, to capture a funding statement, which applies to all authors. Please enter author specific funding statements as fifth argument of the \author macro.
|
|
|
|
%\acknowledgements{I want to thank \dots}%optional
|
|
|
|
%\nolinenumbers %uncomment to disable line numbering
|
|
|
|
|
|
|
|
% %Editor-only macros:: begin (do not touch as author)%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
% \EventEditors{John Q. Open and Joan R. Access}
|
|
% \EventNoEds{2}
|
|
% \EventLongTitle{42nd Conference on Very Important Topics (CVIT 2016)}
|
|
% \EventShortTitle{CVIT 2016}
|
|
% \EventAcronym{CVIT}
|
|
% \EventYear{2016}
|
|
% \EventDate{December 24--27, 2016}
|
|
% \EventLocation{Little Whinging, United Kingdom}
|
|
% \EventLogo{}
|
|
% \SeriesVolume{42}
|
|
% \ArticleNo{23}
|
|
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
|
|
|
|
\maketitle
|
|
|
|
%TODO mandatory: add short abstract of the document
|
|
\begin{abstract}
|
|
Type inference is a hallmark of functional programming. Its use in
|
|
object-oriented programming is often restricted to type inference
|
|
for local variables and the instantiation of generic type
|
|
parameters.
|
|
|
|
Global type inference for Featherweight Generic Java is a
|
|
whole-program analysis that infers omitted method signatures.
|
|
Compared to previous work, its results are more general as it infers
|
|
types with wildcards. Global type inference is proved sound.
|
|
\end{abstract}
|
|
\keywords{type inference, Java, subtyping, generics} %TODO mandatory; please add comma-separated list of keywords
|
|
|
|
\input{introduction}
|
|
|
|
%\input{letfjTransformation}
|
|
|
|
\input{tRules}
|
|
|
|
\input{typeinference}
|
|
|
|
%\input{tiRules}
|
|
|
|
\input{constraints}
|
|
|
|
\input{Unify}
|
|
|
|
\include{relatedwork}
|
|
|
|
\input{conclusion}
|
|
|
|
%\include{termination}
|
|
|
|
\bibliography{martin}
|
|
|
|
\appendix
|
|
|
|
\include{soundness}
|
|
\include{helpers}
|
|
%\include{examples}
|
|
%\input{exampleWildcardParameter}
|
|
%\input{commonPatternsProof}
|
|
%\input{appendix}
|
|
\end{document}
|