User loginNavigation |
Editors on Vacation
Or are they just being lazy? ;-)
A gentle reminder to y'all to post something... By Ehud Lamm at 2005-05-17 08:41 | Admin | login or register to post comments | other blogs | 4395 reads
Implicitly Heterogeneous Multi-stage Programming
Implicitly Heterogeneous Multi-stage
Programming. Jason Eckhardt, Roumen Kaiabachev, Emir Pasalic, Kedar Swadi
and Walid Taha
Previous work on semantics-based multi-stage programming (MSP) language design focused on homogeneous languages designs, where the generating and the generated languages are the same. Homogeneous designs simply add a hygienic quasi-quotation and evaluation mechanism to a base language. An apparent disadvantage of this approach is that the programmer is bound to both expressivity and performance charcteristics of the base language. This paper proposes a practical means to show that this can be avoided by providing specialized translations from subsets of the base language to different target languages. The idea is that the first stage is done in OCaml and the second stage in C or Fortran (or other similar language). The main point is that the output from the first stage is a subset of OCaml (actually, a subset of Ocaml AST), which is more regular and permits efficient translation to C (as compared to what's required in compiling full Ocaml). The generated C code is, of course, automatically type-correct. As Oleg remarks, this brings us close to the goal of enjoying all benefits of abstractions with no overhead. More information here. Parallel Programming with Matrix Distributed ProcessingMatrix Distributed Processing (MDP) is a C++ library for fast development of efficient parallel algorithms. MDP enables programmers to focus on algorithms, while parallelization is dealt with automatically and transparently. Here we present a brief overview of MDP and examples of applications in Computer Science (Cellular Automata), Engineering (PDE Solver) and Physics (Ising Model). A short tutorial on MDP. MDP provides a distributed programming model. On top of that, it is interesting to see that the library adds what looks like a language constructs (e.g., forallsites). Language-based security for mobile code, with applications to smart cards
A 7-hour lecture given at TECS Week 2005 by Xavier Leroy.
This detailed set of slides explains various security models, and related attacks. It has been awhile since we discussed mobile code and its security implications, but I am sure everyone realizes this is a major issue, that will only become more important as network applications become more and more pervasive (e.g., via mobile phones). dtracing Python
Speed is often used as an excuse for bad programming (premature optimization is the root of all evil and all that). Yet understanding the causes of poor performance of the language system, as opposed to user code, isn't all that easy.
If you are using an open source language implementation, and have access to something clever like dtrace, it might be easier than you think. By Ehud Lamm at 2005-05-13 09:12 | Implementation | login or register to post comments | other blogs | 5501 reads
Design Philosophy of Distributed Programming in MozartFrom the abstract of Per Brand's Ph.D. thesis,
By Peter Van Roy at 2005-05-11 12:14 | Parallel/Distributed | login or register to post comments | other blogs | 5930 reads
Python Challenge
A well done set of Python challenges.
Some solutions can be found here, if you need help getting started... CellangThe system consists of a compiler for the Cellang cellular automata programming language, along with the corresponding documentation, viewer, and various tools. Cellang has been undergoing refinement for the last several years, with corresponding upgrades to the compiler... Well, I did ask for a DSL for cellular automata. Here's one... Functional and Declarative Programming in Education (FDPE05)
A one day workshop on Sunday, 25 September at ICFP05.
I don't often post CFPs and the like, but since it's been awhile since FPDE02, and since many here have an active interest in these topics, I made an exception. Links to interesting projects related to FPDE, are more than welcome. By Ehud Lamm at 2005-05-11 08:00 | Teaching & Learning | login or register to post comments | other blogs | 5031 reads
A type discipline for authorization policies
A type discipline for authorization policies.
Cedric Fournet; Andrew D. Gordon; Sergio Maffeis
Distributed systems and applications are often expected to enforce high-level authorization policies. To this end, the code for these systems relies on lower-level security mechanisms such as, for instance, digital signatures, local ACLs, and encrypted communications. In principle, authorization specifications can be separated from code and carefully audited. Logic programs, in particular, can express policies in a simple, abstract manner. For a given authorization policy, we consider the problem of checking whether a cryptographic implementation complies with the policy. We formalize authorization policies by embedding logical predicates and queries within a spi-calculus. This embedding is new, simple, and general; it allows us to treat logic programs as specifications of code using secure channels, cryptography, or a combination. Moreover, we propose a new dependent type system for verifying such implementations against their policies. Using Datalog as an authorization logic, we show how to type several examples using policies and present a general schema for compiling policies. I guess it's dependent types day around here... By Ehud Lamm at 2005-05-10 19:51 | Logic/Declarative | Parallel/Distributed | Type Theory | login or register to post comments | other blogs | 4773 reads
|
Browse archives
Active forum topics |
Recent comments
22 weeks 3 days ago
22 weeks 3 days ago
22 weeks 4 days ago
44 weeks 5 days ago
49 weeks 3 hours ago
50 weeks 4 days ago
50 weeks 4 days ago
1 year 1 week ago
1 year 5 weeks ago
1 year 5 weeks ago