hcar.
This commit is contained in:
parent
ab7059d5e4
commit
44ed695535
@ -1,40 +1,25 @@
|
||||
% ghcmodHappyHaskellProgram-Kg.tex
|
||||
\begin{hcarentry}[updated]{ghc-mod --- Happy Haskell Programming}
|
||||
\report{Kazu Yamamoto}%05/14
|
||||
\report{Kazu Yamamoto}%11/14
|
||||
\status{open source, actively developed}
|
||||
\makeheader
|
||||
|
||||
{\tt ghc-mod} is a package to enrich Haskell programming on editors including Emacs, Vim and Sublime. The {\tt ghc-mod} package on Hackage includes the {\tt ghc-mod} command, new {\tt ghc-modi} command and Emacs front-end.
|
||||
For a long time, Kazu Yamamoto is the only active developer of ghc-mod.
|
||||
Now two new developers joined:
|
||||
|
||||
Emacs front-end provides the following features:
|
||||
Alejandro Serrano merged his results of Google Summer of Code. He
|
||||
implements case splitting and sophisticated type hole handling.
|
||||
Daniel Gröber brushed up the internal code by bringing the GhcMod
|
||||
monad. So, the API of \texttt{ghc-mod} drastically changed.
|
||||
The result was released \texttt{ghc-mod} version 5.0
|
||||
|
||||
\begin{description}
|
||||
\item[Completion] You can complete a name of keyword, module, class, function, types, language extensions, etc.
|
||||
\texttt{ghc-modi} used to suffer from inconsistency if an environment
|
||||
changes. For instance, file names of modules change, new dependencies
|
||||
are added to its cabal file, new libraries are installed, and so on.
|
||||
\texttt{ghc-modi} v5.1.1 or later captures this kind of changes and
|
||||
restarts a new session.
|
||||
|
||||
\item[Code template] You can insert a code template according to the position of the cursor. For instance, {\tt import Foo (bar)} is inserted if {\tt bar} is missing.
|
||||
|
||||
\item[Syntax check] Code lines with error messages are automatically highlighted. You can display the error message of the current line in another window. {\tt hlint} %\cref{hlint}
|
||||
can be used instead of GHC to check Haskell syntax.
|
||||
|
||||
\item[Document browsing] You can browse the module document of the current line either locally or on Hackage.
|
||||
|
||||
\item[Expression type] You can display the type/information of the expression on the cursor.
|
||||
\end{description}
|
||||
|
||||
\noindent
|
||||
There are two Vim plugins:
|
||||
\begin{itemize}
|
||||
\item ghcmod-vim
|
||||
\item syntastic
|
||||
\end{itemize}
|
||||
|
||||
\noindent
|
||||
Here are new features:
|
||||
\begin{itemize}
|
||||
\item New {\tt ghc-modi} command provides a persistent session to make response time drastically faster. So, now you can use Emacs front-end without stress.
|
||||
\item Emacs front-end provides a way to solve the import hell.
|
||||
\item GHC 7.8 is supported.
|
||||
\end{itemize}
|
||||
Kazu stepped down from the release manager and Daniel took it over.
|
||||
|
||||
\FurtherReading
|
||||
\url{http://www.mew.org/~kazu/proj/ghc-mod/en/}
|
||||
|
Loading…
Reference in New Issue
Block a user