skip to main content
10.1145/1411304acmconferencesBook PagePublication PagesicfpConference Proceedingsconference-collections
ML '08: Proceedings of the 2008 ACM SIGPLAN workshop on ML
ACM2008 Proceeding
Publisher:
  • Association for Computing Machinery
  • New York
  • NY
  • United States
Conference:
ICFP08: ACM SIGPLAN International Conference on Functional Programming Victoria BC Canada 21 September 2008
ISBN:
978-1-60558-062-3
Published:
21 September 2008
Sponsors:
Next Conference
Bibliometrics
Skip Abstract Section
Abstract

It is our great pleasure to welcome you to ML 2008 - the 2008 ACM SIGPLAN Workshop on ML. ML is a family of programming languages that includes dialects known as Standard ML, Objective Caml, and F#. The development of these languages has inspired a large amount of computer science research, both practical and theoretical. This workshop aims to build on previous occasions (recent instances are ML 2005 in Tallinn, Estonia; 2006 in Portland, Oregon; and 2007 in Freiburg, Germany), providing a forum to encourage discussion and research on ML and related technology. The 2008 Workshop on ML is held in conjunction with the 13th ACM SIGPLAN International Conference on Functional Programming (ICFP 2008) in Victoria, British Columbia, Canada on Sunday, September 21, 2008.

In response to the call for papers, we received 13 submissions. Each paper was reviewed by at least 3 program committee members or external reviewers. After a 5-day electronic discussion, the program committee selected 9 papers for presentation at the workshop.

We are also fortunate to have an invited talk from Andrew Kennedy, researcher in Programming Principles and Tools Group, Microsoft Research Cambridge, about his recent work on types for units of measure in F#.

Skip Table Of Content Section
invited-talk
Types for units-of-measure in f#: invited talk

Bugs caused by units-of-measure errors can have catastrophic consequences, the most famous of which was the loss in September 1999 of NASA's Mars Climate Orbiter probe, caused by a confusion between newtons (the SI unit of force) and lbf (the Imperial ...

SESSION: Session 1
research-article
Lwt: a cooperative thread library

We present a cooperative thread library for Objective Caml. The library is entirely written in Objective Caml and does not rely on any external C function. Programs involving threads are written in a monadic style. This makes it possible to write ...

research-article
Hashconsing in an incrementally garbage-collected system: a story of weak pointers and hashconsing in ocaml 3.10.2

This article describes the implementations of weak pointers, weak hashtables and hashconsing in version 3.10.2 of the Objective Caml system, with focus on several performance pitfalls and their solutions.

research-article
Unrestricted pure call-by-value recursion

Call-by-value languages commonly restrict recursive definitions by only allowing functions and syntactically explicit values in the right-hand sides. As a consequence, some very appealing programming patterns that work well in lazy functional languages ...

SESSION: Session 2
research-article
Compiling pattern matching to good decision trees

We address the issue of compiling ML pattern matching to compact and efficient decisions trees. Traditionally, compilation to decision trees is optimized by (1) implementing decision trees as dags with maximal sharing; (2) guiding a simple compiler with ...

research-article
Calling variadic functions from a strongly-typed language

The importance of providing a mechanism to call C functions from high-level languages has been understood for many years and, these days, almost all statically-typed high-level-language implementations provide such a mechanism. One glaring omission, ...

research-article
Many holes in hindley-milner

We implement statically-typed multi-holed contexts in OCaml using an underlying algebraic datatype augmented with phantom types. Existing approaches require dynamic checks or more complex type systems. In order to support concatenation we use two type ...

SESSION: Session 3
research-article
O'browser: objective caml on browsers

We present a way to run Objective Caml programs on a standard, unmodified web browser, with a compatible data representation and execution model, including concurrency. To achieve this, we designed a bytecode interpreter in JavaScript, as well as an ...

research-article
Caml-Shcaml: an ocaml library for unix shell programming

Objective Caml is a flexible, expressive programming language, but for manipulating Unix processes, nothing beats the terseness and clarity of Bourne Shell: ls *.docx | wc -l

To achieve the same effect in C requires several more lines of code and, very ...

research-article
A functional implementation of the garsia--wachs algorithm: (functional pearl)

This functional pearl proposes an ML implementation of the Garsia-Wachs algorithm. This somewhat obscure algorithm builds a binary tree with minimum weighted path length from weighted leaf nodes with given inorder. Our solution exhibits the usual ...

Contributors
  • Tohoku University
  1. Proceedings of the 2008 ACM SIGPLAN workshop on ML

    Recommendations

    Acceptance Rates

    Overall Acceptance Rate6of11submissions,55%
    YearSubmittedAcceptedRate
    ML '0911655%
    Overall11655%