<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="nb">
	<id>https://www.wikisida.no/index.php?action=history&amp;feed=atom&amp;title=Principles_of_Compiler_Design</id>
	<title>Principles of Compiler Design - Sideversjonshistorikk</title>
	<link rel="self" type="application/atom+xml" href="https://www.wikisida.no/index.php?action=history&amp;feed=atom&amp;title=Principles_of_Compiler_Design"/>
	<link rel="alternate" type="text/html" href="https://www.wikisida.no/index.php?title=Principles_of_Compiler_Design&amp;action=history"/>
	<updated>2026-05-14T11:09:33Z</updated>
	<subtitle>Versjonshistorikk for denne siden på wikien</subtitle>
	<generator>MediaWiki 1.45.1</generator>
	<entry>
		<id>https://www.wikisida.no/index.php?title=Principles_of_Compiler_Design&amp;diff=108329&amp;oldid=prev</id>
		<title>Wikisida: Én sideversjon ble importert</title>
		<link rel="alternate" type="text/html" href="https://www.wikisida.no/index.php?title=Principles_of_Compiler_Design&amp;diff=108329&amp;oldid=prev"/>
		<updated>2026-03-27T03:59:35Z</updated>

		<summary type="html">&lt;p&gt;Én sideversjon ble importert&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;nb&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Eldre sideversjon&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Sideversjonen fra 27. mar. 2026 kl. 03:59&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;4&quot; class=&quot;diff-notice&quot; lang=&quot;nb&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(Ingen forskjell)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;!-- diff cache key c1wiki:diff:1.41:old-108328:rev-108329 --&gt;
&lt;/table&gt;</summary>
		<author><name>Wikisida</name></author>
	</entry>
	<entry>
		<id>https://www.wikisida.no/index.php?title=Principles_of_Compiler_Design&amp;diff=108328&amp;oldid=prev</id>
		<title>nb&gt;Ranværing på 25. nov. 2024 kl. 17:19</title>
		<link rel="alternate" type="text/html" href="https://www.wikisida.no/index.php?title=Principles_of_Compiler_Design&amp;diff=108328&amp;oldid=prev"/>
		<updated>2024-11-25T17:19:03Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Ny side&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Infoboks bok&lt;br /&gt;
