User loginNavigation |
ImplementationTowards efficient, typed LR parsersTowards efficient, typed LR parsers, François Pottier and Yann Régis-Gianas. In ACM Workshop on ML, March 2006.
Abstract Interface Types in GNAT: Conversions, Discriminants, and C++Abstract Interface Types in GNAT: Conversions, Discriminants, and C++. Javier Miranda and Edmond Schonberg.
The addition of interface types, of the type found in Java, to Ada2005 presented compiler writers with an implementation challenge. This is a third paper in a series describing the implementation of interfaces in the GNAT Ada compiler (an earlier paper dealt with synchronized interfaces, an interesting special case). The present paper deals mainly with issues caused by interface type conversions, and the related data layout issues. Of special interest is section 6 which shows how to write a C++/Ada multi-language program, in which method calls can be dispatched across language boundaries. Handling the multiple inheritance in the C++ code in this example is possible because the base classes have only pure virtual functions. By Ehud Lamm at 2007-04-14 15:52 | Cross language runtimes | Implementation | OOP | login or register to post comments | other blogs | 8136 reads
CforallCforall is a language design extending ISO C.
By Jim Apple at 2007-04-07 20:11 | Implementation | Type Theory | 11 comments | other blogs | 10966 reads
Putting functional database theory into practice: NixOS
Here are links to:
I found this an extremely readable thesis, light on math but high on insight. I now have an entirely new way of thinking about components and the filesystem, and that's really cool. I'd be very interested in hearing what people with serious deployment/sysadmin experience think about this approach. (Thanks to Gavin Mendel-Gleason and Martin Bravenboer for posting the original links in the discussions page!) By neelk at 2007-04-05 23:38 | DSL | Implementation | Software Engineering | 2 comments | other blogs | 17854 reads
Verifying Semantic Type Soundness of a Simple CompilerHaving been entirely too dismissive of one of Nick Benton's papers before, it seems only fitting that I should attempt expiation for my sins by discussing Formalizing and Verifying Semantic Type Soundness of a Simple Compiler:
I found this work striking for its strong defense of the utility of semantic, vs. syntactic, type soundness, and for its use of logical relations vs. unary predicates. I could swear that I recently read another paper making quite similar observations about semantic vs. syntactic type soundness. I'm not sure which paper it was, but regardless, there seems to me to be a great deal of overlap of insight and, to a lesser extent, approach, with A Certified Type-Preserving Compiler from Lambda Calculus to Assembly Language, and of course by extension to Leroy's work on formalizing big-step operational semantics, allocation, etc. Finally we have the very exciting news about progress on a mechanized metatheory for Standard ML, in Twelf. It's a very exciting time for mechanized metatheory! I'd love to get at least Nick Benton, Adam Chlipala, Xavier Leroy, and Tim Sweeney in a room for a few months so they could create the Next Mainstream Programming Language in Coq. Of course, we have Dr. Benton, Mr. Chlipala, and Mr. Sweeney right here on LtU... :-) Update: Mea culpa; the paper I had in mind was A Very Modal Model of a Modern, Major, General Type System. It would seem that Dr. Benton, Mr. Chlipala, and Dr. Appel and colleagues have arrived at quite similar perspectives on good approaches to mechanizing metatheory for very interesting programming language design efforts. By Paul Snively at 2007-04-04 04:45 | Implementation | Lambda Calculus | Type Theory | login or register to post comments | other blogs | 30444 reads
HaMLet-S and Successor MLAndreas Rossberg has updated HaMLet, a reference implementation of SML in SML, to support many of the suggestions for Successor ML (sML). The nice thing about implementing a PL in a high level PL (especially a metacircular implementation) is that it makes it easier to try out new language features. HaMLet-S is a spin-off devoted to Successor ML (www.successor-ml.org). It incorporates a number of preliminary proposals and is a testbed and sort of a personal vision of where SML could go. Version 1.3/S4 features the following:For the intrepid who want just a quick REPL to tinker with, #sml on the freenode irc has the smlbot set to use HaMLet-S. A Certified Type-Preserving Compiler from Lambda Calculus to Assembly LanguageA Certified Type-Preserving Compiler from Lambda Calculus to Assembly Language
I found this while attempting to follow up on this post. The approach taken here—dependently-typed ASTs and denotational semantics—and the observation that, carried to its logical conclusion, the result is typed intermediate and assembly languages, proof-carrying code, etc. suggests to me a connection to this work. It also seems to offer a denotational counterpoint to Leroy's coinductive big-step operational semantics, also done in Coq. Fascinating stuff. By Paul Snively at 2007-03-22 15:46 | Functional | Implementation | Lambda Calculus | Meta-Programming | Semantics | Type Theory | 14 comments | other blogs | 35514 reads
Pico Lisp: A Case for Minimalist Interpreters?Pico Lisp: A Radical Approach to Application Development describes a minimalist Lisp interpreter which has been used to build real applications for ~20 years. If you ignore the tendency toward self-aggrandizing, there's some food for thought here. Pico Lisp only has native support for symbols, integers, and lists (no arrays, no structures), and is implemented as a straightfoward interpreter. Yet in the benchmarks (usual disclaimers here), Pico Lisp fares well against a compiled Lisp. Is there a case to be made for ultra lean and mean interpreters as a viable alternative to compilers? Concoqtion: Indexed Types Now!Concoqtion: Indexed Types Now!
The follow-up to Concoqtion: Mixing Indexed Types and Hindley-Milner Type Inference, discussed earlier. Good stuff. Update: There's now a public Concoqtion web site! Josh, does this answer your question? :-) By Paul Snively at 2007-03-12 15:20 | DSL | Functional | Implementation | Semantics | Type Theory | 6 comments | other blogs | 9374 reads
The Design and Implementation of a Dataflow Language for Scriptable DebuggingThe Design and Implementation of a Dataflow Language for Scriptable Debugging, Guillaume Marceau, Gregory H. Cooper, Jonathan P. Spiro, Shriram Krishnamurthi, and Steven P. Reiss.
We've seen a paper on compiling dataflow languages, so here's one on an interesting application. By neelk at 2007-02-20 02:06 | DSL | Functional | Implementation | Logic/Declarative | Software Engineering | 8 comments | other blogs | 11786 reads
|
Browse archives
Active forum topics |
Recent comments
1 week 2 days ago
1 week 3 days ago
13 weeks 3 days ago
13 weeks 4 days ago
13 weeks 5 days ago
13 weeks 5 days ago
14 weeks 3 days ago
14 weeks 3 days ago
14 weeks 3 days ago
17 weeks 4 days ago