000 02860nam a22003738i 4500
001 CR9780511811432
003 UkCbUP
005 20220711202544.0
006 m|||||o||d||||||||
007 cr||||||||||||
008 101021s2002||||enk o ||1 0|eng|d
020 _a9780511811432 (ebook)
020 _z9780521820608 (hardback)
040 _aUkCbUP
_beng
_erda
_cUkCbUP
050 0 0 _aQA76.76.C65
_bA674 2002
082 0 0 _a005.4/53
_221
100 1 _aAppel, Andrew W.,
_d1960-
_eauthor.
_94591
245 1 0 _aModern compiler implementation in Java /
_cAndrew W. Appel with Jens Palsberg.
250 _a2nd ed.
264 1 _aCambridge :
_bCambridge University Press,
_c2002.
300 _a1 online resource (x, 501 pages) :
_bdigital, PDF file(s).
336 _atext
_btxt
_2rdacontent
337 _acomputer
_bc
_2rdamedia
338 _aonline resource
_bcr
_2rdacarrier
500 _aTitle from publisher's bibliographic system (viewed on 18 Jul 2016).
505 0 _aFundamentals of Compilation: Introduction -- Lexical analysis -- Parsing -- Abstract syntax -- Semantic analysis -- Activation records -- Translation to intermediate code -- Basic blocks and traces -- Instruction selection -- Liveness analysis -- Register allocation -- Putting it all together -- Advanced Topics: Garbage collection -- Object-oriented languages -- Functional programming languages -- Polymorphic types -- Dataflow analysis -- Loop optimizations -- Static single-assignment form -- Pipelining and scheduling -- The memory hierarchy -- Appendix: Mini-Java reference manual.
520 _aThis textbook describes all phases of a compiler: lexical analysis, parsing, abstract syntax, semantic actions, intermediate representations, instruction selection via tree matching, dataflow analysis, graph-coloring register allocation, and runtime systems. It includes good coverage of current techniques in code generation and register allocation, as well as the compilation of functional and object-oriented languages, that is missing from most books. The most accepted and successful techniques are described concisely, rather than as an exhaustive catalog of every possible variant, and illustrated with actual Java classes. This second edition has been extensively rewritten to include more discussion of Java and object-oriented programming concepts, such as visitor patterns. A unique feature is the newly redesigned compiler project in Java, for a subset of Java itself. The project includes both front-end and back-end phases, so that students can build a complete working compiler in one semester.
650 0 _aCompilers (Computer programs)
_93350
650 0 _aJava (Computer program language)
_93829
700 1 _aPalsberg, Jens,
_eauthor.
_94592
776 0 8 _iPrint version:
_z9780521820608
856 4 0 _uhttps://doi.org/10.1017/CBO9780511811432
942 _cEBK
999 _c68299
_d68299