User loginNavigation |
FunctionalLifted inference: normalizing loops by evaluation
Lifted inference: normalizing loops by evaluation. Oleg Kiselyov and Chung-chieh Shan. 2009 Workshop on Normalization by Evaluation.
Many loops in probabilistic inference map almost every individual in their domain to the same result. Running such loops symbolically takes time sublinear in the domain size. Using normalization by evaluation with first-class delimited continuations, we lift inference procedures to reap this speed-up without interpretive overhead. To express nested loops, we use multiple control delimiters for metacircular interpretation. To express loops over a powerset domain, we convert nested loops over a subset to unnested loops. The paper is a bit hard to follow, but there are enough little tricks here to merit attentive reading. Or better yet, read the code. The basic PLT idea might be summed as doing abstract interpretation on a shallowly embedded DSL using delimited continuations. By Ehud Lamm at 2009-08-14 02:34 | DSL | Functional | Implementation | Meta-Programming | 2 comments | other blogs | 10331 reads
A Veriï¬ed Compiler for an Impure Functional LanguageA Veriï¬ed Compiler for an Impure Functional Language
The latest from Adam Chlipala. Yet another evolutionary step for Lambda Tamer. Between this and Ynot the Coq/certified compiler story seems to be getting more impressive nearly daily. By Paul Snively at 2009-08-10 16:09 | Functional | Implementation | Lambda Calculus | Semantics | 8 comments | other blogs | 10684 reads
Certiï¬ed Web Services in YnotCertiï¬ed Web Services in Ynot
Ynot, always ambitious, takes another serious swing: extracting a real web application from a proof development. In some respects the big news here is the additional coverage that Ynot now offers in terms of support for file and socket I/O, and the event trace mechanism. But there's even bigger news, IMHO, which is the subject of another paper that warrants a separate post. By Paul Snively at 2009-08-06 16:46 | DSL | Functional | General | Implementation | Software Engineering | Type Theory | 2 comments | other blogs | 7421 reads
Creator of Qi Calls It QuitsIn a Qilang mailing list email Marker Tarver, creator of Qi, says
By James Iry at 2009-08-02 12:25 | Functional | Logic/Declarative | 8 comments | other blogs | 190868 reads
Representing Control in the Presence of First-Class ContinuationsRobert Hieb, R. Kent Dybvig, and Carl Bruggeman. Representing Control in the Presence of First-Class Continuations. ACM SIGPLAN 1990 Conference on Programming Language Design and Implementation, June 1990.
Many Scheme implementations do not implement By Leon P Smith at 2009-07-27 17:03 | Functional | Implementation | 12 comments | other blogs | 10621 reads
Announcing the new Haskell Prime process, and Haskell 2010Simon Marlow:
More here. Oh no! Animated Alligators!Lambda calculus as animated alligators and eggs. Virtually guaranteed to turn any 4 year old into a PLT geek. The non-animated game was mentioned previously on LTU here. By James Iry at 2009-07-09 18:43 | Fun | Functional | Lambda Calculus | Teaching & Learning | 8 comments | other blogs | 13071 reads
Going functional on exotic trades
Simon Frankau, Diomidis Spinellis, Nick Nassuphis, Christoph Burgard. Going functional on exotic trades. JFP 19(01):27-45.
The Functional Payout Framework (fpf) is a Haskell application that uses an embedded domain-specific functional language to represent and process exotic financial derivatives. Whereas scripting languages for pricing exotic derivatives are common in banking, fpf uses multiple interpretations to not only price such trades, but also to analyse the scripts to provide lifecycle support and more. This paper discusses fpf in relation to the wider trading workflow and our experiences in using a functional language in such a system as both an implementation language and a domain-specific language. Section 3 is a nice discussion of why Haskell was chosen. Section 4 illustrates one of the major benefits of using DSLs, namely that different backends can be applied to programs written in the DSL, allowing various types of runtime behavior and analysis without the need to re-code each program for each purpose (thus n+m, rather than n*m programs). Another topic that may be worth discussing is the authors' dislike of point free style. What we really need, of course, are DSLs for financial regulation (and possibly for specifying various definitions of honesty), but that's a separate issue... Types are Calling ConventionsIf optimization and intermediate languages for lazy functional languages are your things, take a look at Types are Calling Conventions by Max Bolingbroke and Simon Peyton Jones.
By James Iry at 2009-05-16 23:29 | Functional | Implementation | 9 comments | other blogs | 27001 reads
Polymorphic Delimited ContinuationsPolymorphic Delimited Contiunations by Kenichi Asai and Yukiyoshi Kameyama, in the 5th ASIAN Symposium on Programming Languages and Systems (2007).
Now, the real reason that I post this is because of Oleg's ShiftResetGenuine, which implements polymorphic delimited continuations in Haskell, and primarily cites this paper as well as Robert Atkey's Parameterized Notions of Computation. So if you find this paper challenging to read, Oleg provides you with a concrete playground in which to experiment. It's also notable that Matthieu Sozeau has GenuineShiftReset available, which is a Coq version of Oleg's code. |
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