November-2015.tex 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. \documentclass{article}
  2. \usepackage{hcar}
  3. \begin{document}
  4. % Agda-NA.tex
  5. \begin{hcarentry}[section,updated]{Agda}
  6. \label{agda}
  7. \report{Ulf Norell}%11/13
  8. \status{actively developed}
  9. \participants{Ulf Norell, Nils Anders Danielsson, Andreas Abel,
  10. Jesper Cockx, Makoto Takeyama,
  11. Stevan Andjelkovic, Jean-Philippe Bernardy, James Chapman,
  12. Dominique Devriese, P\'eter Divi\'anszky,
  13. Fredrik Nordvall Forsberg, Olle Fredriksson, Daniel Gustafsson,
  14. Alan Jeffrey, Fredrik Lindblad, Guilhem Moulin, Nicolas Pouillard, Andrés Sicard-Ramírez
  15. and many others}
  16. \makeheader
  17. Agda is a dependently typed functional programming language (developed
  18. using Haskell). A central feature of Agda is inductive families,
  19. i.e., GADTs which can be indexed by \emph{values} and not just types.
  20. The language also supports coinductive types, parameterized modules,
  21. and mixfix operators, and comes with an \emph{interactive}
  22. interface---the type checker can assist you in the development of your
  23. code.
  24. A lot of work remains in order for Agda to become a full-fledged
  25. programming language (good libraries, mature compilers, documentation,
  26. etc.), but already in its current state it can provide lots of fun as
  27. a platform for experiments in dependently typed programming.
  28. Since the release of Agda~2.4.0 in June 2014 a lot has happened in the Agda
  29. project and community. For instance:
  30. \begin{itemize}
  31. \item There have been two Agda courses at the Oregon Programming Languages
  32. Summer School (OPLSS). In 2014 by Ulf Norell, and in 2015 by Peter Dybjer.
  33. \item Agda has moved to github: \url{https://github.com/agda/agda}.
  34. \item Agda~2.4.2 was released in September 2014, and the latest stable
  35. version is Agda~2.4.2.4, released in September 2015.
  36. \item The restriction of Agda to not use Streicher's Axiom K was proved
  37. correct by Jesper Cockx et al. in the ICFP 2014 paper {\em Pattern Matching
  38. without K}.
  39. \item Instance arguments are now powerful enough to emulate Haskell-style
  40. type classes.
  41. \item The reflection machinery has been extended, making it possible to
  42. define convenient reflection based tactics.
  43. \item Improved compiler performance, and a new backend targeting the
  44. Utrecht Haskell Compiler (UHC).
  45. \end{itemize}
  46. Release of Agda~2.4.4 is planned for early 2016.
  47. \FurtherReading
  48. The Agda Wiki: \url{http://wiki.portal.chalmers.se/agda/}
  49. \end{hcarentry}
  50. \end{document}