Title
Status report: hot pickles, and how to serve them
Abstract
The need for flexible forms of serialisation arises under many circumstances, e.g. for doing high-level inter-process communication or to achieve persistence. Many languages, including variants of ML, thus offer pickling as a system service, but usually in a both unsafe and inexpressive manner, so that its use is discouraged.In contrast, safe generic pickling plays a central role in the design and implementation of Alice ML: components are defined as pickles, and modules can be exchanged between processes using pickling. For that purpose, pickling has to be higher-order and typed (HOT), i.e. embrace code mobility and involve runtime type checks for safety. We show how HOT pickling can be realised with a modular architecture consisting of multiple abstraction layers for separating concerns, and how both language and implementation benefit from a design consistently based on pickling.
Year
DOI
Venue
2007
10.1145/1292535.1292540
ML
Keywords
Field
DocType
alice ml,modular architecture,status report,central role,implementation benefit,high-level inter-process communication,code mobility,hot pickling,hot pickle,flexible form,safe generic pickling,inexpressive manner,higher order,virtual machine,distributed programming,persistence,inter process communication,marshalling,virtual machines
Status report,Abstraction,Virtual machine,Pickling,Marshalling,Artificial intelligence,Code mobility,Modular architecture,Mathematics,Machine learning
Conference
Citations 
PageRank 
References 
3
0.44
17
Authors
3
Name
Order
Citations
PageRank
Andreas Rossberg1737.82
Guido Tack237727.56
Leif Kornstaedt3101.32