Personal information

MIT grad '86 - Arvind's group (The Id language guys). Big prolog fan, then lisp. Worked on type inference for a while. Worked for Gold Hill on "Golden Common Lisp", and participated in CL standard (x3j13 for the obscurified), feel like my right arm was cut off when lisp became impractical.

Worked on compilation for single-assignment languages - "Implicitly Parallel C" was one concept.

Graduated to real industrial problems: Flow-based programming - high-volume parallel streaming dataflow for record-processing systems. Architect of Torrent 'Orchestrate' engine now at core of IBM InfoSphere DataStage product. Worked on next generations of these concepts including real-time, and transactional (once and only once) semantics.

Co-chair Data Format Description Language (DFDL) standards working group in the Open Grid Forum (OGF). see http://www.ogf.org/gf/group_info/view.php?group=dfdl-wg

Current languages I'm writing in: Scala, Java

Languages I want features from: Nice

Languages that need fixing: SQL - doesn't even have first order black-box abstraction.

Implicitly parallel programming models (e.g., yes, more streaming dataflow. why not?) I generally think "threads suck", and most mechanisms for explicit parallelism and synchronization are unusable by real programmers. Most streaming dataflow languages, and unextended SQL, XQuery, are not turing complete, and "that's a good thing"


9 years 6 days