From 4e337a927a0e253aa17336e76921a82a6b69f00e Mon Sep 17 00:00:00 2001 From: Camil Staps Date: Mon, 27 Nov 2017 21:24:57 +0100 Subject: Minor fixes --- cloogle.tex | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) (limited to 'cloogle.tex') diff --git a/cloogle.tex b/cloogle.tex index f33c2a0..9cc29ac 100644 --- a/cloogle.tex +++ b/cloogle.tex @@ -92,7 +92,7 @@ \begin{frame}{Efficient unification search} \begin{itemize}[<+->] \item With $\pm15,000$ functions, brute force unification search takes too long - \item Grouping types together still gives $\pm13,000$ unique types + \item Grouping types together still gives $\pm7,500$ unique types \item If type $t$ generalises $u$, any $v$ that unifies with $u$ will also unify with $t$ \begin{itemize} \item Conversely, if $v$ does not unify with $t$ it will not unify with $u$ @@ -248,18 +248,16 @@ \end{itemize} \item Unification search has some issues: you will never find - \begin{minted}[gobble=4]{clean} fopen :: String Int *f -> (Bool, *File, *f) \end{minted} - \begin{itemize} + \item Hoogle uses an edit distance on types \item But a unifier gives useful information, like required instances - \item Unification allows for optimisations that a distance measure does not + \item In the future, we will probably combine both approaches \end{itemize} \item It's not just about search: indexing code has many use cases! - \begin{itemize} \item Jumping to definitions (tagfiles) \item Automatic imports (vim-clean) @@ -343,8 +341,8 @@ \begin{description}[Syntax constructs] \small \item[Modules] 750 - \item[Functions] 15,297 - \item[Unique types] 13,571 + \item[Functions] 15,299 + \item[Unique types] 7,639 \item[Type tree depth] 8 \item[Type definitions] 2,195 \item[Classes] 262 -- cgit v1.2.3