* NYC LOCAL: Tuesday 13 February 2007 Lisp NYC: Pinku Surana on Meta-Compilation of Language Abstractions
@ 2007-02-12 2:46 secretary
0 siblings, 0 replies; only message in thread
From: secretary @ 2007-02-12 2:46 UTC (permalink / raw)
To: help-gnu-emacs
<blockquote
what="official Lisp NYC announcement">
From: Heow Eide-Goodman <lists@alphageeksinc.com>
To: LispNYC <lisp@lispnyc.org>
Subject: [Lisp] Lisp Meeting, February 13th 7:00 at Trinity
Please join us for our next meeting on Tuesday, February 13th from
7:00 to 9:00 at Trinity Lutheran Church.
Pinku Surana presents his dissertation "Meta-Compilation of Language
Abstractions" where he discusses the benefits of user-written compiler
extensions. This leads to simple APIs, optimizations, and the clean
embedding of domain-specific languages:
High-level programming languages are currently transformed
into efficient low-level code using optimizations that are
encoded directly into the compiler. Libraries, which are
semantically rich user-level abstractions, are largely
ignored by the compiler. Consequently, library writers often
provide a complex, low-level interface to which programmers
"manually compile" their high-level ideas. If library
writers provide a high-level interface, it generally comes
at the cost of performance. Ideally, library writers should
provide a high-level interface and a means to compile it
efficiently.
This dissertation demonstrates that a compiler can be
dynamically extended to support user-level abstractions. The
Sausage meta-compilation system is an extensible
source-to-source compiler for a subset of the Scheme
programming language. Since the source language lacks nearly
all the abstractions found in popular languages, new
abstractions are implemented by a library and a compiler
extension. In fact, Sausage implements all its
general-purpose optimizations for functional languages as
compiler extensions. A meta-compiler, therefore, is merely a
shell that coordinates the execution of many external
extensions to compile a single module. Sausage demonstrates
that a compiler designed to be extended can evolve and adapt
to new domains without a loss of efficiency.
Dr. Surana received his Doctorate in Computer Science from Northwestern
University. He has spent several years working at Motorola's Software
Research Center and has completed internships at Microsoft Research.
His thesis is available here:
* ftp://lispnyc.org/meeting-assets/2007-01-14_surana/SuranaThesis.pdf
Directions to Trinity:
Trinity Lutheran
602 E. 9th St. & Ave B., on Thomkins Square Park
http://trinitylowereastside.org/
From N,R,Q,W (8th Street NYU Stop) and the 4,5 (Astor Street Stop):
Walk East 4 blocks on St. Marks, cross Thomkins Square Park.
From F&V (2nd Ave Stop):
Walk E one or two blocks, turn north for 8 short blocks
From L (1st Ave Stop):
Walk E one block, turn sounth for 5 short blocks
The M9 bus line drops you off at the doorstep and the M15 is near get
off on St. Marks & 1st)
To get there by car, take the FDR (East River Drive) to Houston then
go NW till you're at 9th & B. Week-night parking isn't bad at all,
but if you're paranoid about your Caddy or in a hurry, there is a
parking garage on 9th between 1st and 3rd Ave.
_______________________________________________
Lisp mailing list
Lisp@lispnyc.org
http://www.lispnyc.org:8080/mailman/listinfo/lisp
</blockquote>
Distributed poC TINC:
Jay Sulzberger <secretary@lxny.org>
Corresponding Secretary LXNY
LXNY is New York's Free Computing Organization.
http://www.lxny.org
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2007-02-12 2:46 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-02-12 2:46 NYC LOCAL: Tuesday 13 February 2007 Lisp NYC: Pinku Surana on Meta-Compilation of Language Abstractions secretary
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.