Category: Links

Fortran, Clojure, Haskell And Julia Are Not At War

Ars Technica featured an article about a year ago which asked whether Clojure (or a couple of other languages) could overthrow Fortran as the language of scientific computing. It was kind of an odd article, and now Peter Fraenkel has written an excellent rebuttal. As he points out:

  • Ars Technica notwithstanding, Clojure, Haskell and Julia are not locked in competition to replace Fortran.
  • Ars Technica notwithstanding, Fibonacci sequences may be something we learned about once, but it is difficult to disguise their irrelevance to scientific computing.

Incanter scientific package for Clojure

Incanter is a Clojure-based, R-like platform for statistical computing and graphics. Incanter can be used as a standalone, interactive data analysis environment or embedded within other analytics systems as a modular suite of libraries.

Incanter deserves a much longer post on this blog, and that should eventually happen, but not yet — unless someone else who’s knowledgable about it would like to volunteer one 🙂

Functional Reactive Programming for Robots

Arrows, Robots, and Functional Reactive Programming: “Functional reactive programming, or FRP, is a paradigm for programming hybrid systems – i.e., systems containing a combination of both continuous and discrete components – in a high-level, declarative way. The key ideas in FRP are its notions of continuous, time-varying values, and time-ordered sequences of discrete events. Yampa is an instantiation of FRP as a domain-specific language embedded in Haskell. This paper describes Yampa in detail, and shows how it can be used to program a particular kind of hybrid system: a mobile robot. Because performance is critical in robotic programming, Yampa uses arrows (a generalization of monads) to create a disciplined style of programming with time-varying values that helps ensure that common kinds of time- and space-leaks do not occur.”