User loginNavigation |
archivesBacktracking, Interleaving, and Terminating Monad Transformers
Backtracking, Interleaving, and Terminating Monad Transformers. Oleg Kiselyov, Chung-chieh Shan, Daniel P. Friedman and Amr Sabry.
We design and implement a library for adding backtracking computations to any Haskell monad. Inspired by logic programming, our library provides, in addition to the operations required by the MonadPlus interface, constructs for fair disjunctions, fair conjunctions, conditionals, pruning, and an expressive top-level interface. Implementing these additional constructs is well-known in models of backtracking based on streams, but not known to be possible in continuation-based models. We show that all these additional constructs can be generically and monadically realized using a single primitive which we call msplit. We present two implementations of the library: one using success and failure continuations; and the other using control operators for manipulating delimited continuations. As you can expect from the author list, this is cool stuff. Enjoy! By Ehud Lamm at 2005-06-22 07:30 | Functional | Logic/Declarative | login or register to post comments | other blogs | 12022 reads
Crystal Scheme: A Language for Massively Parallel Machines
Crystal Scheme: A Language for Massively Parallel Machines
Massively parallel computers are built out of thousands conventional but powerful processors with independent memories. Very simple topologies mainly based on physical neighbourhood link these processors. The paper discusses extensions to the Scheme language in order to master such machines. Allowing arguments of functions to be concurrently evaluated introduces parallelism. Migration across the different processors is achieved through a remote evaluation mechanism. First-class continuations offering some semantical problems with respect to concurrency, we propose a neat semantics for them and then show how to build, in the language itself, advanced concurrent constructs such as futures. Eventually we comment some simulations, with various topologies and migration policies, which enables to appreciate our previous linguistical choices and confirms the viability of the model.Note the year of publication -1991. The bibliography goes back to 1980. My question might be naive, but what are major inventions in the area of And, returning to PLT, can Crystal Scheme be useful for Cell? By Andris Birkmanis at 2005-06-22 07:44 | Parallel/Distributed | 3 comments | other blogs | 8034 reads
The Underhanded C ContestInspired by Daniel Horn's Obfuscated V contest in the fall of 2004, we hereby announce an annual contest to write innocent-looking C code implementing malicious behavior. In many ways this is the exact opposite of the Obfuscated C Code Contest: in this contest you must write code that is as readable, clear, innocent and straightforward as possible, and yet it must fail to perform at its apparent function. To be more specific, it should do something subtly evil. I wasn't aware of this contest. This concept sounds like fun, the idea being to write source code that easily passes visual inspection by other programmers. The challenge for the first UCC is to write a simple program that performs some basic image-processing operation, for example smoothing or resampling, but manages to conceal a unique imperceptible fingerprint in each image it outputs. A Monadic Framework for SubcontinuationsA Monadic Framework for Subcontinuations
|
Browse archivesActive forum topics |
Recent comments
22 weeks 3 hours ago
22 weeks 7 hours ago
22 weeks 7 hours ago
44 weeks 1 day ago
48 weeks 3 days ago
50 weeks 15 hours ago
50 weeks 15 hours ago
1 year 4 days ago
1 year 5 weeks ago
1 year 5 weeks ago