HOME | REACH US  
 



.com .net .org .info .mobi
.biz .us .co.uk .in
.eu .ws .bz .cc .tv Etc.
Domain Names

Website Development
Web Hosting
Email Hosting
Digital Certificate
Etc.

@ Best Prices From

www.DomainsUAE.com
Essentials of Programming Languages
   
Google
 
Web libraryoflibrary.com

Essentials of Programming Languages (MIT Press, 2001. 2nd edition, ISBN 0-262-06217-8) is a book by Daniel P. Friedman, Mitchell Wand and Christopher T. Haynes on programming languages.

EoPL is a text book that surveys the principles of programming languages from an operational perspective. It starts with an interpreter in Scheme for a simple functional core language similar to the lambda calculus and then systematically adds constructs. For each addition, for example, variable assignment or thread-like control, the book illustrates an increase in expressive power of the programming language and a demand for new constructs for the formulation of a direct interpreter. The book also demonstrates that systematic transformations, say store-passing style or continuation-passing style can eliminate certain constructs from the language in which the interpreter is formulated.

The second part of the book is dedicated to a systematic translation of the interpreter(s) into register machines. The transformations show how to eliminate higher-order closures; continuation objects; recursive function calls; and more. At the end, the reader is left with an "interpreter" that uses nothing but tail-recursive function calls and assignment statements plus conditionals. It becomes trivial to translate this code into a C program or even an assembly program. As a bonus, the book shows how to pre-compute certain pieces of 'meaning' and how to generate a representation of these pre-computations. Since this is the essence of compilation, the book also prepares a course on the principles of compilation and language translation, a related but distinct topic.

Like SICP, EoPL represents a significant departure from the prevailing text book approach in the 1980s. At the time, a book on the principles of programming languages presented four to six (or even more) programming languages and discussed their programming idioms and their implementation at a high level. The most successful books typically covered Algol 60 (and the so-called Algol family of programming languages); Snobol; Lisp; and Prolog. Even today a fair number of text books on programming languages are just such surveys, though their scope has narrowed.

EoPL was started in 1983 when Indiana was one of the leading departments in programming language research. Eugene Kohlbecker, one of Friedman's PhD students, transcribed and collected his "311 lectures". Other faculty members, including Mitch Wand and Christopher Haynes, started contributing and turned "The Hitchhiker's Guide to the Meta-Universe" -- as Kohlbecker had called it -- into the systematic, interpreter and transformation-based survey that it is now. Over the 25 years of its existence, the book has become a near-classic; it is now in its third edition, including additional topics such as 'types' and 'modules'. Its first part now incorporates ideas on programming from HtDP, another non-conventional text book, which uses Scheme to teach the principles of program design. The range of coverage has expanded to cover topics such as 'types' and 'module systems'. The authors as well as Matthew Flatt have recently provided DrScheme plug-ins and language levels for teaching with EoPL.

EoPL has spawned at least two other, related texts: Queinnec's "LIsp in Small Pieces" and Krishnamurthi's "Programming Languages: Applications and Implementations".

See also

References



Index Of Related Pages




All pages | Previous page (Essboard) | Next page (Essex bus routes 521/522/523)

Essentials of Programming Languages
EssequiboEssequibo (colony)
Essequibo Islands-West DemeraraEssequibo River
Essere o sembrareEssert
Essert, Territoire de BelfortEssert-Pittet
Essert-RomandEssert-sous-Champvent
EssertauxEssertenne
Essertenne-et-CeceyEssertes
Essertines
Essertines-en-ChâtelneufEssertines-en-DonzyEssertines-sur-Rolle
Essertines-sur-Yverdon
Esserts-BlayEsserval-CombeEsserval-Tartre
EssexEssex, California
Essex, Connecticut
Essex, Illinois
Essex, Iowa
Essex, Maryland
Essex, MassachusettsEssex, Missouri
Essex, MontanaEssex, New York
Essex, Ontario
Essex, Vermont
Essex-Caledonia-Orleans Vermont Representative District, 2002-2012
Essex-Caledonia Vermont Representative District, 2002-2012
Essex (Amtrak station)
Essex (CDP), Massachusetts
Essex (UK Parliament constituency)Essex (album)Essex (automobile)
Essex (disambiguation)Essex (electoral district)Essex (pig)
Essex (provincial electoral district)Essex (ship)
Essex (whaleship)Essex 73'sEssex Act 1987
Essex Agricultural and Technical High School
Essex AirportEssex Blades (American football)
Essex BoysEssex Bridge
Essex Bridge, Staffordshire
Essex Business Houses Football League
Essex CalfEssex Catholic High School
Essex ChronicleEssex Coach
Essex Company Machine ShopEssex Company Offices and Yard
Essex County
Essex County, MassachusettsEssex County, New Jersey
Essex County, New YorkEssex County, Ontario
Essex County, VermontEssex County, Virginia
Essex County AirportEssex County College
Essex County Court Buildings
Essex County Cricket ClubEssex County Cricket Club in 2005Essex County Division
Essex County Fire and Rescue ServiceEssex County Hospital CenterEssex County Public Schools
Essex County Sheriff's Office
Essex County Vocational Technical Schools
Essex District High School
Essex East (electoral district)
Essex EmeraldEssex FM
Essex Fells, New JerseyEssex Fells School District
Essex Golf & Country Club
Essex HemphillEssex Heritage
Essex High SchoolEssex High School (Virginia)
Essex HouseEssex House (London)
Essex Institute Historic District
Essex Johnson
Essex Junction, VermontEssex Junction (Amtrak station)
Essex JuntoEssex Leopards
Essex Memorial Arena
Essex Middle SchoolEssex National Heritage Commission
Essex North
Essex North (electoral district)Essex North East (European Parliament constituency)Essex North and Suffolk South (European Parliament constituency)
Essex Olympian Football League
Essex Park, New JerseyEssex Park Randers
Essex Police
Essex Police SpecialsEssex Premier League
Essex RecordsEssex Regiment
Essex Region Conservation Authority
Essex Road railway station
Essex Senior Cup
Essex Senior Cup 2008-09Essex Senior Football League
Essex SkipperEssex Society for Family History
Essex South
Essex South (European Parliament constituency)Essex South (disambiguation)
Essex South West (European Parliament constituency)
Essex Spartans
Essex Street (HBLR station)
Essex Street (Manhattan)Essex Street Market
Essex Tech CenterEssex Terminal Railway
Essex Town Hall and TOHP Burnham Library
Essex TownshipEssex Township, Illinois
Essex Township, Kankakee County, IllinoisEssex Township, Michigan
Essex Township, Stark County, Illinois
Essex Village
Essex Way
Essex West (electoral district)Essex West and Hertfordshire East (European Parliament constituency)
Essex Wildlife TrustEssex Wives
Essex Yeomanry
Essex and Suffolk Border Football League
Essex bus route 505Essex bus route 541
Essex bus route 55Essex bus route 804Essex bus route H1
Essex bus routes 1 and 1A
Essex bus routes 240 and 250Essex bus routes 521, 522 and 523

Previous page (Essboard) | Next page (Essex bus routes 521/522/523)



BUILD YOUR WEB SITE WITH www.DomainsUAE.com