User loginNavigation |
FunctionalType-Level Computation Using Narrowing in OmegaHaven't seen this paper by Tim Sheard mentioned on Ltu before. As in previous papers Sheard tries to put Howard Curry to work in terms that are understandable for those that don't have a Phd in type theory.
By Niels Hoogeveen at 2007-02-08 20:21 | Functional | Meta-Programming | Type Theory | 1 comment | other blogs | 7061 reads
Generic Programming, Now!Ralf Hinze and Andres Löh. Generic Programming, Now!. In Roland Backhouse, Jeremy Gibbons, Ralf Hinze and Johan Jeuring, editors, Spring School on Generic Programming, Lecture Notes in Computer Science. Springer-Verlag, 2006.
Yes, more functional generic programming... Open data types and open functions are discussed here, but I think this paper wasn't featured on the homepage before. Interactive Haskell Documents
Think of a document containing code, comments, and examples, all presented in an aesthetically pleasing manner. The document is live, so you can make changes and see them immediately. This reminds me somewhat of the Lab system in J: interactive tutorials that allow the user to experiment after each new point is presented. Beauty in the Beast
Beauty in the Beast by Wouter Swierstra, Thorsten Altenkirch. 2006.
We provide a functional specification of three central components of Simon Peyton Jones’s awkward squad: teletype I/O, mutable state and concurrency. By constructing an internal model of such concepts within our programming language, we can reason about programs that perform I/O as if they were pure functions. One important application of our approach is accommodating I/O in a dependently typed programming language. By Andris Birkmanis at 2007-01-15 15:29 | Functional | Semantics | Type Theory | 1 comment | other blogs | 8187 reads
Simon Peyton Jones: Beautiful concurrency
You can post your comments on the Haskell wiki. STM was discussed here many time before, of course. For me the original papers were easier to follow, but some may prefer the style of presentation used here. By Ehud Lamm at 2007-01-06 21:38 | Functional | Parallel/Distributed | 25 comments | other blogs | 23796 reads
Derivatives and dissections of data typesThe Derivative of a Regular Type is its Type of One-Hole Contexts by Conor McBride was mentioned on LtU several times. If you enjoyed it, try a new paper by the same author: More generic programming, more parallels between data types and calculus, more fun. As usual for Conor's paper, it's short and full of (sometimes obscure) humor. Beware of typos, though. By Andris Birkmanis at 2007-01-03 21:35 | Functional | Type Theory | 18 comments | other blogs | 19403 reads
Data Parallel Haskell: a status reportData Parallel Haskell: a status report. Manuel M. T. Chakravarty, Roman Leshchinskiy, Simon Peyton Jones, Gabriele Keller, and Simon Marlow.
NESL was mentioned here in the past a few times, as was data parallelism in general. By Ehud Lamm at 2006-12-23 14:26 | Functional | Parallel/Distributed | 2 comments | other blogs | 8915 reads
Comparing Approaches to Generic Programming in Haskell
Comparing Approaches to Generic Programming in Haskell
by Ralf Hinze, Johan Jeuring, and Andres Löh. 2006.
You just started implementing your third web shop in Haskell, and you realize that a lot of the code you have to write is similar to the code for the previous web shops. Only the data types have changed. Unfortunately, this implies that all reporting, editing, storing and loading in the database functionality, and probably a lot more, has to be changed. You’ve heard about generic programming, a technique which can be used to automatically generate programs depending on types. But searching on the web gives you almost ten approaches to solve your problem: DrIFT, PolyP, Generic Haskell, Derivable Type Classes, Template Haskell, Scrap Your Boilerplate, Generics for the Masses, Strafunski, etc. How do you choose? And these are only the approaches to generic programming in Haskell. If you are also flexible in the programming language you use, there is a much larger variety of different approaches to generic programming to choose from.[on edit: updated link to point to a more complete version of the paper] Bit Stream Programing in ErlangSince 2001, the functional language Erlang comes with a byte-oriented datatype (called binary) and with constructs to do pattern matching on a binary. We have been heavily involved in this work and implemented a scheme for native code compilation of binaries and designed efficient algorithms for constructing deterministic pattern matching automata for byte-based binaries. In last year's Erlang workshop we put forward a proposal for lifting the restriction that Erlang binaries are sequences of bytes rather than bits and described the semantics of bit-level pattern matching on a bit-level binary (called bit stream). We have subsequently realized this proposal and describe its applications and implementation in this paper.Be sure to see the benchmarks on page 13 comparing Erlang, Haskell, Objective Caml, C, and Java for processing binary data. Having used the existing binary pattern matching support in Erlang, I'm looking forward to the official language support for bit streams. The Role of Composition in Computer ProgrammingThis paper by Donald McIntyre is a classic in the J language world. It ranks up there with "Why Functional Programming Matters" in terms of concise, impressive examples. Most of the examples have a geometric bent, like finding the area of a polygon. Note that this paper was written using an early version of J, so some of the syntax has unfortunately changed. |
Browse archives
Active forum topics |
Recent comments
23 weeks 2 days ago
23 weeks 3 days ago
23 weeks 3 days ago
45 weeks 4 days ago
49 weeks 6 days ago
51 weeks 3 days ago
51 weeks 3 days ago
1 year 2 weeks ago
1 year 6 weeks ago
1 year 6 weeks ago