Commit 0f48cd73 authored by Giuseppe Castagna's avatar Giuseppe Castagna
Browse files

first draft

parent d547b55d
......@@ -14,6 +14,7 @@
\usepackage{xcolor}
\usepackage{paralist}
\usepackage{alltt}
\usepackage{amsmath,amssymb}
\usepackage{cleveref}
......@@ -110,12 +111,54 @@ Dans la théorie des langages de programmation typés la notion de
Le but the cette thèse est d'arriver à définir et étudier un langage de programmation fonctionnel statiquement typé qui combine les characteristiques avancée suivantes:
\begin{enumerate}
\item typage d'occurrence
\item types ensemeblistes (types union, intersection et négation)
\item typage graduel
\item polymorphisme paramètrique et inférence de types
\item types recursifs
\item effets et ordre supérieur
\item raffinement de types
\end{enumerate}
Nous allons montrer par des exemples l'intérêt de chaque characteristique:
\paragraph{Typage d'occurrence}
Le typage de occurrence, ou \emph{occurrence typing} est un technique
qui analyse les test effectués par un programme pour pouvoir raffiner
l'analyses de types dans le code à executer en cas de reussite ou
d'échec du test. Un example d'application du typage d'occurrence est donné par le
code suivant JavaScrip
\begin{alltt}
function foo(x) {
(typeof(x) === "number")? x++ : x.trim()
}
\end{alltt}
Dans ce code on teste si l'argument de la fonction \code{x}
Initialement défini pour Scheme il est de plus en plus développé dans
l'industrie (Hack, Typescript, Flow) car il est indispensable pour
pourvoir analyses the programming patterns typiques de la
programmation en langages dynamiques.
CHALLENGES
Tous ces sujets ont été étudiés separament ainsi que pour certains
leur combinaison. Mais l'integration de toutes ses characteristiques
ensemble pose de nouveaux défis qui demande non seulment des avances
sur chaqun de ses sujets mais ...
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment