Skip to content
prix inventor 2010 photoshop moins cher corel draw x4 preis microsoft office pas cher microsoft office enterprise 2007 preis acheter adobe premiere elements acheter adobe photoshop cs5 acheter encarta 2010 microsoft powerpoint kaufen preis kaspersky internet security 2010 prix office 2007 pro plus windows 7 home premium vollversion preis achat windows xp sp2 achat after effects prix autocad 2009 prix adobe photoshop cs3 word 2003 vollversion word 2007 kaufen prix after effect cs4 powerpoint 2007 vollversion download achat windows xp pro 64 bits microsoft office 2010 kaufen preis autocad 2010 adobe premiere pro cs4 prix acheter visual studio 2008 professional edition dreamweaver günstig adobe premiere pro kaufen prix lightroom 3 preis windows 7 home premium cubase vollversion achat pinnacle video capture for mac prix de windows vista acheter adobe premiere cs3 microsoft visio preise office 2010 preise prix windows seven preis office 2003 prix photoshop norton ghost preis archicad 13 preis achat windows 7 enseignant prix de 3ds max acheter windows 7 ultimate achat acrobat 9 adobe premiere prix acheter adobe audition 3.0 preis final cut express acheter microsoft visio acheter windows 7 pack famille pcanywhere download deutsch achat windows 7 edition familiale premium acheter windows 7 telechargement windows xp professional kauf prix pinnacle 14 adobe illustrator vollversion lightroom pas cher achat windows 7 etudiant dreamweaver french preis dreamweaver cs5 windows 7 home kaufen dragon naturally speaking prix acheter cubase 4 preis windows vista kaspersky internet security 2010 download deutsch achat illustrator windows 7 preise windows vista ultimate preisvergleich prix vista windows 7 telecharger photoshop cs4 fr acheter adobe premiere cs5 acheter windows 7 fnac preisliste matlab telecharger windows 7 ultimate fr acheter kaspersky internet security 2009 windows 7 premium kaufen adobe photoshop elements 8 prix preis windows 7 home premium family pack adobe photoshop cs3 vollversion download adobe illustrator download deutsch dreamweaver cs4 download deutsch acheter windows 7 canada preis autodesk maya achat microsoft excel telecharger windows seven french photoshop cs4 moins cher illustrator cs4 preis inventor kaufen adobe dreamweaver kaufen achat sql server 2005 preis office 2007 student prix norton 360 acheter kaspersky 2010 acheter vista premium prix outlook 2010 microsoft outlook 2007 vollversion telecharger adobe cs4 windows 7 billiger kaufen achat outlook 2003 achat office 2003 pro windows 7 vollversion oder upgrade dreamweaver cs5 français mathcad kaufen prix solidworks 2010 premium office 2003 billig telecharger archicad 13 fr achat powerpoint solidworks prix windows 7 moin cher preis adobe photoshop cs5 extended acheter cubase sx 3 microsoft works kaufen prix microsoft access preis inventor nero 9 vollversion download prix photoshop pour mac frontpage preis preise solidworks autocad vollversion preis acheter windows seven pro prix windows xp familial sql server preis acheter indesign preis windows 7 ultimate upgrade guitar pro 5 kaufen achat autocad 2010 adobe illustrator prix windows xp professional preis windows 7 preistabelle 3ds max 2010 kaufen achat photoshop cs2 acheter microsoft word 2003 autocad 2010 vollversion windows 7 ultimate kaufpreis prix powerpoint preis dreamweaver cs5 preis adobe cs4 preise maya mare prix flash cs4 windows 7 preiswert kaufen preis sql server 2008 standard prix windows 7 enseignant sql server preisliste telecharger microsoft word francais prix autocad prix illustrator cs3 prix de windows 2003 server acheter word 2007 microsoft word 2003 download deutsch preis adobe photoshop cs4 extended photoshop elements 6 preis prix microsoft office 2008 flash cs3 preis quarkxpress preis windows xp prix windows 7 64 bits telecharger prix frontpage prix autocad lt microsoft access 2007 preis windows 7 prix reduit indesign cs5 kaufen prix windows 7 oem adobe illustrator cs3 download deutsch windows 2008 datacenter preis photoshop prix logiciel windows 7 professionnel moins cher adobe illustrator cs5 vollversion lightroom günstig adobe photoshop cs3 kauf kaspersky pas chere vmware workstation 7 download deutsch acheter adobe creative suite 5 acheter microsoft money 2005 pinnacle studio 14 preis fireworks preis word 2007 preis adobe indesign cs4 download deutsch acheter office 2007 famille acheter windows 2007 microsoft outlook preis lightroom 2 kaufen telecharger cubase windows 7 kaufen schweiz acheter microsoft office standard 2007 autosketch 8 download office 2010 günstig achat photoshop elements adobe photoshop cs4 fr office 2007 preis acheter windows 7 au meilleur prix preis nero 8 windows 7 pro vollversion dreamweaver cs3 francais acheter adobe after effect cs5 prix microsoft office 2007 pro windows 7 professional günstig acheter final cut express 4 windows seven preis prix sql server 2000 acheter corel draw x3 acrobat 9 pro preis visual studio kaufen acheter office 2007 etudiant office 2007 kauf acheter 3ds max adobe audition 3 preis preis visual studio 2008 windows vista prix preis windows 7 pro windows xp sp3 preisvergleich outlook 2007 günstig windows 7 download deutsch 64 bit windows 7 kaufen 50 euro acheter illustrator cs4 prix windows 7 ultimate prix de cubase 5 microsoft office 2003 kauf prix de norton ghost prix visual studio windows 2003 enterprise preis acheter windows xp sp3 microsoft works kaufen cubase achat dreamweaver preis achat windows 7 starter edition cubase kaufen vmware workstation prix sony vegas 9 preisvergleich indesign vollversion download acheter windows 7 64 bits telecharger windows 7 64 bits francais adobe captivate 2 telecharger acheter microsoft windows xp windows xp professional sp3 vollversion adobe after effects cs4 preis telecharger office 2007 microsoft money download deutsch windows vista vollversion acheter windows vista basic acheter office 2010 beta achat microsoft autoroute 2010 achat autocad 2010 acheter windows 7 en suisse prix de office 2003 windows 7 premium oem prix microsoft office entreprise 2007 acheter acrobat reader autocad electrical 2010 francais windows 7 professional preis oem prix adobe acrobat pro 9 telecharger illustrator cs2 fr microsoft office 2010 günstig telecharger outlook francais preis cs5 windows 7 professional kauf windows vista business 64 bit corel draw download deutsch adobe indesign cs3 vollversion adobe elements 8 preis windows vista telechargementz telecharger office 2010 francais prix de photoshop elements acheter solidworks acheter outlook 2007 prix windows 7 pro prix windows 2000 windows vista home premium kaufen windows xp pro acheter adobe cs5 moins cher omnipage download deutsch office pme 2007 télécharger prix guitar pro 5 acheter adobe cs4 microsoft word kaufen excel 2007 preis windows 7 vollversion download deutsch autocad 2009 kaufen solidworks 2009 kaufen windows 7 günstig downloaden windows 7 starter preis prix de matlab prix windows vista home premium acheter office 2007 3ds max 2009 preis premiere elements preis dreamweaver kaufen windows 7 professional preise acheter photoshop prix windows 7 belgique acheter pinnacle studio 11 acheter adobe cs3 acheter acrobat acheter windows xp pro sp2 prix indesign cs3 achat microsoft access windows 7 preissenkung adobe indesign cs4 prix photoshop cs4 vollversion acheter windows xp fnac preis microsoft office preis indesign windows vista moins cher windows 7 ultimate günstig nero vollversion chip achat pcanywhere acheter microsoft project 2003 autocad prix etudiant sony vegas pro 9 preis windows xp kaufen saturn adobe cs3 design premium vollversion maya 2009 kaufen microsoft office 2007 vollversion nero 9 vollversion preis telecharger windows 7 full adobe cs4 design standard vista ultimate telecharger prix microsoft windows 7 microsoft powerpoint download deutsch prix sony vegas pro 9 adobe cs4 master collection preisvergleich acheter sony vegas pro 9 acheter quarkxpress photoshop elements 8 vollversion outlook 2007 preise acheter adobe photoshop windows 7 home premium günstig telecharger photoshop francais prix omnipage preis outlook 2010 prix maya 2010 acheter windows 7 microsoft project 2007 preis windows 7 ultimate vollversion preis microsoft office 2007 standard preis photoshop cs4 extended preis windows 7 student acheter adobe after effects dragon naturally speaking preis acheter microsoft office 2000 acheter autocad 2008 dreamweaver cs3 download deutsch corel draw vollversion prix windows xp professional corel draw preisvergleich acheter flash cs3 acheter autocad architecture autocad architecture preise autocad günstig acheter windows seven ultimate autocad mechanical preise achat dreamweaver dreamweaver cs4 prix

Abstracting Abstract Machines: Storing and stacking continuations

We’ve been working on two techniques for systematically deriving abstract interpretations approximating canonical machines for higher-order languages. The first allocates continuations in a bounded store to achieve a finite state-space. We demonstrate the generality of this approach by transforming classical abstract machines into abstract interpreters.

Abstracting Abstract Machines.
David Van Horn and Matthew Might.
The 15th ACM SIGPLAN International Conference on Functional Programming (ICFP’10), Baltimore, Maryland, September, 2010.

We describe a derivational approach to abstract interpretation that yields novel and transparently sound static analyses when applied to well-established abstract machines. To demonstrate the technique and support our claim, we transform the CEK machine of Felleisen and Friedman, a lazy variant of Krivine’s machine, and the stack-inspecting CM machine of Clements and Felleisen into abstract interpretations of themselves. The resulting analyses bound temporal ordering of program events; predict return-flow and stack-inspection behavior; and approximate the flow and evaluation of by-need parameters. For all of these machines, we find that a series of well-known concrete machine refactorings, plus a technique we call store-allocated continuations, leads to machines that abstract into static analyses simply by bounding their stores. We demonstrate that the technique scales up uniformly to allow static analysis of realistic language features, including tail calls, conditionals, side effects, exceptions, first-class continuations, and even garbage collection.

The second technique keeps continuations on the stack to achieve a push-down model of abstract interpretation. The resulting abstract interpreter always matches calls and returns, achieving a higher level of precision by never conflating call and return pairs. Although this technique produces abstract interpreters with infinite state-spaces, we demonstrate how basic static analysis questions remain decidable by casting them as language inclusion problems answered by push-down automata.

Pushdown Control-Flow Analysis of Higher-Order Programs.
Christopher Earl, Matthew Might, and David Van Horn.
The 2010 Workshop on Scheme and Functional Programming (SFP 2010), Montréal, Québec, Canada, August, 2010.

Context-free approaches to static analysis gain precision over classical approaches by perfectly matching returns to call sites—a property that eliminates spurious interprocedural paths. Vardoulakis and Shivers’s recent formulation of CFA2 showed that it is possible (if expensive) to apply context-free methods to higher-order languages and gain the same boost in precision achieved over first-order programs.

To this young body of work on context-free analysis of higher-order programs, we contribute a pushdown control-flow analysis framework, which we derive as an abstract interpretation of a CESK machine with an unbounded stack. One instantiation of this framework marks the first polyvariant pushdown analysis of higher-order programs; another marks the first polynomial-time analysis. In the end, we arrive at a framework for control-flow analysis that can efficiently compute pushdown generalizations of classical control-flow analyses.

There are also slides (PDF) covering both techniques from a talk given at the Harvard PL seminar.

IBM PL Day

IBM Programming Languages Day

July 29, 2010, Hawthorne NY

The eleventh annual Programming Languages Day will be held at the IBM Thomas J. Watson Research Center on Thursday, July 29, 2010. The day will be held in cooperation with the New Jersey and New England Programming Languages and Systems Seminars. The main goal of the event is to increase awareness of each other’s work, and to encourage interaction and collaboration. (Continued)

Plotkin given SIGPLAN achievement award

Gordon Plotkin was awarded the SIGPLAN achievement award at this year’s PLDI.

Professor Gordon D. Plotkin has made fundamental advances in almost every area of the theory of programming languages. His contributions have helped to establish the mathematical foundations on which the scientific study of programming languages are based. His 1975 paper “Call-by-name, Call-by-value, and the λ-calculus” exposed the relationship between the reduction semantics of the λ-calculus and its operational semantics, as defined by Landin’s SECD machine. In the process, he defined what it meant for a calculus and a semantics to correspond: this launched the study of operational semantics as it is now understood. (Continued)

Photos from TFP 2010

Some photos from TFP 2010, Norman, Oklahoma.

Robin Milner: The Elegant Pragmatist

Turing award winner and programming language trailblazer, Robin Milner, who recently passed away, has a cover story in the latest Communications of the ACM.

A man of modest background and quiet brilliance, Milner made ground-breaking contributions to the fields of verification, programming languages, and concurrency. He was born in 1934 near Plymouth, England, and won scholarships to Eton—where he developed an enduring love of math as well as a prodigious work ethic—and King’s College, Cambridge. It was during his time at Cambridge that Milner was introduced to programming, though the subject didn’t interest him initially. “I regarded programming as really rather inelegant,” he recalled in an interview in 2001 with Martin Berger, a professor at the University of Sussex. “So I resolved that I would never go near a computer in my life.”

What’s the Racket?

Racket, the system formerly known as PLT Scheme, has just been released.

PLT is happy to announce the release of Racket, available from

http://racket-lang.org/

With Racket, you can script command shells and web servers; you can quickly prototype animations and complex GUIs; regexps and threads are here to serve you. To organize your systems, you can mix and match classes, modules or components. Best of all, you start without writing down types. If you later wish to turn your script into a program, equip your Racket modules with explicit type declarations as you wish. And Racket doesn’t just come as a typed variant; you can also write your modules in a purely functional and lazy dialect.

Racket comes in so many flavors because Racket is much more than a standard scripting language or a plain programming language. Racket supports language extensibility to an unequaled degree. A Racket programmer knows that making up a new language is as easy as writing a new library.

To help you start quickly, Racket includes batteries in all shapes and sizes, most importantly, extensive documentation and all kinds of libraries.

Racket occupies a unique position between research and practice. It inherits many major ideas from language research, among them type safety (when the type system says that x is a number, then at runtime it always is a number) and memory safety (when some memory is reclaimed by the garbage collector it is impossible to still have a reference to it). At the same time, user demand governs rigid adherence to purely theoretical principles.

Racket, formerly PLT Scheme, is a product of over 15 years of development. Although Racket starts with a mature software base and an established user community, its new name reflects our view that this is just the beginning of Racket’s evolution.

Fun with Unicode and delimited continuations

Doug Orleans’ cute program to compute roots of quadratic equations:

(define (± x y)
  (shift k (values (k (+ x y)) (k (- x y)))))

(define (quadratic-formula-roots a b c)
  (reset (/ (± (- b) (√ (- (² b) (* 4 a c))))
	    (* 2 a))))

Evaluating Call By Need on the Control Stack

New paper from Stephen Chang, David Van Horn, and Matthias Felleisen, appearing at Trends in Functional Programming 2010: Evaluating Call By Need on the Control Stack.

Abstract:

Ariola and Felleisen’s call-by-need λ-calculus replaces a variable occurrence with its value at the last possible moment. To support this gradual notion of substitution, function applications—once established—are never discharged. In this paper we show how to translate this notion of reduction into an abstract machine that resolves variable references via the control stack. In particular, the machine uses the static address of a variable occurrence to extract its current value from the dynamic control stack.

PDF

First you curse…

…then you recurse: http://www.google.com/search?q=recursion.

PhD and Postdoc positions: Functional Programming and Automatic Differentiation

Barak Pearlmutter is looking for PhD students and postdocs to work on functional programming and automatic differentiation.

I’m looking for PhD students and postdocs interested in working on an
elegant combination of functional programming and big-iron style
numeric computing. Blurb below. If you know anyone good who might be
interested, I’d be grateful if you’d pass this along.

Sounds fun!

Functional Programming and Automatic Differentiation

PhD Studentships
Postdoctoral Positions

We are adding exact first-class derivative calculation operators
(Automatic Differentiation or AD) to the lambda calculus, and
embodying the combination into a production-quality optimising
compiler. Our research prototype compiler generates object code
competitive with the fastest current systems, which are based on
FORTRAN. We are seeking PhD students and postdocs with interest and
experience in relevant areas: programming language theory, numeric
computing/numeric linear algebra, or differential geometry; and a
burning drive to help lift big iron numeric computing out of the 1960s
and into a newer higher order. Specific sub-projects include:
compiler and numeric programming environment construction; writing,
simplifying, and generalising numeric algorithms through the use of AD
operators; and associated type/lambda calculus/PLT/real computation
issues.

The project headquarters will be in the Hamilton Institute, NUI
Maynooth, Ireland, http://www.hamilton.ie/.

Applications to:
“Barak A. Pearlmutter”

google

google

asus