| tittel = Principles of Compiler Design&lt;br /&gt;
| originaltittel = &lt;br /&gt;
| bilde =  &lt;br /&gt;
| bildestørrelse = &lt;br /&gt;
| bildetekst = &lt;br /&gt;
| forfatter = [[Alfred Aho]] og [[Jeffrey Ullman]]&lt;br /&gt;
| sjanger = [[Sakprosa]], [[informasjons- og kommunikasjonsteknologi]], [[kompilatorteknikk]]&lt;br /&gt;
| utgitt = {{Startdato og alder|1977|08|01}}&lt;br /&gt;
| forlag = [[Addison-Wesley]]&lt;br /&gt;
| illustratør = &lt;br /&gt;
| sider = 614&lt;br /&gt;
| isbn = 0-201-00022-9&lt;br /&gt;
| comcat = &lt;br /&gt;
| commons = &lt;br /&gt;
| verdensbiblioteket = &lt;br /&gt;
}}&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;Principles of Compiler Design&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039; (&amp;#039;&amp;#039;«prinsippene for kompilatorkonstruksjon»&amp;#039;&amp;#039;) er en [[engelsk]] [[sakprosa]]bok av [[informatiker]]ne [[Alfred Aho]] og [[Jeffrey Ullman]]. [[Bok]]en ble utgitt av det [[USA|amerikanske]] [[forlag]]et [[Addison-Wesley]] den 1. august 1977,&amp;lt;ref name=&amp;quot;Aho1977&amp;quot;/&amp;gt; og er en klassisk [[lærebok]] i konstruksjon av [[kompilator]]er og [[kommandotolk (programvare)|kommandotolk]]er for [[programmeringsspråk]].&amp;lt;ref name=&amp;quot;Aho1977&amp;quot;/&amp;gt; Den er inndelt i 15 kapitler og to appendikser. Den påvirket en hel generasjon av [[informatiker]]e og dens innhold er fortsatt aktuelt, 47 år etter utgivelsen. Boken inneholder hele [[pseudokode]]n for generering av en kompilator.&lt;br /&gt;
&lt;br /&gt;
Boken ble trykt ved [[Bell Laboratories]] i [[New Jersey]] ved å benytte [[troff]], et program for [[settemaskin|tekstformatering]] i [[operativsystemet]] [[UNIX versjon 6]]. På denne tiden var [[UNIX]] knapt nok tilgjengelig utenfor Bell Laboratories.&lt;br /&gt;
&lt;br /&gt;
Bokens fremside viser en [[ridder]] og en [[drage]] i kamp. Dragen er grønn og er merket med teksten «&amp;#039;&amp;#039;kompleksiteten ved kompilatorkonstruksjon»&amp;#039;&amp;#039; (&amp;#039;&amp;#039;Complexity of Compiler Construction&amp;#039;&amp;#039;), mens ridderens lanse bærer teksten [[LALR parsergenerator]]. I motivet på baksiden er dragen erstattet av [[vindmølle]]r, og ridderen er [[Don Quixote]].&amp;lt;ref name=&amp;quot;Aho1977&amp;quot;/&amp;gt; Den blir populært kalt «drageboka».&amp;lt;ref name=&amp;quot;Macz2002-219&amp;quot;/&amp;gt;&amp;lt;ref name=&amp;quot;Raymond1996-161&amp;quot;/&amp;gt; Den blir også kalt «den grønne drageboka» eller «den gamle drageboka»,&amp;lt;ref name=&amp;quot;Raymond1996-161&amp;quot;/&amp;gt; for å skille den fra sin etterfølger, &amp;#039;&amp;#039;[[Compilers: Principles, Techniques, and Tools]]&amp;#039;&amp;#039; («den røde drageboka» eller «den nye drageboka»),&amp;lt;ref name=&amp;quot;Raymond1996-161&amp;quot;/&amp;gt; som utkom 1. januar 1986.&amp;lt;ref name=&amp;quot;Aho1986&amp;quot;/&amp;gt; Tredje utgave utkom 10. september 2006;&amp;lt;ref name=&amp;quot;Aho2006&amp;quot;/&amp;gt; den var [[purpur]], og ble kalt «den purpurfargede drageboka».&amp;lt;ref&amp;gt;[https://rmathew.blogspot.no/2006/09/where-is-purple-dragon-book.html Where is The Purple Dragon Book?], rmathew.blogspot.no, rmathew, 6. september 2006&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Den 1. januar 1990 utga [[Allen Holub|Allen I. Holub]] boken &amp;#039;&amp;#039;[[Compiler Design in C]]&amp;#039;&amp;#039;.&amp;lt;ref name=&amp;quot;Holub1990&amp;quot;/&amp;gt; Den inneholder implementasjonen av «dragebokens» pseudokode i programmeringsspråket [[C (programmeringsspråk)|C]].&amp;lt;ref name=&amp;quot;Holub1990&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Innhold==&lt;br /&gt;
===Kapittel 1. Introduksjon til kompilatorer===&lt;br /&gt;
Kapittel 1, «introduksjon til kompilatorer» (&amp;#039;&amp;#039;Introduction to Compilers&amp;#039;&amp;#039;), er en generell innføring i kompilatorer.&amp;lt;ref name=&amp;quot;Aho1977_1-25&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Kapittelet drøfter kompilatorer og oversettere,&amp;lt;ref name=&amp;quot;Aho1977_1-3&amp;quot; /&amp;gt; og årsaken til at vi trenger oversettere.&amp;lt;ref name=&amp;quot;Aho1977_3-5&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Deretter gjennomgås strukturen til en kompilator.&amp;lt;ref name=&amp;quot;Aho1977_5-10&amp;quot; /&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Kapittelet fortsetter med å drøfte leksikalsk analyse,&amp;lt;ref name=&amp;quot;Aho1977_10-12&amp;quot; /&amp;gt; syntaktisk analyse&amp;lt;ref name=&amp;quot;Aho1977_12-13&amp;quot; /&amp;gt; og mellomkodegenerering.&amp;lt;ref name=&amp;quot;Aho1977_13-17&amp;quot; /&amp;gt; Deretter følger en kort gjennomgang av optimaliserende kompilatorer,&amp;lt;ref name=&amp;quot;Aho1977_17-19&amp;quot; /&amp;gt; før kapittelet går over til å behandle kodegenerering.&amp;lt;ref name=&amp;quot;Aho1977_19-20&amp;quot; /&amp;gt; Kapittelet fortsetter med å behandle [[bokføring (programmering)|bokføring]],&amp;lt;ref name=&amp;quot;Aho1977_20&amp;quot; /&amp;gt; feilhåndtering&amp;lt;ref name=&amp;quot;Aho1977_21&amp;quot; /&amp;gt; og verktøy for å lage kompilatorer.&amp;lt;ref name=&amp;quot;Aho1977_21-23&amp;quot; /&amp;gt; Til slutt forklares det hvordan man kommer i gang med et kompilatorprosjekt.&amp;lt;ref name=&amp;quot;Aho1977_23-25&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Kapittel 2. Programmeringsspråk===&lt;br /&gt;
Kapittel 2, «Programmeringsspråk» (&amp;#039;&amp;#039;Programming Languages&amp;#039;&amp;#039;), omhandler [[programmeringsspråk]].&amp;lt;ref name=&amp;quot;Aho1977_26-72&amp;quot; /&amp;gt; Kapittelet begynner med å drøfte [[høynivåspråk]],&amp;lt;ref name=&amp;quot;Aho1977_26-28&amp;quot; /&amp;gt; og fortsetter med definisjoner av programmeringsspråk.&amp;lt;ref name=&amp;quot;Aho1977_28-32&amp;quot; /&amp;gt; Deretter behandles den leksikalske og syntaktiske struktur til et programmeringsspråk,&amp;lt;ref name=&amp;quot;Aho1977_32-34&amp;quot; /&amp;gt; [[dataelement]]er,&amp;lt;ref name=&amp;quot;Aho1977_34-38&amp;quot; /&amp;gt; [[datastruktur]]er,&amp;lt;ref name=&amp;quot;Aho1977_38-45&amp;quot; /&amp;gt; [[operator]]er,&amp;lt;ref name=&amp;quot;Aho1977_45-49&amp;quot; /&amp;gt; [[Tildeling (informatikk)|tildelinger]],&amp;lt;ref name=&amp;quot;Aho1977_50-54&amp;quot; /&amp;gt; programvareenheter&amp;lt;ref name=&amp;quot;Aho1977_55-57&amp;quot; /&amp;gt; datamiljøer&amp;lt;ref name=&amp;quot;Aho1977_57-59&amp;quot; /&amp;gt; og [[parameter (informatikk)|parameteroverføringer]].&amp;lt;ref name=&amp;quot;Aho1977_59-63&amp;quot; /&amp;gt; Til slutt behandles lagringshåndtering.&amp;lt;ref name=&amp;quot;Aho1977_63-72&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Kapittel 3. Endelige tilstandsmaskiner og leksikalsk analyse===&lt;br /&gt;
Kapittel 3, «Endelige tilstandsmaskiner og leksikalsk analyse» (&amp;#039;&amp;#039;Finite Automata and Lexical Analysis&amp;#039;&amp;#039;), omhandler [[leksikalsk analyse]] av et programmeringsspråk.&amp;lt;ref name=&amp;quot;Aho1977_73-124&amp;quot; /&amp;gt; Kapittelet innleder med å drøfte rollen til den leksikalske analysator innenfor kompilatoren.&amp;lt;ref name=&amp;quot;Aho1977_74-76&amp;quot; /&amp;gt; Deretter følger en enkel tilnærmelse for konstruksjon av leksikalske analysatorer,&amp;lt;ref name=&amp;quot;Aho1977_76-82&amp;quot; /&amp;gt; etterfulgt av beskrivelse av [[Regulært uttrykk|regulære uttrykk]].&amp;lt;ref name=&amp;quot;Aho1977_82-88&amp;quot; /&amp;gt; Kapittelet fortsetter med beskrivelsen av en Finite Automata eller en [[endelig tilstandsmaskin]],&amp;lt;ref name=&amp;quot;Aho1977_88-94&amp;quot; /&amp;gt; og beskriver deretter hvordan regulære uttrykk kan omdannes til en endelig tilstandsmaskin.&amp;lt;ref name=&amp;quot;Aho1977_95-99&amp;quot; /&amp;gt; Deretter beskrives det hvordan man minimaliserer antall tilstander i en [[deterministisk endelig tilstandsmaskin]] (DFA), som er konstruert ut fra en [[ikke-deterministisk endelig tilstandsmaskin]] (NFA).&amp;lt;ref name=&amp;quot;Aho1977_99-103&amp;quot; /&amp;gt; Kapittelet fortsetter med å drøfte et språk for spesifikasjon av leksikalske analysatorer,&amp;lt;ref name=&amp;quot;Aho1977_103-109&amp;quot; /&amp;gt; og forklarer implementasjonen av leksikalske analysatorer.&amp;lt;ref name=&amp;quot;Aho1977_109-118&amp;quot; /&amp;gt; Deretter forklares det hvordan en scannergenerator kan fungere som det som metaforisk kalles en «sveitsisk lommekniv» (&amp;#039;&amp;#039;Swiss Army Knife&amp;#039;&amp;#039;).&amp;lt;ref name=&amp;quot;Aho1977_118-124&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Kapittel 4. Den syntaktiske spesifikasjon av programmeringsspråk===&lt;br /&gt;
Kapittel 4, «den syntaktiske spesifikasjon av programmeringsspråk» (&amp;#039;&amp;#039;The Syntactic Specification of Programming Languages&amp;#039;&amp;#039;), behandler måter å spesifisere [[Syntaks (programmering)|syntaksen]] i et programmeringsspråk.&amp;lt;ref name=&amp;quot;Aho1977_125-144&amp;quot; /&amp;gt; Kapittelet behandler [[kontekstfri grammatikk]]&amp;lt;ref name=&amp;quot;Aho1977_126-136&amp;quot; /&amp;gt;, derivasjoner og parsertrær&amp;lt;ref name=&amp;quot;Aho1977_129-136&amp;quot; /&amp;gt; og til slutt kapabilitetene til kontekstfri grammatikk.&amp;lt;ref name=&amp;quot;Aho1977_136-144&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Kapittel 5. Grunnleggende parsingteknikker===&lt;br /&gt;
Kapittel 5, «grunnleggende parsingteknikker» (&amp;#039;&amp;#039;Basic Parsing Techniques&amp;#039;&amp;#039;), beskriver ulike former for [[parser|parsing]].&amp;lt;ref name=&amp;quot;Aho1977_145-196&amp;quot; /&amp;gt; Kapittelet innledes med å drøfte parsere generelt.&amp;lt;ref name=&amp;quot;Aho1977_145-150&amp;quot; /&amp;gt; Deretter omtales [[skift-reduser-parser]]e,&amp;lt;ref name=&amp;quot;Aho1977_150-158&amp;quot; /&amp;gt; [[operator-presedens-parser]]e,&amp;lt;ref name=&amp;quot;Aho1977_158-174&amp;quot; /&amp;gt; [[ovenfra-ned-parser]]e,&amp;lt;ref name=&amp;quot;Aho1977_174-184&amp;quot; /&amp;gt; og til slutt [[prediktiv parser|prediktive parsere]].&amp;lt;ref name=&amp;quot;Aho1977_184-196&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Kapittel 6. Automatisk konstruksjon av effektive parsere===&lt;br /&gt;
Kapittel 6, «automatisk konstruksjon av effektive parsere» (&amp;#039;&amp;#039;Automatic Construction of Efficient Parsers&amp;#039;&amp;#039;), dreier seg blant annet om [[parsergenerator]]er.&amp;lt;ref name=&amp;quot;Aho1977_198-245&amp;quot; /&amp;gt; Kapittelet begynner med å beskrive [[LR-parser]]e&amp;lt;ref name=&amp;quot;Aho1977_198-204&amp;quot; /&amp;gt; og den kanoniske samling av LR(0)-elementer.&amp;lt;ref name=&amp;quot;Aho1977_204-211&amp;quot; /&amp;gt; Deretter fortsetter det med å beskrive konstruksjon av [[Simpel LR-parser|SLR-parsingtabeller]],&amp;lt;ref name=&amp;quot;Aho1977_211-214&amp;quot; /&amp;gt; konstruksjon av [[kanonisk LR-parser|kanonisk LR-parsertabeller]]&amp;lt;ref name=&amp;quot;Aho1977_214-219&amp;quot; /&amp;gt; og konstruksjon av [[LALR-parser|LALR-parsertabeller]].&amp;lt;ref name=&amp;quot;Aho1977_219-224&amp;quot; /&amp;gt; Deretter behandles bruken av tvetydig grammatikk&amp;lt;ref name=&amp;quot;Aho1977_225-229&amp;quot; /&amp;gt; og en automatisk parsergenerator, i dette tilfellet [[Yacc]].&amp;lt;ref name=&amp;quot;Aho1977_229-233&amp;quot; /&amp;gt; Til slutt behandles implementasjon av LR-parsingtabeller&amp;lt;ref name=&amp;quot;Aho1977_233-236&amp;quot; /&amp;gt; og konstruksjon av et LALR elementsett.&amp;lt;ref name=&amp;quot;Aho1977_236-245&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Kapittel 7. Syntaksrettet oversettelse===&lt;br /&gt;
Kapittel 7, «syntaksrettet oversettelse» (&amp;#039;&amp;#039;Syntax-Directed Translation&amp;#039;&amp;#039;), dreier seg om [[syntaksrettet oversettelse]].&amp;lt;ref name=&amp;quot;Aho1977_245-295&amp;quot; /&amp;gt; Kapittelet drøfter ulike former for spørsmål ved [[kodegenerering (kompilatorer)|mellomkodegenerering]] relatert til semantiske aksjoner og oversettelser av parsertreet,&amp;lt;ref name=&amp;quot;Aho1977_245-249&amp;quot; /&amp;gt; Deretter behandles forskjellige implementasjoner av syntaksrettede oversettelser,&amp;lt;ref name=&amp;quot;Aho1977_249-254&amp;quot; /&amp;gt;, etterfulgt av en drøfting av [[mellomliggende representasjon]],&amp;lt;ref name=&amp;quot;Aho1977_254&amp;quot; /&amp;gt; [[omvendt polsk notasjon]],&amp;lt;ref name=&amp;quot;Aho1977_254-258&amp;quot; /&amp;gt; parsertrær og syntakstrær,&amp;lt;ref name=&amp;quot;Aho1977_258-259&amp;quot; /&amp;gt; [[tre-adresse-kode]]r, [[nibble]]r (4 biter) og [[tupel|tupler]],&amp;lt;ref name=&amp;quot;Aho1977_259-265&amp;quot; /&amp;gt; oversettelser av tildelingstrær,&amp;lt;ref name=&amp;quot;Aho1977_265-270&amp;quot; /&amp;gt; [[boolsk uttrykk|boolske uttrykk]],&amp;lt;ref name=&amp;quot;Aho1977_270-281&amp;quot; /&amp;gt; setninger som stanser flytkontrollen&amp;lt;ref name=&amp;quot;Aho1977_281-286&amp;quot; /&amp;gt; oversettelse av omvendte polske notasjoner&amp;lt;ref name=&amp;quot;Aho1977_286-290&amp;quot; /&amp;gt; og oversettelse med en ovenfra-ned parser.&amp;lt;ref name=&amp;quot;Aho1977_290-295&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Kapittel 8. Mer om oversettelse===&lt;br /&gt;
Kapittel 8, «mer om oversettelse» (&amp;#039;&amp;#039;More About Translation&amp;#039;&amp;#039;), fortsetter drøftelsen av oversettelser.&amp;lt;ref name=&amp;quot;Aho1977_296-317&amp;quot; /&amp;gt; Kapitlet begynner med å gjennomgå tabellreferanser i aritmetiske uttrykk,&amp;lt;ref name=&amp;quot;Aho1977_296-302&amp;quot; /&amp;gt; og fortsetter med å behandle prosedyrekall,&amp;lt;ref name=&amp;quot;Aho1977_303-306&amp;quot;/&amp;gt; deklarasjoner,&amp;lt;ref name=&amp;quot;Aho1977_307-308&amp;quot;/&amp;gt; [[switch-setning|&amp;#039;&amp;#039;case&amp;#039;&amp;#039;-setninger]]&amp;lt;ref name=&amp;quot;Aho1977_308-311&amp;quot;/&amp;gt; og [[Record|&amp;#039;&amp;#039;record&amp;#039;&amp;#039;-datastrukturer]].&amp;lt;ref name=&amp;quot;Aho1977_312-316&amp;quot;/&amp;gt; Avslutningsvis omtales datastrukturene i [[PL/I]]-lignende programmeringsspråk.&amp;lt;ref name=&amp;quot;Aho1977_317-327&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Kapittel 9. Symboltabeller===&lt;br /&gt;
Kapittel 9, «symboltabeller» (&amp;#039;&amp;#039;Symbol Tables&amp;#039;&amp;#039;), behandler [[symboltabell]]er.&amp;lt;ref name=&amp;quot;Aho1977_328-350&amp;quot;/&amp;gt; Kapitlet begynner med å drøfte innholdet i en symboltabell,&amp;lt;ref name=&amp;quot;Aho1977_328-335&amp;quot;/&amp;gt; og drøfter deretter datastrukturer for symboltabeller,&amp;lt;ref name=&amp;quot;Aho1977_336-340&amp;quot;/&amp;gt; før det til slutt drøfter informasjonens gyldighetsområder.&amp;lt;ref name=&amp;quot;Aho1977_341-350&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Kapittel 10. Administrasjon av lagringsmedia under kjøring===&lt;br /&gt;
Kapittel 10, «administrasjon av lagringsmedia under kjøring» (&amp;#039;&amp;#039;Run-time Storage Administration&amp;#039;&amp;#039;), omhandler behandling av lagringsmedia.&amp;lt;ref name=&amp;quot;Aho1977_351-377&amp;quot;/&amp;gt; Først beskrives en implementasjon av en enkel [[Stakk (datastruktur)|stakkallokering]].&amp;lt;ref name=&amp;quot;Aho1977_351-355&amp;quot;/&amp;gt; Deretter beskrives en implementasjon av blokkstrukturerte programmeringsspråk.&amp;lt;ref name=&amp;quot;Aho1977_356-363&amp;quot;/&amp;gt; Deretter beskrives lagringsallokering i [[Fortran]],&amp;lt;ref name=&amp;quot;Aho1977_364-376&amp;quot;/&amp;gt; og til slutt lagringsallokering i blokkstrukturerte språk.&amp;lt;ref name=&amp;quot;Aho1977_377-381&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Kapittel 11. Deteksjon og retting av feil===&lt;br /&gt;
Kapittel 11, «deteksjon og retting av feil» (&amp;#039;&amp;#039;Error Dedection and Recovery&amp;#039;&amp;#039;), omhandler feilbehandling. Kapittelet innledes med å beskrive feilrapportering og ulike typer feil, leksikalske, syntaktiske og semantiske.&amp;lt;ref name=&amp;quot;Aho1977_382-388&amp;quot;/&amp;gt; Deretter behandles feil som kan oppdages under den leksikalske analysen og den syntaktiske analysen,&amp;lt;ref name=&amp;quot;Aho1977_388-402&amp;quot;/&amp;gt; og til slutt behandles semantiske feil.&amp;lt;ref name=&amp;quot;Aho1977_402-405&amp;quot;/&amp;gt; &lt;br /&gt;
&lt;br /&gt;
===Kapittel 12. Introduksjon til kodeoptimalisering===&lt;br /&gt;
Kapittel 12, «introduksjon til kodeoptimalisering» (&amp;#039;&amp;#039;Introduction to Code Optimization&amp;#039;&amp;#039;), innleder drøftingen av [[programvareoptimalisering]]. Innledningsvis gis en oppsummering av ulike former for optimalisering.&amp;lt;ref name=&amp;quot;Aho1977_406-410&amp;quot;/&amp;gt; Deretter behandles [[løkkeoptimalisering]].&amp;lt;ref name=&amp;quot;Aho1977_410-418&amp;quot;/&amp;gt; I neste omgang beskrives [[Rettet asyklisk graf|rettede asykliske grafer]] som en presentasjon av grunnleggende blokker.&amp;lt;ref name=&amp;quot;Aho1977_418-427&amp;quot;/&amp;gt; Kapittelet beskriver verditall og algebraiske lover,&amp;lt;ref name=&amp;quot;Aho1977_427-429&amp;quot;/&amp;gt; før det avsluttes med en global dataflytanalyse.&amp;lt;ref name=&amp;quot;Aho1977_429-440&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Kapittel 13. Mer om løkkeoptimalisering===&lt;br /&gt;
Kapittel 13, «mer om løkkeoptimalisering» (&amp;#039;&amp;#039;More About Loop Optimization&amp;#039;&amp;#039;), utdyper drøftelsen av løkkeoptimalisering. Kapittelet starter med å behandle [[dominator (grafteori)|dominatorer]], en [[kontrollflytgraf]] hvor node &amp;#039;&amp;#039;d&amp;#039;&amp;#039; dominerer en node &amp;#039;&amp;#039;n&amp;#039;&amp;#039;.&amp;lt;ref name=&amp;quot;Aho1977_441-447&amp;quot;/&amp;gt; Deretter fortsetter det med å behandle [[intervall (grafteori)|reduserbare flytgrafer]]&amp;lt;ref name=&amp;quot;Aho1977_447-454&amp;quot;/&amp;gt; og beregninger av [[løkkeinvariant]]er.&amp;lt;ref name=&amp;quot;Aho1977_454-466&amp;quot;/&amp;gt; Deretter behandles eliminasjon av [[Matematisk induksjon|induksjonsvariabler]].&amp;lt;ref name=&amp;quot;Aho1977_466-471&amp;quot;/&amp;gt; Avslutningsvis behandles en del andre løkkeoptimaliseringer.&amp;lt;ref name=&amp;quot;Aho1977_471-478&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Kapittel 14. Mer om dataflytanalyse===&lt;br /&gt;
Kapittel 14, «mer om dataflytanalyse» (&amp;#039;&amp;#039;More About Data-Flow Analysis&amp;#039;&amp;#039;), fortsetter drøftelsen av [[dataflytanalyse]]r. Etter å ha gjort en del grunnleggende definisjoner,&amp;lt;ref name=&amp;quot;Aho1977_478-479&amp;quot;/&amp;gt; beskrives &amp;#039;&amp;#039;constant folding&amp;#039;&amp;#039; som en måte å gjenkjenne og evaluere konstanter i uttrykk under kompilering i stedet for at de beregnes under kjøring.&amp;lt;ref name=&amp;quot;Aho1977_479-481&amp;quot;/&amp;gt; Deretter beskrives [[tilgjengelige uttrykk]], som er en analysealgoritme for å bestemme mengden med uttrykk som ikke behøves å beregnes på nytt.&amp;lt;ref name=&amp;quot;Aho1977_482-487&amp;quot;/&amp;gt; Videre beskrives behandlingen av [[copy propagation]].&amp;lt;ref name=&amp;quot;Aho1977_487-489&amp;quot;/&amp;gt; Etter å ha behandlet en [[dataflytanalyse|baklengs analyse]] av dataflyten,&amp;lt;ref name=&amp;quot;Aho1977_489-491&amp;quot;/&amp;gt; kommer boken inn på &amp;#039;&amp;#039;«svært opptatte uttrykk»&amp;#039;&amp;#039; og &amp;#039;&amp;#039;kodeheising&amp;#039;&amp;#039;.&amp;lt;ref name=&amp;quot;Aho1977_491-497&amp;quot;/&amp;gt; Deretter beskrives fire former for dataflytanalyser: To som følger dataflyten fremover, og to som følger dataflyten bakover.&amp;lt;ref name=&amp;quot;Aho1977_497-504&amp;quot;/&amp;gt; Avslutningsvis beskrives dataflytanalyser mellom prosedyrer.&amp;lt;ref name=&amp;quot;Aho1977_504-517&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Kapittel 15. Kodegenerering===&lt;br /&gt;
Kapittel 15, «kodegenerering» (&amp;#039;&amp;#039;Code Generation&amp;#039;&amp;#039;), diskuterer [[Kodegenerering (kompilatorer)|generering av kode]].&amp;lt;ref name=&amp;quot;Aho1977_518&amp;quot;/&amp;gt; Det drøftes ulike alternativer, som generering av absolutt [[maskinkode]], relokaliserbar maskinkode ([[objektfil]]er), [[assembler]]kode eller et annet programmeringsspråk.&amp;lt;ref name=&amp;quot;Aho1977_518-519&amp;quot;/&amp;gt; [[ALTRAN]] og [[Ratfor]] brukes som eksempler på det siste, i forbindelse med Fortran.&amp;lt;ref name=&amp;quot;Aho1977_519&amp;quot;/&amp;gt; Deretter drøftes kodegeneratorens miljø,&amp;lt;ref name=&amp;quot;Aho1977_519&amp;quot;/&amp;gt; [[adresseområde]]ne til navn under [[utførelse (informatikk)|utførelse]],&amp;lt;ref name=&amp;quot;Aho1977_520&amp;quot;/&amp;gt; problemer forbundet med kodegenerering,&amp;lt;ref name=&amp;quot;Aho1977_521&amp;quot;/&amp;gt; valg av [[Instruksjon (datamaskin)|instruksjoner]] som skal genereres,&amp;lt;ref name=&amp;quot;Aho1977_520&amp;quot;/&amp;gt; i hvilken rekkefølge beregninger skal utføres,&amp;lt;ref name=&amp;quot;Aho1977_522&amp;quot;/&amp;gt; og hvilke [[prosessorregister]]e som skal brukes.&amp;lt;ref name=&amp;quot;Aho1977_522&amp;quot;/&amp;gt; Deretter beskrives en abstrakt modell for en datamaskin,&amp;lt;ref name=&amp;quot;Aho1977_523-525&amp;quot;/&amp;gt; og pseudokoden for en kodegenerator.&amp;lt;ref name=&amp;quot;Aho1977_525-552&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Appendiks A. En kikk på enkelte kompilatorer===&lt;br /&gt;
Appendiks A, «en kikk på enkelte kompilatorer» (&amp;#039;&amp;#039;A Look at Some Compilers&amp;#039;&amp;#039;), diskuterer strukturen til kompilatorer for [[C (programmeringsspråk)|C]], Fortran og [[BLISS]].&amp;lt;ref name=&amp;quot;Aho1977_557&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tre ulike C-kompilatorer diskuteres: [[Dennis Ritchie]]&amp;#039;s (1941&amp;amp;ndash;2011) kompilator for [[minidatamaskin]]en [[PDP-11]] og [[Stephen Curtis Johnson]]&amp;#039;s [[Portable C Compiler]] for [[stormaskin]]ene [[Honeywell 6000-serien|Honeywell 6070]] og [[IBM System/370]].&amp;lt;ref name=&amp;quot;Aho1977_557&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Den førstnevnte benyttet en rekursiv descendant parser, mens de to sistnevnte var implementert ved hjelp av en [[LALR-parser]].&amp;lt;ref name=&amp;quot;Aho1977_557&amp;quot;/&amp;gt; Alle disse kompilatorene hadde to pass, og PDP-11 kompilatoren manglet et tredje pass for kodeoptimaliseringer.&amp;lt;ref name=&amp;quot;Aho1977_557&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Deretter følger en kort gjennomgang av kompilatoren FORTRAN-H for IBM System/370, og fire av dens 25 faser av kompilering.&amp;lt;ref name=&amp;quot;Aho1977_558-560&amp;quot;/&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Til slutt gjennomgås BLISS-kompilatoren for PDP-11, og dens fem faser av kompilering.&amp;lt;ref name=&amp;quot;Aho1977_560-562&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Appendiks B. Et programmeringsprosjekt===&lt;br /&gt;
Appendiks B, «et programmeringsprosjekt» (&amp;#039;&amp;#039;A Programming Project&amp;#039;&amp;#039;), presenterer en samling anbefalte øvelser for kompilatorkonstruksjon.&amp;lt;ref name=&amp;quot;Aho1977_563&amp;quot;/&amp;gt; Forfatterne presenterer en delmengde av grammatikken til [[Pascal (programmeringsspråk)|Pascal]],&amp;lt;ref name=&amp;quot;Aho1977_563-565&amp;quot;/&amp;gt; og forklarer dette språkets programstruktur&amp;lt;ref name=&amp;quot;Aho1977_566&amp;quot;/&amp;gt; og leksikalske konvensjoner.&amp;lt;ref name=&amp;quot;Aho1977_566-567&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Deretter foreslås det, som øvelser, å lage en symboltabell, en kommandotolk for kvadrupler (nibler), en leksikalsk analysator, rutiner for semantikk for å generere kvadrupler, en parser, rutiner for feilhåndtering og evaluering av kompilatoren ved hjelp av en &amp;#039;&amp;#039;profiler&amp;#039;&amp;#039;.&amp;lt;ref name=&amp;quot;Aho1977_567-568&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Til slutt foreslås det enkelte utvidelser av språket.&amp;lt;ref name=&amp;quot;Aho1977_569&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Referanser==&lt;br /&gt;
&amp;lt;references&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]]&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_1-25&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 1-25&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_1-3&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 1-3&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_3-5&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 3-5&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_5-10&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 5-10&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_10-12&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 10-12&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_12-13&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 12-13&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_13-17&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 13-17&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_17-19&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 17-19&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_19-20&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 19-20&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_20&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 20&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_21&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 21&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_21-23&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 21-23&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_23-25&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 23-25&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_26-72&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 26-72&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_26-28&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 26-28&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_28-32&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 28-32&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_32-34&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 32-34&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_34-38&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 34-38&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_38-45&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 38-45&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_45-49&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 45-49&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_50-54&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 50-54&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_55-57&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 55-57&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_57-59&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 57-59&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_59-63&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 59-63&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_63-72&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 63-72&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_73-124&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 73-124&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_74-76&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 74-76&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_76-82&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 76-82&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_82-88&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 82-88&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_88-94&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 88-94&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_95-99&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 95-99&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_99-103&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 99-103&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_103-109&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 103-109&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_109-118&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 109-118&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_118-124&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 118-124&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_125-144&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 125-144&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_126-136&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 126-136&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_129-136&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 129-136&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_136-144&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 136-144&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_145-196&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 145-196&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_145-150&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 145-150&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_150-158&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 150-158&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_158-174&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 158-174&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_174-184&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 174-184&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_184-196&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 184-196&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_198-245&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 198-245&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_198-204&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 198-204&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_204-211&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 204-211&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_211-214&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 211-214&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_214-219&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 214-219&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_219-224&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 219-224&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_225-229&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 225-229&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_229-233&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 229-233&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_233-236&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 233-236&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_236-245&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 236-245&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_245-295&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 245-295&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_245-249&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 245-249&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_249-254&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 249-254&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_254&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 254&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_254-258&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 254-258&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_258-259&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 258-259&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_259-265&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 259-265&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_265-270&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 265-270&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_270-281&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 270-281&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_281-286&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 281-286&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_286-290&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 286-290&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_290-295&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 290-295&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_296-317&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 296-317&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_296-302&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 296-302&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_303-306&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 303-306&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_307-308&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 307-308&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_308-311&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 308-311&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_312-316&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 312-316&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_317-327&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 317-327&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_328-350&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 328-350&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_328-335&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 328-335&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_336-340&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 336-340&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_341-350&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 340-350&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_351-355&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 351-355&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_356-363&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 356-363&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_364-376&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 364-376&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_377-381&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 377-381&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_351-377&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 351-377&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_382-388&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 382-388&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_388-402&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 388-402&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_402-405&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 402-405&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_406-410&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 406-410&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_410-418&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 410-418&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_418-427&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 418-427&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_427-429&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 427-429&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_429-440&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 429-440&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_441-447&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 441-447&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_447-454&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 447-454&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_454-466&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 454-466&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_466-471&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 466-471&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_471-478&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 471-478&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_478-479&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 478-479&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_479-481&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 479-481&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_482-487&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 482-487&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_487-489&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 487-489&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_489-491&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 489-491&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_491-497&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 491-497&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_497-504&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 497-504&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_504-517&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 504-517&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_518&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 518&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_518-519&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 518-519&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_519&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 519&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_520&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 520&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_521&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 521&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_522&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 522&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_523-525&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 523-525&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_525-552&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 525-552&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_557&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 557&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_563&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 563&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_563-565&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 563-565&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_566&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 566&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_566-567&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 566-567&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_567-568&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 567-568&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_569&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 569&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_558-560&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 558-560&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1977_560-562&amp;quot;&amp;gt;[[#Aho1977|Aho 1977]], side 560-562&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho1986&amp;quot;&amp;gt;[[#Aho1986|Aho 1986]]&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Aho2006&amp;quot;&amp;gt;[[#Aho2006|Aho 2006]]&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Holub1990&amp;quot;&amp;gt;[[#Holub1990|Holub 1990]]&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Macz2002-219&amp;quot;&amp;gt;[[#Macz2002|Macz 2002]], side 219&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Raymond1996-161&amp;quot;&amp;gt;[[#Raymond1996|Raymond 1996]], side 161&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;/references&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Litteratur ==&lt;br /&gt;
*{{Kilde bok&lt;br /&gt;
  | ref=Aho1977 &lt;br /&gt;
  | forfatter=[[Alfred Aho|Aho, Alfred Vaino]]; [[Jeffrey Ullman|Ullman, Jeffrey David]]&lt;br /&gt;
  | utgivelsesår=1977&lt;br /&gt;
  | tittel=Principles of Compiler Design&lt;br /&gt;
  | forlag=[[Addison-Wesley]], 1. august 1977&lt;br /&gt;
  | isbn=0-201-00022-9&lt;br /&gt;
}}&lt;br /&gt;
*{{Kilde bok&lt;br /&gt;
  | ref=Aho1986&lt;br /&gt;
  | forfatter=Aho, Alfred Vaino; Ullman, Jeffrey David; [[Ravi Sethi|Sethi Ravi]]&lt;br /&gt;
  | utgivelsesår=1986&lt;br /&gt;
  | tittel=[[Compilers: Principles, Techniques, and Tools]]&lt;br /&gt;
  | forlag=Addison-Wesley, 1. januar 1986&lt;br /&gt;
  | isbn=0-201-10088-6&lt;br /&gt;
  | id=ISBN 978-0-201-10088-4&lt;br /&gt;
}}&lt;br /&gt;
*{{Kilde bok&lt;br /&gt;
  | ref=Aho2006&lt;br /&gt;
  | forfatter=Aho, Alfred Vaino; Ullman, Jeffrey David; Sethi Ravi; [[Monica Sin-Ling Lam|Lam, Monica Sing-Ling]]&lt;br /&gt;
  | utgivelsesår=2006&lt;br /&gt;
  | tittel=Compilers: Principles, Techniques, and Tools&lt;br /&gt;
  | forlag=Addison-Wesley, 2. utgave, 10. september 2006&lt;br /&gt;
  | isbn=0-321-48681-1&lt;br /&gt;
  | id=ISBN 978-0-321-48681-3&lt;br /&gt;
}}&lt;br /&gt;
*{{Kilde bok&lt;br /&gt;
  | ref=Holub1990&lt;br /&gt;
  | forfatter=[[Allen Holub|Holub, Allen I.]]&lt;br /&gt;
  | utgivelsesår=1990&lt;br /&gt;
  | tittel=Compiler Design in C&lt;br /&gt;
  | forlag=[[Prentice Hall]], 1. januar 1990&lt;br /&gt;
  | url=http://holub.com/goodies/compiler/compilerDesignInC.pdf&lt;br /&gt;
  | isbn=0-131-55045-4&lt;br /&gt;
  | id=ISBN 978-0-131-55045-2&lt;br /&gt;
}}&lt;br /&gt;
* {{Kilde bok&lt;br /&gt;
  | ref=Macz2002&lt;br /&gt;
  | forfatter=Macz, Mad &lt;br /&gt;
  | utgivelsesår=2002&lt;br /&gt;
  | tittel=Internet Underground: The Way of the Hacker&lt;br /&gt;
  | forlag=PageFree Publishing, Incorporated; 1. januar 2002&lt;br /&gt;
  | isbn=978-1-93025-253-0&lt;br /&gt;
  | id=ISBN 19-302525-3-6&lt;br /&gt;
}}&lt;br /&gt;
* {{Kilde bok&lt;br /&gt;
  | ref=Raymond1996&lt;br /&gt;
  | forfatter=[[Eric Steven Raymond|Raymond, Eric Steven]]&lt;br /&gt;
  | utgivelsesår=1996&lt;br /&gt;
  | tittel=The New Hacker&amp;#039;s Dictionary&lt;br /&gt;
  | forlag=[[MIT Press]], [[Massachusetts]]; 3. reviderte utgave, 11 oktober 1996&lt;br /&gt;
  | isbn=978-0-26268-092-9&lt;br /&gt;
  | id=ISBN 02-626809-2-0&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Eksterne lenker==&lt;br /&gt;
* [https://www.amazon.com/Principles-Compiler-Addison-Wesley-information-processing/dp/0201000229/ref=sr_1_1?qid=1579336891&amp;amp;refinements=p_66%3A0201000229&amp;amp;s=books&amp;amp;sr=1-1 Boken] hos [[Amazon.com]]&lt;br /&gt;
&lt;br /&gt;
{{kursiv tittel}}&lt;br /&gt;
{{Autoritetsdata}}&lt;br /&gt;
&lt;br /&gt;
[[Kategori:Informatikkens historie]]&lt;br /&gt;
[[Kategori:Bell Laboratories]]&lt;br /&gt;
[[Kategori:Addison-Wesley]]&lt;br /&gt;
[[Kategori:Bøker om kompilatorer]]&lt;br /&gt;
[[Kategori:Lærebøker]]&lt;br /&gt;
[[Kategori:Bøker fra USA]]&lt;br /&gt;
[[Kategori:Bøker fra 1977]]&lt;br /&gt;
[[Kategori:1977 i USA]]&lt;/div&gt;</summary>
		<author><name>nb&gt;Ranværing</name></author>
	</entry>
</feed>