CINXE.COM

Compiler - Wikipedia

<!DOCTYPE html> <html class="client-nojs vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-sticky-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-feature-night-mode-enabled skin-theme-clientpref-day vector-toc-available" lang="nl" dir="ltr"> <head> <meta charset="UTF-8"> <title>Compiler - Wikipedia</title> <script>(function(){var className="client-js vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-sticky-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-feature-night-mode-enabled skin-theme-clientpref-day vector-toc-available";var cookie=document.cookie.match(/(?:^|; )nlwikimwclientpreferences=([^;]+)/);if(cookie){cookie[1].split('%2C').forEach(function(pref){className=className.replace(new RegExp('(^| )'+pref.replace(/-clientpref-\w+$|[^\w-]+/g,'')+'-clientpref-\\w+( |$)'),'$1'+pref+'$2');});}document.documentElement.className=className;}());RLCONF={"wgBreakFrames":false,"wgSeparatorTransformTable":[",\t.",".\t,"],"wgDigitTransformTable":["",""], "wgDefaultDateFormat":"dmy","wgMonthNames":["","januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december"],"wgRequestId":"8d790f08-4820-4948-a82e-6ce09449a634","wgCanonicalNamespace":"","wgCanonicalSpecialPageName":false,"wgNamespaceNumber":0,"wgPageName":"Compiler","wgTitle":"Compiler","wgCurRevisionId":67606304,"wgRevisionId":67606304,"wgArticleId":260,"wgIsArticle":true,"wgIsRedirect":false,"wgAction":"view","wgUserName":null,"wgUserGroups":["*"],"wgCategories":["Compiler"],"wgPageViewLanguage":"nl","wgPageContentLanguage":"nl","wgPageContentModel":"wikitext","wgRelevantPageName":"Compiler","wgRelevantArticleId":260,"wgIsProbablyEditable":true,"wgRelevantPageIsProbablyEditable":true,"wgRestrictionEdit":[],"wgRestrictionMove":[],"wgNoticeProject":"wikipedia","wgCiteReferencePreviewsActive":true,"wgMediaViewerOnClick":true,"wgMediaViewerEnabledByDefault":true,"wgPopupsFlags":0,"wgVisualEditor":{"pageLanguageCode":"nl", "pageLanguageDir":"ltr","pageVariantFallbacks":"nl"},"wgMFDisplayWikibaseDescriptions":{"search":true,"watchlist":true,"tagline":true,"nearby":true},"wgWMESchemaEditAttemptStepOversample":false,"wgWMEPageLength":20000,"wgRelatedArticlesCompat":[],"wgCentralAuthMobileDomain":false,"wgEditSubmitButtonLabelPublish":true,"wgULSPosition":"interlanguage","wgULSisCompactLinksEnabled":false,"wgVector2022LanguageInHeader":true,"wgULSisLanguageSelectorEmpty":false,"wgWikibaseItemId":"Q47506","wgCheckUserClientHintsHeadersJsApi":["brands","architecture","bitness","fullVersionList","mobile","model","platform","platformVersion"],"GEHomepageSuggestedEditsEnableTopics":true,"wgGETopicsMatchModeEnabled":false,"wgGEStructuredTaskRejectionReasonTextInputEnabled":false,"wgGELevelingUpEnabledForUser":false};RLSTATE={"ext.globalCssJs.user.styles":"ready","site.styles":"ready","user.styles":"ready","ext.globalCssJs.user":"ready","user":"ready","user.options":"loading","ext.cite.styles":"ready", "skins.vector.search.codex.styles":"ready","skins.vector.styles":"ready","skins.vector.icons":"ready","ext.wikimediamessages.styles":"ready","ext.visualEditor.desktopArticleTarget.noscript":"ready","ext.uls.interlanguage":"ready","wikibase.client.init":"ready","ext.wikimediaBadges":"ready"};RLPAGEMODULES=["ext.cite.ux-enhancements","mediawiki.page.media","site","mediawiki.page.ready","mediawiki.toc","skins.vector.js","ext.centralNotice.geoIP","ext.centralNotice.startUp","ext.gadget.Direct-link-to-Commons","ext.gadget.ProtectionTemplates","ext.gadget.InterProjectLinks","ext.gadget.hoofdbetekenis-titelwijziging","ext.gadget.switcher","ext.gadget.OpenStreetMapFrame","ext.gadget.subpages","ext.urlShortener.toolbar","ext.centralauth.centralautologin","mmv.bootstrap","ext.popups","ext.visualEditor.desktopArticleTarget.init","ext.visualEditor.targetLoader","ext.echo.centralauth","ext.eventLogging","ext.wikimediaEvents","ext.navigationTiming","ext.uls.interface","ext.cx.eventlogging.campaigns" ,"ext.cx.uls.quick.actions","wikibase.client.vector-2022","ext.checkUser.clientHints","ext.growthExperiments.SuggestedEditSession","wikibase.sidebar.tracking"];</script> <script>(RLQ=window.RLQ||[]).push(function(){mw.loader.impl(function(){return["user.options@12s5i",function($,jQuery,require,module){mw.user.tokens.set({"patrolToken":"+\\","watchToken":"+\\","csrfToken":"+\\"}); }];});});</script> <link rel="stylesheet" href="/w/load.php?lang=nl&amp;modules=ext.cite.styles%7Cext.uls.interlanguage%7Cext.visualEditor.desktopArticleTarget.noscript%7Cext.wikimediaBadges%7Cext.wikimediamessages.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles%7Cwikibase.client.init&amp;only=styles&amp;skin=vector-2022"> <script async="" src="/w/load.php?lang=nl&amp;modules=startup&amp;only=scripts&amp;raw=1&amp;skin=vector-2022"></script> <meta name="ResourceLoaderDynamicStyles" content=""> <link rel="stylesheet" href="/w/load.php?lang=nl&amp;modules=site.styles&amp;only=styles&amp;skin=vector-2022"> <meta name="generator" content="MediaWiki 1.44.0-wmf.4"> <meta name="referrer" content="origin"> <meta name="referrer" content="origin-when-cross-origin"> <meta name="robots" content="max-image-preview:standard"> <meta name="format-detection" content="telephone=no"> <meta name="viewport" content="width=1120"> <meta property="og:title" content="Compiler - Wikipedia"> <meta property="og:type" content="website"> <link rel="preconnect" href="//upload.wikimedia.org"> <link rel="alternate" media="only screen and (max-width: 640px)" href="//nl.m.wikipedia.org/wiki/Compiler"> <link rel="alternate" type="application/x-wiki" title="Bewerken" href="/w/index.php?title=Compiler&amp;action=edit"> <link rel="apple-touch-icon" href="/static/apple-touch/wikipedia.png"> <link rel="icon" href="/static/favicon/wikipedia.ico"> <link rel="search" type="application/opensearchdescription+xml" href="/w/rest.php/v1/search" title="Wikipedia (nl)"> <link rel="EditURI" type="application/rsd+xml" href="//nl.wikipedia.org/w/api.php?action=rsd"> <link rel="canonical" href="https://nl.wikipedia.org/wiki/Compiler"> <link rel="license" href="https://creativecommons.org/licenses/by-sa/4.0/deed.nl"> <link rel="alternate" type="application/atom+xml" title="Wikipedia Atom-feed" href="/w/index.php?title=Speciaal:RecenteWijzigingen&amp;feed=atom"> <link rel="dns-prefetch" href="//meta.wikimedia.org" /> <link rel="dns-prefetch" href="//login.wikimedia.org"> </head> <body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject mw-editable page-Compiler rootpage-Compiler skin-vector-2022 action-view"><a class="mw-jump-link" href="#bodyContent">Naar inhoud springen</a> <div class="vector-header-container"> <header class="vector-header mw-header"> <div class="vector-header-start"> <nav class="vector-main-menu-landmark" aria-label="Site"> <div id="vector-main-menu-dropdown" class="vector-dropdown vector-main-menu-dropdown vector-button-flush-left vector-button-flush-right" > <input type="checkbox" id="vector-main-menu-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-main-menu-dropdown" class="vector-dropdown-checkbox " aria-label="Hoofdmenu" > <label id="vector-main-menu-dropdown-label" for="vector-main-menu-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-menu mw-ui-icon-wikimedia-menu"></span> <span class="vector-dropdown-label-text">Hoofdmenu</span> </label> <div class="vector-dropdown-content"> <div id="vector-main-menu-unpinned-container" class="vector-unpinned-container"> <div id="vector-main-menu" class="vector-main-menu vector-pinnable-element"> <div class="vector-pinnable-header vector-main-menu-pinnable-header vector-pinnable-header-unpinned" data-feature-name="main-menu-pinned" data-pinnable-element-id="vector-main-menu" data-pinned-container-id="vector-main-menu-pinned-container" data-unpinned-container-id="vector-main-menu-unpinned-container" > <div class="vector-pinnable-header-label">Hoofdmenu</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-main-menu.pin">naar zijbalk verplaatsen</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-main-menu.unpin">verbergen</button> </div> <div id="p-navigation" class="vector-menu mw-portlet mw-portlet-navigation" > <div class="vector-menu-heading"> Navigatie </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-mainpage" class="mw-list-item"><a href="/wiki/Hoofdpagina" title="Naar de hoofdpagina gaan [z]" accesskey="z"><span>Hoofdpagina</span></a></li><li id="n-zoekartikel" class="mw-list-item"><a href="/wiki/Portaal:Navigatie"><span>Vind een artikel</span></a></li><li id="n-today" class="mw-list-item"><a href="/wiki/28_november"><span>Vandaag</span></a></li><li id="n-Etalage" class="mw-list-item"><a href="/wiki/Wikipedia:Etalage"><span>Etalage</span></a></li><li id="n-categories" class="mw-list-item"><a href="/wiki/Categorie:Alles"><span>Categorieën</span></a></li><li id="n-recentchanges" class="mw-list-item"><a href="/wiki/Speciaal:RecenteWijzigingen" title="Een lijst met recente wijzigingen in deze wiki. [r]" accesskey="r"><span>Recente wijzigingen</span></a></li><li id="n-newpages" class="mw-list-item"><a href="/wiki/Speciaal:NieuwePaginas"><span>Nieuwe artikelen</span></a></li><li id="n-randompage" class="mw-list-item"><a href="/wiki/Speciaal:Willekeurig" title="Een willekeurige pagina bekijken [x]" accesskey="x"><span>Willekeurige pagina</span></a></li> </ul> </div> </div> <div id="p-navigation2" class="vector-menu mw-portlet mw-portlet-navigation2" > <div class="vector-menu-heading"> Informatie </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-portal" class="mw-list-item"><a href="/wiki/Portaal:Gebruikersportaal" title="Informatie over het project: wat u kunt doen, waar u dingen kunt vinden"><span>Gebruikersportaal</span></a></li><li id="n-Snelcursus" class="mw-list-item"><a href="/wiki/Wikipedia:Snelcursus"><span>Snelcursus</span></a></li><li id="n-help" class="mw-list-item"><a href="/wiki/Portaal:Hulp_en_beheer" title="Hulpinformatie over deze wiki"><span>Hulp en contact</span></a></li> </ul> </div> </div> </div> </div> </div> </div> </nav> <a href="/wiki/Hoofdpagina" class="mw-logo"> <img class="mw-logo-icon" src="/static/images/icons/wikipedia.png" alt="" aria-hidden="true" height="50" width="50"> <span class="mw-logo-container skin-invert"> <img class="mw-logo-wordmark" alt="Wikipedia" src="/static/images/mobile/copyright/wikipedia-wordmark-en.svg" style="width: 7.5em; height: 1.125em;"> <img class="mw-logo-tagline" alt="de vrije encyclopedie" src="/static/images/mobile/copyright/wikipedia-tagline-nl.svg" width="120" height="13" style="width: 7.5em; height: 0.8125em;"> </span> </a> </div> <div class="vector-header-end"> <div id="p-search" role="search" class="vector-search-box-vue vector-search-box-collapses vector-search-box-show-thumbnail vector-search-box-auto-expand-width vector-search-box"> <a href="/wiki/Speciaal:Zoeken" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only search-toggle" title="Doorzoek Wikipedia [f]" accesskey="f"><span class="vector-icon mw-ui-icon-search mw-ui-icon-wikimedia-search"></span> <span>Zoeken</span> </a> <div class="vector-typeahead-search-container"> <div class="cdx-typeahead-search cdx-typeahead-search--show-thumbnail cdx-typeahead-search--auto-expand-width"> <form action="/w/index.php" id="searchform" class="cdx-search-input cdx-search-input--has-end-button"> <div id="simpleSearch" class="cdx-search-input__input-wrapper" data-search-loc="header-moved"> <div class="cdx-text-input cdx-text-input--has-start-icon"> <input class="cdx-text-input__input" type="search" name="search" placeholder="Doorzoek Wikipedia" aria-label="Doorzoek Wikipedia" autocapitalize="sentences" title="Doorzoek Wikipedia [f]" accesskey="f" id="searchInput" > <span class="cdx-text-input__icon cdx-text-input__start-icon"></span> </div> <input type="hidden" name="title" value="Speciaal:Zoeken"> </div> <button class="cdx-button cdx-search-input__end-button">Zoeken</button> </form> </div> </div> </div> <nav class="vector-user-links vector-user-links-wide" aria-label="Persoonlijke hulpmiddelen"> <div class="vector-user-links-main"> <div id="p-vector-user-menu-preferences" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <div id="p-vector-user-menu-userpage" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <nav class="vector-appearance-landmark" aria-label="Uiterlijk"> <div id="vector-appearance-dropdown" class="vector-dropdown " title="De lettergrootte, breedte en kleur van de pagina wijzigen" > <input type="checkbox" id="vector-appearance-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-appearance-dropdown" class="vector-dropdown-checkbox " aria-label="Uiterlijk" > <label id="vector-appearance-dropdown-label" for="vector-appearance-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-appearance mw-ui-icon-wikimedia-appearance"></span> <span class="vector-dropdown-label-text">Uiterlijk</span> </label> <div class="vector-dropdown-content"> <div id="vector-appearance-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <div id="p-vector-user-menu-notifications" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <div id="p-vector-user-menu-overflow" class="vector-menu mw-portlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-sitesupport-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="//donate.wikimedia.org/wiki/Special:FundraiserRedirector?utm_source=donate&amp;utm_medium=sidebar&amp;utm_campaign=C13_nl.wikipedia.org&amp;uselang=nl" class=""><span>Doneren</span></a> </li> <li id="pt-createaccount-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="/w/index.php?title=Speciaal:GebruikerAanmaken&amp;returnto=Compiler" title="Registreer u vooral en meld u aan. Dit is echter niet verplicht." class=""><span>Account aanmaken</span></a> </li> <li id="pt-login-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="/w/index.php?title=Speciaal:Aanmelden&amp;returnto=Compiler" title="U wordt van harte uitgenodigd om aan te melden, maar dit is niet verplicht [o]" accesskey="o" class=""><span>Aanmelden</span></a> </li> </ul> </div> </div> </div> <div id="vector-user-links-dropdown" class="vector-dropdown vector-user-menu vector-button-flush-right vector-user-menu-logged-out" title="Meer opties" > <input type="checkbox" id="vector-user-links-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-user-links-dropdown" class="vector-dropdown-checkbox " aria-label="Persoonlijke hulpmiddelen" > <label id="vector-user-links-dropdown-label" for="vector-user-links-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-ellipsis mw-ui-icon-wikimedia-ellipsis"></span> <span class="vector-dropdown-label-text">Persoonlijke hulpmiddelen</span> </label> <div class="vector-dropdown-content"> <div id="p-personal" class="vector-menu mw-portlet mw-portlet-personal user-links-collapsible-item" title="Gebruikersmenu" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-sitesupport" class="user-links-collapsible-item mw-list-item"><a href="//donate.wikimedia.org/wiki/Special:FundraiserRedirector?utm_source=donate&amp;utm_medium=sidebar&amp;utm_campaign=C13_nl.wikipedia.org&amp;uselang=nl"><span>Doneren</span></a></li><li id="pt-createaccount" class="user-links-collapsible-item mw-list-item"><a href="/w/index.php?title=Speciaal:GebruikerAanmaken&amp;returnto=Compiler" title="Registreer u vooral en meld u aan. Dit is echter niet verplicht."><span class="vector-icon mw-ui-icon-userAdd mw-ui-icon-wikimedia-userAdd"></span> <span>Account aanmaken</span></a></li><li id="pt-login" class="user-links-collapsible-item mw-list-item"><a href="/w/index.php?title=Speciaal:Aanmelden&amp;returnto=Compiler" title="U wordt van harte uitgenodigd om aan te melden, maar dit is niet verplicht [o]" accesskey="o"><span class="vector-icon mw-ui-icon-logIn mw-ui-icon-wikimedia-logIn"></span> <span>Aanmelden</span></a></li> </ul> </div> </div> <div id="p-user-menu-anon-editor" class="vector-menu mw-portlet mw-portlet-user-menu-anon-editor" > <div class="vector-menu-heading"> Pagina&#039;s voor uitgelogde redacteuren <a href="/wiki/Help:Inleiding" aria-label="Meer leren over bewerken"><span>meer lezen</span></a> </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-anoncontribs" class="mw-list-item"><a href="/wiki/Speciaal:MijnBijdragen" title="Bijdragen IP-adres [y]" accesskey="y"><span>Bijdragen</span></a></li><li id="pt-anontalk" class="mw-list-item"><a href="/wiki/Speciaal:MijnOverleg" title="Overlegpagina van de anonieme gebruiker van dit IP-adres [n]" accesskey="n"><span>Overleg</span></a></li> </ul> </div> </div> </div> </div> </nav> </div> </header> </div> <div class="mw-page-container"> <div class="mw-page-container-inner"> <div class="vector-sitenotice-container"> <div id="siteNotice"><!-- CentralNotice --></div> </div> <div class="vector-column-start"> <div class="vector-main-menu-container"> <div id="mw-navigation"> <nav id="mw-panel" class="vector-main-menu-landmark" aria-label="Site"> <div id="vector-main-menu-pinned-container" class="vector-pinned-container"> </div> </nav> </div> </div> <div class="vector-sticky-pinned-container"> <nav id="mw-panel-toc" aria-label="Inhoud" data-event-name="ui.sidebar-toc" class="mw-table-of-contents-container vector-toc-landmark"> <div id="vector-toc-pinned-container" class="vector-pinned-container"> <div id="vector-toc" class="vector-toc vector-pinnable-element"> <div class="vector-pinnable-header vector-toc-pinnable-header vector-pinnable-header-pinned" data-feature-name="toc-pinned" data-pinnable-element-id="vector-toc" > <h2 class="vector-pinnable-header-label">Inhoud</h2> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-toc.pin">naar zijbalk verplaatsen</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-toc.unpin">verbergen</button> </div> <ul class="vector-toc-contents" id="mw-panel-toc-list"> <li id="toc-mw-content-text" class="vector-toc-list-item vector-toc-level-1"> <a href="#" class="vector-toc-link"> <div class="vector-toc-text">Top</div> </a> </li> <li id="toc-Geschiedenis" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Geschiedenis"> <div class="vector-toc-text"> <span class="vector-toc-numb">1</span> <span>Geschiedenis</span> </div> </a> <ul id="toc-Geschiedenis-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Onderdelen" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Onderdelen"> <div class="vector-toc-text"> <span class="vector-toc-numb">2</span> <span>Onderdelen</span> </div> </a> <button aria-controls="toc-Onderdelen-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Onderdelen-subkopje inklappen</span> </button> <ul id="toc-Onderdelen-sublist" class="vector-toc-list"> <li id="toc-Frontend" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Frontend"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.1</span> <span>Frontend</span> </div> </a> <ul id="toc-Frontend-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Middle-end" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Middle-end"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.2</span> <span>Middle-end</span> </div> </a> <ul id="toc-Middle-end-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Backend" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Backend"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.3</span> <span>Backend</span> </div> </a> <ul id="toc-Backend-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Modulariteit" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Modulariteit"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.4</span> <span>Modulariteit</span> </div> </a> <ul id="toc-Modulariteit-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Technische_architectuur" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Technische_architectuur"> <div class="vector-toc-text"> <span class="vector-toc-numb">3</span> <span>Technische architectuur</span> </div> </a> <button aria-controls="toc-Technische_architectuur-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Technische architectuur-subkopje inklappen</span> </button> <ul id="toc-Technische_architectuur-sublist" class="vector-toc-list"> <li id="toc-Lexicale_analyse" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Lexicale_analyse"> <div class="vector-toc-text"> <span class="vector-toc-numb">3.1</span> <span>Lexicale analyse</span> </div> </a> <ul id="toc-Lexicale_analyse-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Parsen" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Parsen"> <div class="vector-toc-text"> <span class="vector-toc-numb">3.2</span> <span>Parsen</span> </div> </a> <ul id="toc-Parsen-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Semantische_analyse" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Semantische_analyse"> <div class="vector-toc-text"> <span class="vector-toc-numb">3.3</span> <span>Semantische analyse</span> </div> </a> <ul id="toc-Semantische_analyse-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Optimalisatie" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Optimalisatie"> <div class="vector-toc-text"> <span class="vector-toc-numb">3.4</span> <span>Optimalisatie</span> </div> </a> <ul id="toc-Optimalisatie-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Codegeneratie" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Codegeneratie"> <div class="vector-toc-text"> <span class="vector-toc-numb">3.5</span> <span>Codegeneratie</span> </div> </a> <ul id="toc-Codegeneratie-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Andere_translators" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Andere_translators"> <div class="vector-toc-text"> <span class="vector-toc-numb">4</span> <span>Andere translators</span> </div> </a> <button aria-controls="toc-Andere_translators-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Andere translators-subkopje inklappen</span> </button> <ul id="toc-Andere_translators-sublist" class="vector-toc-list"> <li id="toc-Interpreter" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Interpreter"> <div class="vector-toc-text"> <span class="vector-toc-numb">4.1</span> <span>Interpreter</span> </div> </a> <ul id="toc-Interpreter-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Assembler" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Assembler"> <div class="vector-toc-text"> <span class="vector-toc-numb">4.2</span> <span>Assembler</span> </div> </a> <ul id="toc-Assembler-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Compilervarianten" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Compilervarianten"> <div class="vector-toc-text"> <span class="vector-toc-numb">4.3</span> <span>Compilervarianten</span> </div> </a> <ul id="toc-Compilervarianten-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Softwareontwikkeling" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Softwareontwikkeling"> <div class="vector-toc-text"> <span class="vector-toc-numb">5</span> <span>Softwareontwikkeling</span> </div> </a> <ul id="toc-Softwareontwikkeling-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Voor_-en_nadelen" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Voor_-en_nadelen"> <div class="vector-toc-text"> <span class="vector-toc-numb">6</span> <span>Voor -en nadelen</span> </div> </a> <ul id="toc-Voor_-en_nadelen-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Voorbeelden" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Voorbeelden"> <div class="vector-toc-text"> <span class="vector-toc-numb">7</span> <span>Voorbeelden</span> </div> </a> <ul id="toc-Voorbeelden-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Externe_links" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Externe_links"> <div class="vector-toc-text"> <span class="vector-toc-numb">8</span> <span>Externe links</span> </div> </a> <ul id="toc-Externe_links-sublist" class="vector-toc-list"> </ul> </li> </ul> </div> </div> </nav> </div> </div> <div class="mw-content-container"> <main id="content" class="mw-body"> <header class="mw-body-header vector-page-titlebar"> <nav aria-label="Inhoud" class="vector-toc-landmark"> <div id="vector-page-titlebar-toc" class="vector-dropdown vector-page-titlebar-toc vector-button-flush-left" > <input type="checkbox" id="vector-page-titlebar-toc-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-page-titlebar-toc" class="vector-dropdown-checkbox " aria-label="Inhoudsopgave omschakelen" > <label id="vector-page-titlebar-toc-label" for="vector-page-titlebar-toc-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-listBullet mw-ui-icon-wikimedia-listBullet"></span> <span class="vector-dropdown-label-text">Inhoudsopgave omschakelen</span> </label> <div class="vector-dropdown-content"> <div id="vector-page-titlebar-toc-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <h1 id="firstHeading" class="firstHeading mw-first-heading"><span class="mw-page-title-main">Compiler</span></h1> <div id="p-lang-btn" class="vector-dropdown mw-portlet mw-portlet-lang" > <input type="checkbox" id="p-lang-btn-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-p-lang-btn" class="vector-dropdown-checkbox mw-interlanguage-selector" aria-label="Ga naar een artikel in een andere taal. Beschikbaar in 94 talen" > <label id="p-lang-btn-label" for="p-lang-btn-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--action-progressive mw-portlet-lang-heading-94" aria-hidden="true" ><span class="vector-icon mw-ui-icon-language-progressive mw-ui-icon-wikimedia-language-progressive"></span> <span class="vector-dropdown-label-text">94 talen</span> </label> <div class="vector-dropdown-content"> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li class="interlanguage-link interwiki-af mw-list-item"><a href="https://af.wikipedia.org/wiki/Vertalerkonstruksie" title="Vertalerkonstruksie – Afrikaans" lang="af" hreflang="af" data-title="Vertalerkonstruksie" data-language-autonym="Afrikaans" data-language-local-name="Afrikaans" class="interlanguage-link-target"><span>Afrikaans</span></a></li><li class="interlanguage-link interwiki-an mw-list-item"><a href="https://an.wikipedia.org/wiki/Compilador" title="Compilador – Aragonees" lang="an" hreflang="an" data-title="Compilador" data-language-autonym="Aragonés" data-language-local-name="Aragonees" class="interlanguage-link-target"><span>Aragonés</span></a></li><li class="interlanguage-link interwiki-ar mw-list-item"><a href="https://ar.wikipedia.org/wiki/%D9%85%D8%B5%D8%B1%D9%81_(%D8%AD%D9%88%D8%B3%D8%A8%D8%A9)" title="مصرف (حوسبة) – Arabisch" lang="ar" hreflang="ar" data-title="مصرف (حوسبة)" data-language-autonym="العربية" data-language-local-name="Arabisch" class="interlanguage-link-target"><span>العربية</span></a></li><li class="interlanguage-link interwiki-ast mw-list-item"><a href="https://ast.wikipedia.org/wiki/Compilador" title="Compilador – Asturisch" lang="ast" hreflang="ast" data-title="Compilador" data-language-autonym="Asturianu" data-language-local-name="Asturisch" class="interlanguage-link-target"><span>Asturianu</span></a></li><li class="interlanguage-link interwiki-az mw-list-item"><a href="https://az.wikipedia.org/wiki/Kompilyator" title="Kompilyator – Azerbeidzjaans" lang="az" hreflang="az" data-title="Kompilyator" data-language-autonym="Azərbaycanca" data-language-local-name="Azerbeidzjaans" class="interlanguage-link-target"><span>Azərbaycanca</span></a></li><li class="interlanguage-link interwiki-azb mw-list-item"><a href="https://azb.wikipedia.org/wiki/%D8%AF%D8%B1%D9%84%DB%8C%DB%8C%D8%AC%DB%8C_(%DA%A9%D8%A7%D9%85%D9%BE%D8%A7%DB%8C%D9%84%D8%B1)" title="درلییجی (کامپایلر) – South Azerbaijani" lang="azb" hreflang="azb" data-title="درلییجی (کامپایلر)" data-language-autonym="تۆرکجه" data-language-local-name="South Azerbaijani" class="interlanguage-link-target"><span>تۆرکجه</span></a></li><li class="interlanguage-link interwiki-be mw-list-item"><a href="https://be.wikipedia.org/wiki/%D0%9A%D0%B0%D0%BC%D0%BF%D1%96%D0%BB%D1%8F%D1%82%D0%B0%D1%80" title="Кампілятар – Belarussisch" lang="be" hreflang="be" data-title="Кампілятар" data-language-autonym="Беларуская" data-language-local-name="Belarussisch" class="interlanguage-link-target"><span>Беларуская</span></a></li><li class="interlanguage-link interwiki-be-x-old mw-list-item"><a href="https://be-tarask.wikipedia.org/wiki/%D0%9A%D0%B0%D0%BC%D0%BF%D1%96%D0%BB%D1%8F%D1%82%D0%B0%D1%80" title="Кампілятар – Belarusian (Taraškievica orthography)" lang="be-tarask" hreflang="be-tarask" data-title="Кампілятар" data-language-autonym="Беларуская (тарашкевіца)" data-language-local-name="Belarusian (Taraškievica orthography)" class="interlanguage-link-target"><span>Беларуская (тарашкевіца)</span></a></li><li class="interlanguage-link interwiki-bg mw-list-item"><a href="https://bg.wikipedia.org/wiki/%D0%9A%D0%BE%D0%BC%D0%BF%D0%B8%D0%BB%D0%B0%D1%82%D0%BE%D1%80" title="Компилатор – Bulgaars" lang="bg" hreflang="bg" data-title="Компилатор" data-language-autonym="Български" data-language-local-name="Bulgaars" class="interlanguage-link-target"><span>Български</span></a></li><li class="interlanguage-link interwiki-bn mw-list-item"><a href="https://bn.wikipedia.org/wiki/%E0%A6%95%E0%A6%AE%E0%A7%8D%E0%A6%AA%E0%A6%BE%E0%A6%87%E0%A6%B2%E0%A6%BE%E0%A6%B0" title="কম্পাইলার – Bengaals" lang="bn" hreflang="bn" data-title="কম্পাইলার" data-language-autonym="বাংলা" data-language-local-name="Bengaals" class="interlanguage-link-target"><span>বাংলা</span></a></li><li class="interlanguage-link interwiki-br mw-list-item"><a href="https://br.wikipedia.org/wiki/Kompiler" title="Kompiler – Bretons" lang="br" hreflang="br" data-title="Kompiler" data-language-autonym="Brezhoneg" data-language-local-name="Bretons" class="interlanguage-link-target"><span>Brezhoneg</span></a></li><li class="interlanguage-link interwiki-bs mw-list-item"><a href="https://bs.wikipedia.org/wiki/Kompajler" title="Kompajler – Bosnisch" lang="bs" hreflang="bs" data-title="Kompajler" data-language-autonym="Bosanski" data-language-local-name="Bosnisch" class="interlanguage-link-target"><span>Bosanski</span></a></li><li class="interlanguage-link interwiki-ca mw-list-item"><a href="https://ca.wikipedia.org/wiki/Compilador" title="Compilador – Catalaans" lang="ca" hreflang="ca" data-title="Compilador" data-language-autonym="Català" data-language-local-name="Catalaans" class="interlanguage-link-target"><span>Català</span></a></li><li class="interlanguage-link interwiki-ckb mw-list-item"><a href="https://ckb.wikipedia.org/wiki/%DA%A9%DB%86%D9%85%D9%BE%D8%A7%DB%8C%D9%84%DB%95%D8%B1" title="کۆمپایلەر – Soranî" lang="ckb" hreflang="ckb" data-title="کۆمپایلەر" data-language-autonym="کوردی" data-language-local-name="Soranî" class="interlanguage-link-target"><span>کوردی</span></a></li><li class="interlanguage-link interwiki-cs mw-list-item"><a href="https://cs.wikipedia.org/wiki/P%C5%99eklada%C4%8D" title="Překladač – Tsjechisch" lang="cs" hreflang="cs" data-title="Překladač" data-language-autonym="Čeština" data-language-local-name="Tsjechisch" class="interlanguage-link-target"><span>Čeština</span></a></li><li class="interlanguage-link interwiki-da mw-list-item"><a href="https://da.wikipedia.org/wiki/Compiler" title="Compiler – Deens" lang="da" hreflang="da" data-title="Compiler" data-language-autonym="Dansk" data-language-local-name="Deens" class="interlanguage-link-target"><span>Dansk</span></a></li><li class="interlanguage-link interwiki-de mw-list-item"><a href="https://de.wikipedia.org/wiki/Compiler" title="Compiler – Duits" lang="de" hreflang="de" data-title="Compiler" data-language-autonym="Deutsch" data-language-local-name="Duits" class="interlanguage-link-target"><span>Deutsch</span></a></li><li class="interlanguage-link interwiki-diq mw-list-item"><a href="https://diq.wikipedia.org/wiki/Ar%C3%AAkerdo%C4%9F" title="Arêkerdoğ – Zazaki" lang="diq" hreflang="diq" data-title="Arêkerdoğ" data-language-autonym="Zazaki" data-language-local-name="Zazaki" class="interlanguage-link-target"><span>Zazaki</span></a></li><li class="interlanguage-link interwiki-el mw-list-item"><a href="https://el.wikipedia.org/wiki/%CE%9C%CE%B5%CF%84%CE%B1%CE%B3%CE%BB%CF%89%CF%84%CF%84%CE%B9%CF%83%CF%84%CE%AE%CF%82_(%CF%85%CF%80%CE%BF%CE%BB%CE%BF%CE%B3%CE%B9%CF%83%CF%84%CE%AD%CF%82)" title="Μεταγλωττιστής (υπολογιστές) – Grieks" lang="el" hreflang="el" data-title="Μεταγλωττιστής (υπολογιστές)" data-language-autonym="Ελληνικά" data-language-local-name="Grieks" class="interlanguage-link-target"><span>Ελληνικά</span></a></li><li class="interlanguage-link interwiki-en mw-list-item"><a href="https://en.wikipedia.org/wiki/Compiler" title="Compiler – Engels" lang="en" hreflang="en" data-title="Compiler" data-language-autonym="English" data-language-local-name="Engels" class="interlanguage-link-target"><span>English</span></a></li><li class="interlanguage-link interwiki-eo mw-list-item"><a href="https://eo.wikipedia.org/wiki/Tradukilo" title="Tradukilo – Esperanto" lang="eo" hreflang="eo" data-title="Tradukilo" data-language-autonym="Esperanto" data-language-local-name="Esperanto" class="interlanguage-link-target"><span>Esperanto</span></a></li><li class="interlanguage-link interwiki-es mw-list-item"><a href="https://es.wikipedia.org/wiki/Compilador" title="Compilador – Spaans" lang="es" hreflang="es" data-title="Compilador" data-language-autonym="Español" data-language-local-name="Spaans" class="interlanguage-link-target"><span>Español</span></a></li><li class="interlanguage-link interwiki-et mw-list-item"><a href="https://et.wikipedia.org/wiki/Kompilaator" title="Kompilaator – Estisch" lang="et" hreflang="et" data-title="Kompilaator" data-language-autonym="Eesti" data-language-local-name="Estisch" class="interlanguage-link-target"><span>Eesti</span></a></li><li class="interlanguage-link interwiki-eu mw-list-item"><a href="https://eu.wikipedia.org/wiki/Konpiladore" title="Konpiladore – Baskisch" lang="eu" hreflang="eu" data-title="Konpiladore" data-language-autonym="Euskara" data-language-local-name="Baskisch" class="interlanguage-link-target"><span>Euskara</span></a></li><li class="interlanguage-link interwiki-fa mw-list-item"><a href="https://fa.wikipedia.org/wiki/%DA%A9%D8%A7%D9%85%D9%BE%D8%A7%DB%8C%D9%84%D8%B1" title="کامپایلر – Perzisch" lang="fa" hreflang="fa" data-title="کامپایلر" data-language-autonym="فارسی" data-language-local-name="Perzisch" class="interlanguage-link-target"><span>فارسی</span></a></li><li class="interlanguage-link interwiki-fi mw-list-item"><a href="https://fi.wikipedia.org/wiki/Ohjelmointikielen_k%C3%A4%C3%A4nt%C3%A4j%C3%A4" title="Ohjelmointikielen kääntäjä – Fins" lang="fi" hreflang="fi" data-title="Ohjelmointikielen kääntäjä" data-language-autonym="Suomi" data-language-local-name="Fins" class="interlanguage-link-target"><span>Suomi</span></a></li><li class="interlanguage-link interwiki-fr mw-list-item"><a href="https://fr.wikipedia.org/wiki/Compilateur" title="Compilateur – Frans" lang="fr" hreflang="fr" data-title="Compilateur" data-language-autonym="Français" data-language-local-name="Frans" class="interlanguage-link-target"><span>Français</span></a></li><li class="interlanguage-link interwiki-ga mw-list-item"><a href="https://ga.wikipedia.org/wiki/Tiomsaitheoir" title="Tiomsaitheoir – Iers" lang="ga" hreflang="ga" data-title="Tiomsaitheoir" data-language-autonym="Gaeilge" data-language-local-name="Iers" class="interlanguage-link-target"><span>Gaeilge</span></a></li><li class="interlanguage-link interwiki-gl mw-list-item"><a href="https://gl.wikipedia.org/wiki/Compilador" title="Compilador – Galicisch" lang="gl" hreflang="gl" data-title="Compilador" data-language-autonym="Galego" data-language-local-name="Galicisch" class="interlanguage-link-target"><span>Galego</span></a></li><li class="interlanguage-link interwiki-ha mw-list-item"><a href="https://ha.wikipedia.org/wiki/Compiler" title="Compiler – Hausa" lang="ha" hreflang="ha" data-title="Compiler" data-language-autonym="Hausa" data-language-local-name="Hausa" class="interlanguage-link-target"><span>Hausa</span></a></li><li class="interlanguage-link interwiki-he mw-list-item"><a href="https://he.wikipedia.org/wiki/%D7%9E%D7%94%D7%93%D7%A8" title="מהדר – Hebreeuws" lang="he" hreflang="he" data-title="מהדר" data-language-autonym="עברית" data-language-local-name="Hebreeuws" class="interlanguage-link-target"><span>עברית</span></a></li><li class="interlanguage-link interwiki-hi mw-list-item"><a href="https://hi.wikipedia.org/wiki/%E0%A4%85%E0%A4%A8%E0%A5%81%E0%A4%AD%E0%A4%BE%E0%A4%B7%E0%A4%95" title="अनुभाषक – Hindi" lang="hi" hreflang="hi" data-title="अनुभाषक" data-language-autonym="हिन्दी" data-language-local-name="Hindi" class="interlanguage-link-target"><span>हिन्दी</span></a></li><li class="interlanguage-link interwiki-hr mw-list-item"><a href="https://hr.wikipedia.org/wiki/Jezi%C4%8Dni_prevoditelj" title="Jezični prevoditelj – Kroatisch" lang="hr" hreflang="hr" data-title="Jezični prevoditelj" data-language-autonym="Hrvatski" data-language-local-name="Kroatisch" class="interlanguage-link-target"><span>Hrvatski</span></a></li><li class="interlanguage-link interwiki-hsb mw-list-item"><a href="https://hsb.wikipedia.org/wiki/Kompilator" title="Kompilator – Oppersorbisch" lang="hsb" hreflang="hsb" data-title="Kompilator" data-language-autonym="Hornjoserbsce" data-language-local-name="Oppersorbisch" class="interlanguage-link-target"><span>Hornjoserbsce</span></a></li><li class="interlanguage-link interwiki-hu mw-list-item"><a href="https://hu.wikipedia.org/wiki/Ford%C3%ADt%C3%B3program" title="Fordítóprogram – Hongaars" lang="hu" hreflang="hu" data-title="Fordítóprogram" data-language-autonym="Magyar" data-language-local-name="Hongaars" class="interlanguage-link-target"><span>Magyar</span></a></li><li class="interlanguage-link interwiki-hy mw-list-item"><a href="https://hy.wikipedia.org/wiki/%D4%BF%D5%B8%D5%B4%D5%BA%D5%AB%D5%AC%D5%B5%D5%A1%D5%BF%D5%B8%D6%80" title="Կոմպիլյատոր – Armeens" lang="hy" hreflang="hy" data-title="Կոմպիլյատոր" data-language-autonym="Հայերեն" data-language-local-name="Armeens" class="interlanguage-link-target"><span>Հայերեն</span></a></li><li class="interlanguage-link interwiki-ia mw-list-item"><a href="https://ia.wikipedia.org/wiki/Compilator" title="Compilator – Interlingua" lang="ia" hreflang="ia" data-title="Compilator" data-language-autonym="Interlingua" data-language-local-name="Interlingua" class="interlanguage-link-target"><span>Interlingua</span></a></li><li class="interlanguage-link interwiki-id mw-list-item"><a href="https://id.wikipedia.org/wiki/Kompilator" title="Kompilator – Indonesisch" lang="id" hreflang="id" data-title="Kompilator" data-language-autonym="Bahasa Indonesia" data-language-local-name="Indonesisch" class="interlanguage-link-target"><span>Bahasa Indonesia</span></a></li><li class="interlanguage-link interwiki-ilo mw-list-item"><a href="https://ilo.wikipedia.org/wiki/Manggupgop" title="Manggupgop – Iloko" lang="ilo" hreflang="ilo" data-title="Manggupgop" data-language-autonym="Ilokano" data-language-local-name="Iloko" class="interlanguage-link-target"><span>Ilokano</span></a></li><li class="interlanguage-link interwiki-io mw-list-item"><a href="https://io.wikipedia.org/wiki/Kompililo" title="Kompililo – Ido" lang="io" hreflang="io" data-title="Kompililo" data-language-autonym="Ido" data-language-local-name="Ido" class="interlanguage-link-target"><span>Ido</span></a></li><li class="interlanguage-link interwiki-is mw-list-item"><a href="https://is.wikipedia.org/wiki/%C3%9E%C3%BD%C3%B0andi_(t%C3%B6lvunarfr%C3%A6%C3%B0i)" title="Þýðandi (tölvunarfræði) – IJslands" lang="is" hreflang="is" data-title="Þýðandi (tölvunarfræði)" data-language-autonym="Íslenska" data-language-local-name="IJslands" class="interlanguage-link-target"><span>Íslenska</span></a></li><li class="interlanguage-link interwiki-it mw-list-item"><a href="https://it.wikipedia.org/wiki/Compilatore" title="Compilatore – Italiaans" lang="it" hreflang="it" data-title="Compilatore" data-language-autonym="Italiano" data-language-local-name="Italiaans" class="interlanguage-link-target"><span>Italiano</span></a></li><li class="interlanguage-link interwiki-ja mw-list-item"><a href="https://ja.wikipedia.org/wiki/%E3%82%B3%E3%83%B3%E3%83%91%E3%82%A4%E3%83%A9" title="コンパイラ – Japans" lang="ja" hreflang="ja" data-title="コンパイラ" data-language-autonym="日本語" data-language-local-name="Japans" class="interlanguage-link-target"><span>日本語</span></a></li><li class="interlanguage-link interwiki-ka mw-list-item"><a href="https://ka.wikipedia.org/wiki/%E1%83%99%E1%83%9D%E1%83%9B%E1%83%9E%E1%83%98%E1%83%9A%E1%83%90%E1%83%A2%E1%83%9D%E1%83%A0%E1%83%98" title="კომპილატორი – Georgisch" lang="ka" hreflang="ka" data-title="კომპილატორი" data-language-autonym="ქართული" data-language-local-name="Georgisch" class="interlanguage-link-target"><span>ქართული</span></a></li><li class="interlanguage-link interwiki-kaa mw-list-item"><a href="https://kaa.wikipedia.org/wiki/Kompilyator" title="Kompilyator – Karakalpaks" lang="kaa" hreflang="kaa" data-title="Kompilyator" data-language-autonym="Qaraqalpaqsha" data-language-local-name="Karakalpaks" class="interlanguage-link-target"><span>Qaraqalpaqsha</span></a></li><li class="interlanguage-link interwiki-kk mw-list-item"><a href="https://kk.wikipedia.org/wiki/%D0%9A%D0%BE%D0%BC%D0%BF%D0%B8%D0%BB%D1%8F%D1%82%D0%BE%D1%80" title="Компилятор – Kazachs" lang="kk" hreflang="kk" data-title="Компилятор" data-language-autonym="Қазақша" data-language-local-name="Kazachs" class="interlanguage-link-target"><span>Қазақша</span></a></li><li class="interlanguage-link interwiki-ko mw-list-item"><a href="https://ko.wikipedia.org/wiki/%EC%BB%B4%ED%8C%8C%EC%9D%BC%EB%9F%AC" title="컴파일러 – Koreaans" lang="ko" hreflang="ko" data-title="컴파일러" data-language-autonym="한국어" data-language-local-name="Koreaans" class="interlanguage-link-target"><span>한국어</span></a></li><li class="interlanguage-link interwiki-ky mw-list-item"><a href="https://ky.wikipedia.org/wiki/%D0%9A%D0%BE%D0%BC%D0%BF%D0%B8%D0%BB%D0%B5%D1%80" title="Компилер – Kirgizisch" lang="ky" hreflang="ky" data-title="Компилер" data-language-autonym="Кыргызча" data-language-local-name="Kirgizisch" class="interlanguage-link-target"><span>Кыргызча</span></a></li><li class="interlanguage-link interwiki-la mw-list-item"><a href="https://la.wikipedia.org/wiki/Compilatrum" title="Compilatrum – Latijn" lang="la" hreflang="la" data-title="Compilatrum" data-language-autonym="Latina" data-language-local-name="Latijn" class="interlanguage-link-target"><span>Latina</span></a></li><li class="interlanguage-link interwiki-lb mw-list-item"><a href="https://lb.wikipedia.org/wiki/Compiler" title="Compiler – Luxemburgs" lang="lb" hreflang="lb" data-title="Compiler" data-language-autonym="Lëtzebuergesch" data-language-local-name="Luxemburgs" class="interlanguage-link-target"><span>Lëtzebuergesch</span></a></li><li class="interlanguage-link interwiki-lfn mw-list-item"><a href="https://lfn.wikipedia.org/wiki/Compilador" title="Compilador – Lingua Franca Nova" lang="lfn" hreflang="lfn" data-title="Compilador" data-language-autonym="Lingua Franca Nova" data-language-local-name="Lingua Franca Nova" class="interlanguage-link-target"><span>Lingua Franca Nova</span></a></li><li class="interlanguage-link interwiki-lmo mw-list-item"><a href="https://lmo.wikipedia.org/wiki/Compilator" title="Compilator – Lombardisch" lang="lmo" hreflang="lmo" data-title="Compilator" data-language-autonym="Lombard" data-language-local-name="Lombardisch" class="interlanguage-link-target"><span>Lombard</span></a></li><li class="interlanguage-link interwiki-lt mw-list-item"><a href="https://lt.wikipedia.org/wiki/Kompiliatorius" title="Kompiliatorius – Litouws" lang="lt" hreflang="lt" data-title="Kompiliatorius" data-language-autonym="Lietuvių" data-language-local-name="Litouws" class="interlanguage-link-target"><span>Lietuvių</span></a></li><li class="interlanguage-link interwiki-lv mw-list-item"><a href="https://lv.wikipedia.org/wiki/Kompilators" title="Kompilators – Lets" lang="lv" hreflang="lv" data-title="Kompilators" data-language-autonym="Latviešu" data-language-local-name="Lets" class="interlanguage-link-target"><span>Latviešu</span></a></li><li class="interlanguage-link interwiki-mhr mw-list-item"><a href="https://mhr.wikipedia.org/wiki/%D0%9A%D0%BE%D0%BC%D0%BF%D0%B8%D0%BB%D1%8F%D1%86%D0%B8%D0%B9" title="Компиляций – Eastern Mari" lang="mhr" hreflang="mhr" data-title="Компиляций" data-language-autonym="Олык марий" data-language-local-name="Eastern Mari" class="interlanguage-link-target"><span>Олык марий</span></a></li><li class="interlanguage-link interwiki-mk mw-list-item"><a href="https://mk.wikipedia.org/wiki/%D0%9F%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D1%81%D0%BA%D0%B8_%D0%BF%D1%80%D0%B5%D0%B2%D0%B5%D0%B4%D1%83%D0%B2%D0%B0%D1%87" title="Програмски преведувач – Macedonisch" lang="mk" hreflang="mk" data-title="Програмски преведувач" data-language-autonym="Македонски" data-language-local-name="Macedonisch" class="interlanguage-link-target"><span>Македонски</span></a></li><li class="interlanguage-link interwiki-ml mw-list-item"><a href="https://ml.wikipedia.org/wiki/%E0%B4%95%E0%B4%82%E0%B4%AA%E0%B5%88%E0%B4%B2%E0%B5%BC" title="കംപൈലർ – Malayalam" lang="ml" hreflang="ml" data-title="കംപൈലർ" data-language-autonym="മലയാളം" data-language-local-name="Malayalam" class="interlanguage-link-target"><span>മലയാളം</span></a></li><li class="interlanguage-link interwiki-mn mw-list-item"><a href="https://mn.wikipedia.org/wiki/Compiler" title="Compiler – Mongools" lang="mn" hreflang="mn" data-title="Compiler" data-language-autonym="Монгол" data-language-local-name="Mongools" class="interlanguage-link-target"><span>Монгол</span></a></li><li class="interlanguage-link interwiki-ms mw-list-item"><a href="https://ms.wikipedia.org/wiki/Penyusun" title="Penyusun – Maleis" lang="ms" hreflang="ms" data-title="Penyusun" data-language-autonym="Bahasa Melayu" data-language-local-name="Maleis" class="interlanguage-link-target"><span>Bahasa Melayu</span></a></li><li class="interlanguage-link interwiki-mwl mw-list-item"><a href="https://mwl.wikipedia.org/wiki/Cumpilador" title="Cumpilador – Mirandees" lang="mwl" hreflang="mwl" data-title="Cumpilador" data-language-autonym="Mirandés" data-language-local-name="Mirandees" class="interlanguage-link-target"><span>Mirandés</span></a></li><li class="interlanguage-link interwiki-my mw-list-item"><a href="https://my.wikipedia.org/wiki/Compiler" title="Compiler – Birmaans" lang="my" hreflang="my" data-title="Compiler" data-language-autonym="မြန်မာဘာသာ" data-language-local-name="Birmaans" class="interlanguage-link-target"><span>မြန်မာဘာသာ</span></a></li><li class="interlanguage-link interwiki-ne mw-list-item"><a href="https://ne.wikipedia.org/wiki/%E0%A4%95%E0%A4%AE%E0%A5%8D%E0%A4%AA%E0%A4%BE%E0%A4%87%E0%A4%B2%E0%A4%B0" title="कम्पाइलर – Nepalees" lang="ne" hreflang="ne" data-title="कम्पाइलर" data-language-autonym="नेपाली" data-language-local-name="Nepalees" class="interlanguage-link-target"><span>नेपाली</span></a></li><li class="interlanguage-link interwiki-no mw-list-item"><a href="https://no.wikipedia.org/wiki/Kompilator" title="Kompilator – Noors - Bokmål" lang="nb" hreflang="nb" data-title="Kompilator" data-language-autonym="Norsk bokmål" data-language-local-name="Noors - Bokmål" class="interlanguage-link-target"><span>Norsk bokmål</span></a></li><li class="interlanguage-link interwiki-pa mw-list-item"><a href="https://pa.wikipedia.org/wiki/%E0%A8%95%E0%A9%B0%E0%A8%AA%E0%A8%BE%E0%A8%87%E0%A8%B2%E0%A8%B0" title="ਕੰਪਾਇਲਰ – Punjabi" lang="pa" hreflang="pa" data-title="ਕੰਪਾਇਲਰ" data-language-autonym="ਪੰਜਾਬੀ" data-language-local-name="Punjabi" class="interlanguage-link-target"><span>ਪੰਜਾਬੀ</span></a></li><li class="interlanguage-link interwiki-pl mw-list-item"><a href="https://pl.wikipedia.org/wiki/Kompilator" title="Kompilator – Pools" lang="pl" hreflang="pl" data-title="Kompilator" data-language-autonym="Polski" data-language-local-name="Pools" class="interlanguage-link-target"><span>Polski</span></a></li><li class="interlanguage-link interwiki-pnb mw-list-item"><a href="https://pnb.wikipedia.org/wiki/%DA%A9%D9%85%D9%BE%D8%A7%D8%A6%D9%84%D8%B1" title="کمپائلر – Western Punjabi" lang="pnb" hreflang="pnb" data-title="کمپائلر" data-language-autonym="پنجابی" data-language-local-name="Western Punjabi" class="interlanguage-link-target"><span>پنجابی</span></a></li><li class="interlanguage-link interwiki-pt mw-list-item"><a href="https://pt.wikipedia.org/wiki/Compilador" title="Compilador – Portugees" lang="pt" hreflang="pt" data-title="Compilador" data-language-autonym="Português" data-language-local-name="Portugees" class="interlanguage-link-target"><span>Português</span></a></li><li class="interlanguage-link interwiki-qu mw-list-item"><a href="https://qu.wikipedia.org/wiki/Suntuq_(anta%C3%B1iqiy)" title="Suntuq (antañiqiy) – Quechua" lang="qu" hreflang="qu" data-title="Suntuq (antañiqiy)" data-language-autonym="Runa Simi" data-language-local-name="Quechua" class="interlanguage-link-target"><span>Runa Simi</span></a></li><li class="interlanguage-link interwiki-ro mw-list-item"><a href="https://ro.wikipedia.org/wiki/Compilator" title="Compilator – Roemeens" lang="ro" hreflang="ro" data-title="Compilator" data-language-autonym="Română" data-language-local-name="Roemeens" class="interlanguage-link-target"><span>Română</span></a></li><li class="interlanguage-link interwiki-ru mw-list-item"><a href="https://ru.wikipedia.org/wiki/%D0%9A%D0%BE%D0%BC%D0%BF%D0%B8%D0%BB%D1%8F%D1%82%D0%BE%D1%80" title="Компилятор – Russisch" lang="ru" hreflang="ru" data-title="Компилятор" data-language-autonym="Русский" data-language-local-name="Russisch" class="interlanguage-link-target"><span>Русский</span></a></li><li class="interlanguage-link interwiki-sco mw-list-item"><a href="https://sco.wikipedia.org/wiki/Compiler" title="Compiler – Schots" lang="sco" hreflang="sco" data-title="Compiler" data-language-autonym="Scots" data-language-local-name="Schots" class="interlanguage-link-target"><span>Scots</span></a></li><li class="interlanguage-link interwiki-sh mw-list-item"><a href="https://sh.wikipedia.org/wiki/Kompajler" title="Kompajler – Servo-Kroatisch" lang="sh" hreflang="sh" data-title="Kompajler" data-language-autonym="Srpskohrvatski / српскохрватски" data-language-local-name="Servo-Kroatisch" class="interlanguage-link-target"><span>Srpskohrvatski / српскохрватски</span></a></li><li class="interlanguage-link interwiki-simple mw-list-item"><a href="https://simple.wikipedia.org/wiki/Compiler" title="Compiler – Simple English" lang="en-simple" hreflang="en-simple" data-title="Compiler" data-language-autonym="Simple English" data-language-local-name="Simple English" class="interlanguage-link-target"><span>Simple English</span></a></li><li class="interlanguage-link interwiki-sk mw-list-item"><a href="https://sk.wikipedia.org/wiki/Kompil%C3%A1tor_(programovanie)" title="Kompilátor (programovanie) – Slowaaks" lang="sk" hreflang="sk" data-title="Kompilátor (programovanie)" data-language-autonym="Slovenčina" data-language-local-name="Slowaaks" class="interlanguage-link-target"><span>Slovenčina</span></a></li><li class="interlanguage-link interwiki-sl mw-list-item"><a href="https://sl.wikipedia.org/wiki/Prevajalnik" title="Prevajalnik – Sloveens" lang="sl" hreflang="sl" data-title="Prevajalnik" data-language-autonym="Slovenščina" data-language-local-name="Sloveens" class="interlanguage-link-target"><span>Slovenščina</span></a></li><li class="interlanguage-link interwiki-sq mw-list-item"><a href="https://sq.wikipedia.org/wiki/P%C3%ABrpiluesi" title="Përpiluesi – Albanees" lang="sq" hreflang="sq" data-title="Përpiluesi" data-language-autonym="Shqip" data-language-local-name="Albanees" class="interlanguage-link-target"><span>Shqip</span></a></li><li class="interlanguage-link interwiki-sr mw-list-item"><a href="https://sr.wikipedia.org/wiki/%D0%9A%D0%BE%D0%BC%D0%BF%D0%B8%D0%BB%D0%B0%D1%82%D0%BE%D1%80" title="Компилатор – Servisch" lang="sr" hreflang="sr" data-title="Компилатор" data-language-autonym="Српски / srpski" data-language-local-name="Servisch" class="interlanguage-link-target"><span>Српски / srpski</span></a></li><li class="interlanguage-link interwiki-sv mw-list-item"><a href="https://sv.wikipedia.org/wiki/Kompilator" title="Kompilator – Zweeds" lang="sv" hreflang="sv" data-title="Kompilator" data-language-autonym="Svenska" data-language-local-name="Zweeds" class="interlanguage-link-target"><span>Svenska</span></a></li><li class="interlanguage-link interwiki-sw mw-list-item"><a href="https://sw.wikipedia.org/wiki/Kikonganyi" title="Kikonganyi – Swahili" lang="sw" hreflang="sw" data-title="Kikonganyi" data-language-autonym="Kiswahili" data-language-local-name="Swahili" class="interlanguage-link-target"><span>Kiswahili</span></a></li><li class="interlanguage-link interwiki-ta mw-list-item"><a href="https://ta.wikipedia.org/wiki/%E0%AE%A8%E0%AE%BF%E0%AE%B0%E0%AE%B2%E0%AF%8D%E0%AE%AE%E0%AF%8A%E0%AE%B4%E0%AE%BF%E0%AE%AE%E0%AE%BE%E0%AE%B1%E0%AF%8D%E0%AE%B1%E0%AE%BF" title="நிரல்மொழிமாற்றி – Tamil" lang="ta" hreflang="ta" data-title="நிரல்மொழிமாற்றி" data-language-autonym="தமிழ்" data-language-local-name="Tamil" class="interlanguage-link-target"><span>தமிழ்</span></a></li><li class="interlanguage-link interwiki-te mw-list-item"><a href="https://te.wikipedia.org/wiki/%E0%B0%95%E0%B0%82%E0%B0%AA%E0%B1%88%E0%B0%B2%E0%B0%B0%E0%B1%8D" title="కంపైలర్ – Telugu" lang="te" hreflang="te" data-title="కంపైలర్" data-language-autonym="తెలుగు" data-language-local-name="Telugu" class="interlanguage-link-target"><span>తెలుగు</span></a></li><li class="interlanguage-link interwiki-tg mw-list-item"><a href="https://tg.wikipedia.org/wiki/%D0%9C%D1%83%D1%82%D0%B0%D1%80%D2%B7%D0%B8%D0%BC_(%D1%80%D0%BE%D1%91%D0%BD%D0%B0)" title="Мутарҷим (роёна) – Tadzjieks" lang="tg" hreflang="tg" data-title="Мутарҷим (роёна)" data-language-autonym="Тоҷикӣ" data-language-local-name="Tadzjieks" class="interlanguage-link-target"><span>Тоҷикӣ</span></a></li><li class="interlanguage-link interwiki-th mw-list-item"><a href="https://th.wikipedia.org/wiki/%E0%B8%84%E0%B8%AD%E0%B8%A1%E0%B9%84%E0%B8%9E%E0%B9%80%E0%B8%A5%E0%B8%AD%E0%B8%A3%E0%B9%8C" title="คอมไพเลอร์ – Thai" lang="th" hreflang="th" data-title="คอมไพเลอร์" data-language-autonym="ไทย" data-language-local-name="Thai" class="interlanguage-link-target"><span>ไทย</span></a></li><li class="interlanguage-link interwiki-tl mw-list-item"><a href="https://tl.wikipedia.org/wiki/Compiler" title="Compiler – Tagalog" lang="tl" hreflang="tl" data-title="Compiler" data-language-autonym="Tagalog" data-language-local-name="Tagalog" class="interlanguage-link-target"><span>Tagalog</span></a></li><li class="interlanguage-link interwiki-tr mw-list-item"><a href="https://tr.wikipedia.org/wiki/Derleyici" title="Derleyici – Turks" lang="tr" hreflang="tr" data-title="Derleyici" data-language-autonym="Türkçe" data-language-local-name="Turks" class="interlanguage-link-target"><span>Türkçe</span></a></li><li class="interlanguage-link interwiki-uk mw-list-item"><a href="https://uk.wikipedia.org/wiki/%D0%9A%D0%BE%D0%BC%D0%BF%D1%96%D0%BB%D1%8F%D1%82%D0%BE%D1%80" title="Компілятор – Oekraïens" lang="uk" hreflang="uk" data-title="Компілятор" data-language-autonym="Українська" data-language-local-name="Oekraïens" class="interlanguage-link-target"><span>Українська</span></a></li><li class="interlanguage-link interwiki-ur mw-list-item"><a href="https://ur.wikipedia.org/wiki/%DA%A9%D9%85%D9%BE%D8%A7%D8%A6%D9%84%D8%B1" title="کمپائلر – Urdu" lang="ur" hreflang="ur" data-title="کمپائلر" data-language-autonym="اردو" data-language-local-name="Urdu" class="interlanguage-link-target"><span>اردو</span></a></li><li class="interlanguage-link interwiki-vi mw-list-item"><a href="https://vi.wikipedia.org/wiki/Tr%C3%ACnh_bi%C3%AAn_d%E1%BB%8Bch" title="Trình biên dịch – Vietnamees" lang="vi" hreflang="vi" data-title="Trình biên dịch" data-language-autonym="Tiếng Việt" data-language-local-name="Vietnamees" class="interlanguage-link-target"><span>Tiếng Việt</span></a></li><li class="interlanguage-link interwiki-war mw-list-item"><a href="https://war.wikipedia.org/wiki/Kompilador" title="Kompilador – Waray" lang="war" hreflang="war" data-title="Kompilador" data-language-autonym="Winaray" data-language-local-name="Waray" class="interlanguage-link-target"><span>Winaray</span></a></li><li class="interlanguage-link interwiki-wuu mw-list-item"><a href="https://wuu.wikipedia.org/wiki/%E7%BC%96%E8%AF%91%E5%99%A8" title="编译器 – Wuyu" lang="wuu" hreflang="wuu" data-title="编译器" data-language-autonym="吴语" data-language-local-name="Wuyu" class="interlanguage-link-target"><span>吴语</span></a></li><li class="interlanguage-link interwiki-yi mw-list-item"><a href="https://yi.wikipedia.org/wiki/%D7%A7%D7%90%D7%9E%D7%A4%D7%99%D7%99%D7%9C%D7%A2%D7%A8" title="קאמפיילער – Jiddisch" lang="yi" hreflang="yi" data-title="קאמפיילער" data-language-autonym="ייִדיש" data-language-local-name="Jiddisch" class="interlanguage-link-target"><span>ייִדיש</span></a></li><li class="interlanguage-link interwiki-zh mw-list-item"><a href="https://zh.wikipedia.org/wiki/%E7%B7%A8%E8%AD%AF%E5%99%A8" title="編譯器 – Chinees" lang="zh" hreflang="zh" data-title="編譯器" data-language-autonym="中文" data-language-local-name="Chinees" class="interlanguage-link-target"><span>中文</span></a></li><li class="interlanguage-link interwiki-zh-min-nan mw-list-item"><a href="https://zh-min-nan.wikipedia.org/wiki/Chhau-chi%CC%8Dp-kh%C3%AC" title="Chhau-chi̍p-khì – Minnanyu" lang="nan" hreflang="nan" data-title="Chhau-chi̍p-khì" data-language-autonym="閩南語 / Bân-lâm-gú" data-language-local-name="Minnanyu" class="interlanguage-link-target"><span>閩南語 / Bân-lâm-gú</span></a></li><li class="interlanguage-link interwiki-zh-yue mw-list-item"><a href="https://zh-yue.wikipedia.org/wiki/%E7%B7%A8%E8%AD%AF%E5%99%A8" title="編譯器 – Kantonees" lang="yue" hreflang="yue" data-title="編譯器" data-language-autonym="粵語" data-language-local-name="Kantonees" class="interlanguage-link-target"><span>粵語</span></a></li> </ul> <div class="after-portlet after-portlet-lang"><span class="wb-langlinks-edit wb-langlinks-link"><a href="https://www.wikidata.org/wiki/Special:EntityPage/Q47506#sitelinks-wikipedia" title="Taalkoppelingen bewerken" class="wbc-editpage">Koppelingen bewerken</a></span></div> </div> </div> </div> </header> <div class="vector-page-toolbar"> <div class="vector-page-toolbar-container"> <div id="left-navigation"> <nav aria-label="Naamruimten"> <div id="p-associated-pages" class="vector-menu vector-menu-tabs mw-portlet mw-portlet-associated-pages" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-nstab-main" class="selected vector-tab-noicon mw-list-item"><a href="/wiki/Compiler" title="Inhoudspagina bekijken [c]" accesskey="c"><span>Artikel</span></a></li><li id="ca-talk" class="vector-tab-noicon mw-list-item"><a href="/wiki/Overleg:Compiler" rel="discussion" title="Overleg over deze pagina [t]" accesskey="t"><span>Overleg</span></a></li> </ul> </div> </div> <div id="vector-variants-dropdown" class="vector-dropdown emptyPortlet" > <input type="checkbox" id="vector-variants-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-variants-dropdown" class="vector-dropdown-checkbox " aria-label="Taalvariant wijzigen" > <label id="vector-variants-dropdown-label" for="vector-variants-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet" aria-hidden="true" ><span class="vector-dropdown-label-text">Nederlands</span> </label> <div class="vector-dropdown-content"> <div id="p-variants" class="vector-menu mw-portlet mw-portlet-variants emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> </div> </div> </nav> </div> <div id="right-navigation" class="vector-collapsible"> <nav aria-label="Weergaven"> <div id="p-views" class="vector-menu vector-menu-tabs mw-portlet mw-portlet-views" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-view" class="selected vector-tab-noicon mw-list-item"><a href="/wiki/Compiler"><span>Lezen</span></a></li><li id="ca-ve-edit" class="vector-tab-noicon mw-list-item"><a href="/w/index.php?title=Compiler&amp;veaction=edit" title="Deze pagina bewerken [v]" accesskey="v"><span>Bewerken</span></a></li><li id="ca-edit" class="collapsible vector-tab-noicon mw-list-item"><a href="/w/index.php?title=Compiler&amp;action=edit" title="Broncode van deze pagina bewerken [e]" accesskey="e"><span>Brontekst bewerken</span></a></li><li id="ca-history" class="vector-tab-noicon mw-list-item"><a href="/w/index.php?title=Compiler&amp;action=history" title="Eerdere versies van deze pagina [h]" accesskey="h"><span>Geschiedenis weergeven</span></a></li> </ul> </div> </div> </nav> <nav class="vector-page-tools-landmark" aria-label="Paginahulpmiddelen"> <div id="vector-page-tools-dropdown" class="vector-dropdown vector-page-tools-dropdown" > <input type="checkbox" id="vector-page-tools-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-page-tools-dropdown" class="vector-dropdown-checkbox " aria-label="Hulpmiddelen" > <label id="vector-page-tools-dropdown-label" for="vector-page-tools-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet" aria-hidden="true" ><span class="vector-dropdown-label-text">Hulpmiddelen</span> </label> <div class="vector-dropdown-content"> <div id="vector-page-tools-unpinned-container" class="vector-unpinned-container"> <div id="vector-page-tools" class="vector-page-tools vector-pinnable-element"> <div class="vector-pinnable-header vector-page-tools-pinnable-header vector-pinnable-header-unpinned" data-feature-name="page-tools-pinned" data-pinnable-element-id="vector-page-tools" data-pinned-container-id="vector-page-tools-pinned-container" data-unpinned-container-id="vector-page-tools-unpinned-container" > <div class="vector-pinnable-header-label">Hulpmiddelen</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-page-tools.pin">naar zijbalk verplaatsen</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-page-tools.unpin">verbergen</button> </div> <div id="p-cactions" class="vector-menu mw-portlet mw-portlet-cactions emptyPortlet vector-has-collapsible-items" title="Meer opties" > <div class="vector-menu-heading"> Handelingen </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-more-view" class="selected vector-more-collapsible-item mw-list-item"><a href="/wiki/Compiler"><span>Lezen</span></a></li><li id="ca-more-ve-edit" class="vector-more-collapsible-item mw-list-item"><a href="/w/index.php?title=Compiler&amp;veaction=edit" title="Deze pagina bewerken [v]" accesskey="v"><span>Bewerken</span></a></li><li id="ca-more-edit" class="collapsible vector-more-collapsible-item mw-list-item"><a href="/w/index.php?title=Compiler&amp;action=edit" title="Broncode van deze pagina bewerken [e]" accesskey="e"><span>Brontekst bewerken</span></a></li><li id="ca-more-history" class="vector-more-collapsible-item mw-list-item"><a href="/w/index.php?title=Compiler&amp;action=history"><span>Geschiedenis weergeven</span></a></li> </ul> </div> </div> <div id="p-tb" class="vector-menu mw-portlet mw-portlet-tb" > <div class="vector-menu-heading"> Algemeen </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="t-whatlinkshere" class="mw-list-item"><a href="/wiki/Speciaal:VerwijzingenNaarHier/Compiler" title="Lijst met alle pagina&#039;s die naar deze pagina verwijzen [j]" accesskey="j"><span>Links naar deze pagina</span></a></li><li id="t-recentchangeslinked" class="mw-list-item"><a href="/wiki/Speciaal:RecenteWijzigingenGelinkt/Compiler" rel="nofollow" title="Recente wijzigingen in pagina&#039;s waar deze pagina naar verwijst [k]" accesskey="k"><span>Gerelateerde wijzigingen</span></a></li><li id="t-upload" class="mw-list-item"><a href="//commons.wikimedia.org/wiki/Special:UploadWizard?uselang=nl" title="Bestanden uploaden [u]" accesskey="u"><span>Bestand uploaden</span></a></li><li id="t-specialpages" class="mw-list-item"><a href="/wiki/Speciaal:SpecialePaginas" title="Lijst met alle speciale pagina&#039;s [q]" accesskey="q"><span>Speciale pagina's</span></a></li><li id="t-permalink" class="mw-list-item"><a href="/w/index.php?title=Compiler&amp;oldid=67606304" title="Permanente koppeling naar deze versie van deze pagina"><span>Permanente koppeling</span></a></li><li id="t-info" class="mw-list-item"><a href="/w/index.php?title=Compiler&amp;action=info" title="Meer informatie over deze pagina"><span>Paginagegevens</span></a></li><li id="t-cite" class="mw-list-item"><a href="/w/index.php?title=Speciaal:Citeren&amp;page=Compiler&amp;id=67606304&amp;wpFormIdentifier=titleform" title="Informatie over hoe u deze pagina kunt citeren"><span>Deze pagina citeren</span></a></li><li id="t-urlshortener" class="mw-list-item"><a href="/w/index.php?title=Speciaal:UrlShortener&amp;url=https%3A%2F%2Fnl.wikipedia.org%2Fwiki%2FCompiler"><span>Verkorte URL verkrijgen</span></a></li><li id="t-urlshortener-qrcode" class="mw-list-item"><a href="/w/index.php?title=Speciaal:QrCode&amp;url=https%3A%2F%2Fnl.wikipedia.org%2Fwiki%2FCompiler"><span>QR-code downloaden</span></a></li> </ul> </div> </div> <div id="p-coll-print_export" class="vector-menu mw-portlet mw-portlet-coll-print_export" > <div class="vector-menu-heading"> Afdrukken/exporteren </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="coll-create_a_book" class="mw-list-item"><a href="/w/index.php?title=Speciaal:Boek&amp;bookcmd=book_creator&amp;referer=Compiler"><span>Boek aanmaken</span></a></li><li id="coll-download-as-rl" class="mw-list-item"><a href="/w/index.php?title=Speciaal:DownloadAsPdf&amp;page=Compiler&amp;action=show-download-screen"><span>Downloaden als PDF</span></a></li><li id="t-print" class="mw-list-item"><a href="/w/index.php?title=Compiler&amp;printable=yes" title="Printvriendelijke versie van deze pagina [p]" accesskey="p"><span>Afdrukversie</span></a></li> </ul> </div> </div> <div id="p-wikibase-otherprojects" class="vector-menu mw-portlet mw-portlet-wikibase-otherprojects" > <div class="vector-menu-heading"> In andere projecten </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li class="wb-otherproject-link wb-otherproject-commons mw-list-item"><a href="https://commons.wikimedia.org/wiki/Category:Compilers" hreflang="en"><span>Wikimedia Commons</span></a></li><li id="t-wikibase" class="wb-otherproject-link wb-otherproject-wikibase-dataitem mw-list-item"><a href="https://www.wikidata.org/wiki/Special:EntityPage/Q47506" title="Koppeling naar item in verbonden gegevensrepository [g]" accesskey="g"><span>Wikidata-item</span></a></li> </ul> </div> </div> </div> </div> </div> </div> </nav> </div> </div> </div> <div class="vector-column-end"> <div class="vector-sticky-pinned-container"> <nav class="vector-page-tools-landmark" aria-label="Paginahulpmiddelen"> <div id="vector-page-tools-pinned-container" class="vector-pinned-container"> </div> </nav> <nav class="vector-appearance-landmark" aria-label="Uiterlijk"> <div id="vector-appearance-pinned-container" class="vector-pinned-container"> <div id="vector-appearance" class="vector-appearance vector-pinnable-element"> <div class="vector-pinnable-header vector-appearance-pinnable-header vector-pinnable-header-pinned" data-feature-name="appearance-pinned" data-pinnable-element-id="vector-appearance" data-pinned-container-id="vector-appearance-pinned-container" data-unpinned-container-id="vector-appearance-unpinned-container" > <div class="vector-pinnable-header-label">Uiterlijk</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-appearance.pin">naar zijbalk verplaatsen</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-appearance.unpin">verbergen</button> </div> </div> </div> </nav> </div> </div> <div id="bodyContent" class="vector-body" aria-labelledby="firstHeading" data-mw-ve-target-container> <div class="vector-body-before-content"> <div class="mw-indicators"> </div> <div id="siteSub" class="noprint">Uit Wikipedia, de vrije encyclopedie</div> </div> <div id="contentSub"><div id="mw-content-subtitle"></div></div> <div id="mw-content-text" class="mw-body-content"><div class="mw-content-ltr mw-parser-output" lang="nl" dir="ltr"><p>Een <b>compiler</b> (<a href="/wiki/Nederlands" title="Nederlands">Nederlands</a> voor samensteller of opbouwer) is een <a href="/wiki/Computerprogramma" title="Computerprogramma">computerprogramma</a> dat code in de ene formele taal (de brontaal) vertaalt naar code in een andere formele taal (de doeltaal).<sup id="cite_ref-dragon_1-0" class="reference"><a href="#cite_note-dragon-1"><span class="cite-bracket">&#91;</span>1<span class="cite-bracket">&#93;</span></a></sup> Dit vertaalproces wordt <b>compilatie</b> of <b>compileren</b> genoemd. Het doel van compileren is veelal om code die in een hogere <a href="/wiki/Programmeertaal" title="Programmeertaal">programmeertaal</a> is geschreven te vertalen naar een programmeertaal op een lager abstractieniveau, vaak <a href="/wiki/Machinetaal" title="Machinetaal">machine</a>- of <a href="/wiki/Assembleertaal" title="Assembleertaal">assembleertaal</a>, maar ook <a href="/wiki/C_(programmeertaal)" title="C (programmeertaal)">C</a> of <a href="/wiki/JavaScript" title="JavaScript">JavaScript</a>. Voorbeelden van compilers zijn <a href="/wiki/C%2B%2B" title="C++">C++</a>-compilers, die in C++ geschreven broncode naar machinetaal vertalen, en de <a href="/wiki/TypeScript" title="TypeScript">TypeScript</a>-compiler, die TypeScript-programma's naar JavaScript vertaalt. </p><p>De invoer van de compiler wordt <a href="/wiki/Broncode" title="Broncode">broncode</a> en de uitvoer <a href="/wiki/Objectcode" title="Objectcode">objectcode</a> genoemd. Vaak is de objectcode machinetaal of machine-onafhankelijke <a href="/wiki/Bytecode" title="Bytecode">bytecode</a>, die door een computer of <a href="/wiki/Virtuele_machine" title="Virtuele machine">virtuele machine</a> kan worden uitgevoerd.<sup id="cite_ref-compile_2-0" class="reference"><a href="#cite_note-compile-2"><span class="cite-bracket">&#91;</span>2<span class="cite-bracket">&#93;</span></a></sup> Deze uitvoerbare instructies bestaan uit <a href="/wiki/Binaire_code" title="Binaire code">binaire gegevens</a>, die moeilijk voor een mens zijn te begrijpen. Compilers fungeren als het ware als een brug tussen de programmeur en de hardware.<sup id="cite_ref-bbc_grace_hopper_3-0" class="reference"><a href="#cite_note-bbc_grace_hopper-3"><span class="cite-bracket">&#91;</span>3<span class="cite-bracket">&#93;</span></a></sup> </p> <meta property="mw:PageProp/toc" /> <div class="mw-heading mw-heading2"><h2 id="Geschiedenis">Geschiedenis</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Compiler&amp;veaction=edit&amp;section=1" title="Bewerk dit kopje: Geschiedenis" class="mw-editsection-visualeditor"><span>bewerken</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Compiler&amp;action=edit&amp;section=1" title="De broncode bewerken van de sectie: Geschiedenis"><span>brontekst bewerken</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Vanaf de jaren veertig startten onafhankelijk een paar partijen met het bouwen van computers. Deze computers hadden echter functionele nadelen, zo had de <a href="/wiki/ENIAC" title="ENIAC">ENIAC</a> als enig doel om snelle berekeningen te maken van trajecten van granaten en raketten. <a href="/wiki/Hardware" title="Hardware">Hardware</a> en <a href="/wiki/Software" title="Software">software</a> waren eerst onlosmakelijk met elkaar verbonden waardoor telkens een nieuwe <a href="/wiki/Computer" title="Computer">computer</a> diende gebouwd te worden voor een specifiek doel.<sup id="cite_ref-first_compiler_4-0" class="reference"><a href="#cite_note-first_compiler-4"><span class="cite-bracket">&#91;</span>4<span class="cite-bracket">&#93;</span></a></sup> </p><p>In 1951 kregen computers meer mogelijkheden waarna <a href="/wiki/Grace_Hopper" title="Grace Hopper">Grace Hopper</a> als eerste inzag om <a href="/wiki/Subprogramma" title="Subprogramma">subroutines</a> in het geheugensysteem op te slaan. Het programmeren ging sneller maar de uitvoer ervan trager waardoor haar toenmalige werkgever <a href="/wiki/Remington_Rand" title="Remington Rand">Remington Rand</a> geen interesse vertoonde. </p><p>Omdat ieder bedrijf voor hun computer andere vereisten nodig had, begon Hopper in haar <a href="/wiki/Vrije_tijd" title="Vrije tijd">vrije tijd</a> te schrijven aan een compiler. Hoppers geschreven software was daarna in staat om geschreven programma's te vertalen naar machinetaal van een specifieke computer. Deze compiler werd toen onder meer gebruikt om complexe <a href="/wiki/Vergelijking_(wiskunde)" title="Vergelijking (wiskunde)">vergelijkingen</a> op te lossen door <a href="/wiki/Wiskundige" title="Wiskundige">wiskundigen</a>. Andere <a href="/wiki/Softwareontwikkelaar" title="Softwareontwikkelaar">programmeurs</a> begonnen haar stukjes code toe te sturen om die aan de <a href="/wiki/Bibliotheek_(informatica)" title="Bibliotheek (informatica)">bibliotheek</a> van de compiler toe te voegen. De hardware en software waren vanaf dan twee afzonderlijke componenten. Later zei Hopper: "Niemand had daar eerder aan gedacht want ze waren niet zo lui als ik." Uiteindelijk resulteerde haar compiler tot een van de eerste programmeertalen <a href="/wiki/COBOL" title="COBOL">COBOL</a>, waarvan Hopper de technische leiding had.<sup id="cite_ref-first_compiler_4-1" class="reference"><a href="#cite_note-first_compiler-4"><span class="cite-bracket">&#91;</span>4<span class="cite-bracket">&#93;</span></a></sup><sup id="cite_ref-bbc_grace_hopper_3-1" class="reference"><a href="#cite_note-bbc_grace_hopper-3"><span class="cite-bracket">&#91;</span>3<span class="cite-bracket">&#93;</span></a></sup> </p><p>In 1963 werd daarna de zelfhostende compiler ontwikkeld door Mike Levin en Tim Hart onder leiding van <a href="/wiki/John_McCarthy_(informaticus)" title="John McCarthy (informaticus)">John McCarthy</a>. De compiler werd opgebouwd met een <a href="/wiki/Bootstrappen_(compilers)" title="Bootstrappen (compilers)">bootstrapping</a>-systeem en zorgde ervoor dat een compiler zichzelf kon compileren. Dit werd voor het eerst in de programmeertaal <a href="/wiki/Lisp_(programmeertaal)" title="Lisp (programmeertaal)">LISP</a> geïntroduceerd.<sup id="cite_ref-5" class="reference"><a href="#cite_note-5"><span class="cite-bracket">&#91;</span>5<span class="cite-bracket">&#93;</span></a></sup> </p><p>Eind jaren 70 werd de <a href="/w/index.php?title=Portable_C_Compiler&amp;action=edit&amp;redlink=1" class="new" title="Portable C Compiler (de pagina bestaat niet)">Portable C Compiler</a> ontwikkeld door <a href="/w/index.php?title=Stephen_C._Johnson&amp;action=edit&amp;redlink=1" class="new" title="Stephen C. Johnson (de pagina bestaat niet)">Stephen C. Johnson</a>, een werknemer van <a href="/wiki/Bell_Labs" title="Bell Labs">Bell Labs</a>. Het was de eerste compiler die vanwege een aparte front- en backendimplementatie gemakkelijk naar verschillende <a href="/wiki/Besturingssystemen" class="mw-redirect" title="Besturingssystemen">besturingssystemen</a> en hardwarearchitecturen <a href="/wiki/Porteren" title="Porteren">geporteerd</a> kon worden. De compiler ontstond in 1977 toen er telkens aanpassingen noodzakelijk waren om de oorspronkelijke C-compiler, die voor de populaire <a href="/wiki/PDP-11" title="PDP-11">PDP-11</a> geschreven was, compatibel te maken met andere machines.<sup id="cite_ref-portable_compiler_6-0" class="reference"><a href="#cite_note-portable_compiler-6"><span class="cite-bracket">&#91;</span>6<span class="cite-bracket">&#93;</span></a></sup> In het nieuwe design van de Portable C Compiler werd tussen de front- en de backend een intermediaire representatie uitgewisseld. Hierdoor kon <a href="/w/index.php?title=S._I._Feldman&amp;action=edit&amp;redlink=1" class="new" title="S. I. Feldman (de pagina bestaat niet)">S. I. Feldman</a> een tweede frontend schrijven voor de programmeertaal <a href="/wiki/FORTRAN_77" class="mw-redirect" title="FORTRAN 77">FORTRAN 77</a>.<sup id="cite_ref-portable_compiler_6-1" class="reference"><a href="#cite_note-portable_compiler-6"><span class="cite-bracket">&#91;</span>6<span class="cite-bracket">&#93;</span></a></sup> Tegenwoordig wordt deze architectuur voor de meeste compilers gebruikt. </p> <div class="mw-heading mw-heading2"><h2 id="Onderdelen">Onderdelen</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Compiler&amp;veaction=edit&amp;section=2" title="Bewerk dit kopje: Onderdelen" class="mw-editsection-visualeditor"><span>bewerken</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Compiler&amp;action=edit&amp;section=2" title="De broncode bewerken van de sectie: Onderdelen"><span>brontekst bewerken</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Een moderne compiler bestaat doorgaans uit drie onderdelen, een frontend, een middle-end, en een backend, niet te verwarren met de frontend (<a href="/wiki/HTML-scripting" title="HTML-scripting">cliënt-side</a>) en backend (<a href="/wiki/Server-side_scripting" title="Server-side scripting">server-side</a>) bij web-applicaties. </p> <div class="mw-heading mw-heading3"><h3 id="Frontend">Frontend</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Compiler&amp;veaction=edit&amp;section=3" title="Bewerk dit kopje: Frontend" class="mw-editsection-visualeditor"><span>bewerken</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Compiler&amp;action=edit&amp;section=3" title="De broncode bewerken van de sectie: Frontend"><span>brontekst bewerken</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>De frontend van de compiler is specifiek voor een bepaalde <a href="/wiki/Programmeertaal" title="Programmeertaal">programmeertaal</a> geschreven. De frontend is verantwoordelijk voor het verwerken van de broncode. Dit bestaat vaak uit de volgende fases: </p> <ul><li>Lexicale analyse</li> <li>Parsen</li> <li>Semantische analyse</li> <li>Genereren van de interne representatie</li></ul> <p>De broncode wordt omgezet in een tussenrepresentatie en dan doorgestuurd. </p> <div class="mw-heading mw-heading3"><h3 id="Middle-end">Middle-end</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Compiler&amp;veaction=edit&amp;section=4" title="Bewerk dit kopje: Middle-end" class="mw-editsection-visualeditor"><span>bewerken</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Compiler&amp;action=edit&amp;section=4" title="De broncode bewerken van de sectie: Middle-end"><span>brontekst bewerken</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>De middle-end is zowel programmeertaal- als platformonafhankelijk. In de middle-end worden platformonafhankelijke optimalisaties op de tussenrepresentatie uitgevoerd, zoals het weghalen van code die nooit aangeroepen wordt en het vereenvoudigen van wiskundige formules. </p> <div class="mw-heading mw-heading3"><h3 id="Backend">Backend</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Compiler&amp;veaction=edit&amp;section=5" title="Bewerk dit kopje: Backend" class="mw-editsection-visualeditor"><span>bewerken</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Compiler&amp;action=edit&amp;section=5" title="De broncode bewerken van de sectie: Backend"><span>brontekst bewerken</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>De backend is specifiek voor een bepaald platform, bijvoorbeeld een specifieke processor in combinatie met een specifiek besturingssysteem. Voor iedere processor of besturingssysteem is een andere backend nodig. De backend is verantwoordelijk voor het genereren en optimaliseren van de objectcode. Dit kan uit de volgende fases bestaan: </p> <ul><li>Registerallocatie</li> <li>Codegeneratie</li> <li>Optimalisatie</li></ul> <div class="mw-heading mw-heading3"><h3 id="Modulariteit">Modulariteit</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Compiler&amp;veaction=edit&amp;section=6" title="Bewerk dit kopje: Modulariteit" class="mw-editsection-visualeditor"><span>bewerken</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Compiler&amp;action=edit&amp;section=6" title="De broncode bewerken van de sectie: Modulariteit"><span>brontekst bewerken</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Deze onderdelen kunnen meer of minder met elkaar verweven zijn. Bij sommige compilers zijn ze precies op elkaar afgestemd. Andere zijn <a href="/wiki/Modulair_ontwerpen" title="Modulair ontwerpen">modulair</a> opgebouwd zodat verschillende frontends met verschillende backend gecombineerd kunnen worden, waardoor verschillende programmeertalen voor verschillende platforms gecompileerd kunnen worden. Een voorbeeld hiervan is de <a href="/wiki/GNU_Compiler_Collection" title="GNU Compiler Collection">GNU Compiler Collection</a> (GCC). </p> <div class="mw-heading mw-heading2"><h2 id="Technische_architectuur">Technische architectuur</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Compiler&amp;veaction=edit&amp;section=7" title="Bewerk dit kopje: Technische architectuur" class="mw-editsection-visualeditor"><span>bewerken</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Compiler&amp;action=edit&amp;section=7" title="De broncode bewerken van de sectie: Technische architectuur"><span>brontekst bewerken</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Strikt gezien is compilatie het vertalen van <a href="/wiki/Expressie_(programmeren)" class="mw-redirect" title="Expressie (programmeren)">expressies</a> uit een <a href="/wiki/Formele_taal" title="Formele taal">formele taal</a> naar expressies van een ander formele taal of doeltaal. Het compileren gebeurt in verschillende fases. De frontend levert zijn resultaten af aan de backend in de vorm van een <a href="/wiki/Interne_representatie_(compiler)" class="mw-redirect" title="Interne representatie (compiler)">interne representatie</a> en een <a href="/wiki/Symbol_table" title="Symbol table">symbol table</a>.<sup id="cite_ref-7" class="reference"><a href="#cite_note-7"><span class="cite-bracket">&#91;</span>7<span class="cite-bracket">&#93;</span></a></sup> </p> <figure class="mw-halign-right" typeof="mw:File/Thumb"><a href="/wiki/Bestand:Compiler-nl.svg" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/commons/thumb/4/47/Compiler-nl.svg/350px-Compiler-nl.svg.png" decoding="async" width="350" height="395" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/4/47/Compiler-nl.svg/525px-Compiler-nl.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/4/47/Compiler-nl.svg/700px-Compiler-nl.svg.png 2x" data-file-width="834" data-file-height="942" /></a><figcaption>Een schema van de verschillende fases waaruit compilatie bestaat</figcaption></figure> <div class="mw-heading mw-heading3"><h3 id="Lexicale_analyse">Lexicale analyse</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Compiler&amp;veaction=edit&amp;section=8" title="Bewerk dit kopje: Lexicale analyse" class="mw-editsection-visualeditor"><span>bewerken</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Compiler&amp;action=edit&amp;section=8" title="De broncode bewerken van de sectie: Lexicale analyse"><span>brontekst bewerken</span></a><span class="mw-editsection-bracket">]</span></span></div> <div class="hatnote" style="margin-bottom:0.5em; padding:0.5em 0 0.5em 1.6em; font-size:95%;" role="note"><span typeof="mw:File"><span><img alt="" src="//upload.wikimedia.org/wikipedia/commons/thumb/e/ee/1rightarrow_blue.svg/15px-1rightarrow_blue.svg.png" decoding="async" width="15" height="15" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/e/ee/1rightarrow_blue.svg/23px-1rightarrow_blue.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/e/ee/1rightarrow_blue.svg/30px-1rightarrow_blue.svg.png 2x" data-file-width="480" data-file-height="480" /></span></span> <i>Zie <a href="/wiki/Lexicale_analyse" title="Lexicale analyse">Lexicale analyse</a> voor het hoofdartikel over dit onderwerp.</i></div> <p>De taak van een lexicale scanner in de compiler is om de invoer, die in de regel uit een rij <a href="/wiki/Karakter_(informatica)" title="Karakter (informatica)">karakters</a> bestaat, onder te verdelen in kleinere onderdelen, die <i>symbolen</i> of <i>tokens</i> genoemd worden. Deze tokens worden aan de <i><a href="/wiki/Parser" title="Parser">parser</a></i> doorgegeven. Een token is een object dat door de <i>parser</i> als eenheid herkend kan worden. Bij programmeertalen zijn de tokens de sleutelwoorden, de namen, de getallen, enzovoorts. </p> <div class="mw-heading mw-heading3"><h3 id="Parsen">Parsen</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Compiler&amp;veaction=edit&amp;section=9" title="Bewerk dit kopje: Parsen" class="mw-editsection-visualeditor"><span>bewerken</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Compiler&amp;action=edit&amp;section=9" title="De broncode bewerken van de sectie: Parsen"><span>brontekst bewerken</span></a><span class="mw-editsection-bracket">]</span></span></div> <div class="hatnote" style="margin-bottom:0.5em; padding:0.5em 0 0.5em 1.6em; font-size:95%;" role="note"><span typeof="mw:File"><span><img alt="" src="//upload.wikimedia.org/wikipedia/commons/thumb/e/ee/1rightarrow_blue.svg/15px-1rightarrow_blue.svg.png" decoding="async" width="15" height="15" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/e/ee/1rightarrow_blue.svg/23px-1rightarrow_blue.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/e/ee/1rightarrow_blue.svg/30px-1rightarrow_blue.svg.png 2x" data-file-width="480" data-file-height="480" /></span></span> <i>Zie <a href="/wiki/Parser" title="Parser">Parser</a> voor het hoofdartikel over dit onderwerp.</i></div> <p>Tijdens het <i>parsen</i> (ontleden) worden de tokens die het resultaat zijn van de lexicale analyse omgezet in een boomstructuur, een <a href="/wiki/Syntaxisboom" title="Syntaxisboom">syntaxisboom</a> genoemd. Dit gebeurt volgens regels die gedefinieerd zijn in de <a href="/wiki/Contextvrije_grammatica" title="Contextvrije grammatica">contextvrije grammatica</a> van de taal. </p><p>Als de parser een serie tokens tegenkomt die aan geen van de regels van de grammatica voldoet is er sprake van een <i>syntax error</i>, een syntaxisfout. In dat geval geeft de compiler een foutmelding. </p><p>Het resultaat van het parsen is een concrete syntaxisboom die de structuur van de geparsete broncode weergeeft. </p> <div class="mw-heading mw-heading3"><h3 id="Semantische_analyse">Semantische analyse</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Compiler&amp;veaction=edit&amp;section=10" title="Bewerk dit kopje: Semantische analyse" class="mw-editsection-visualeditor"><span>bewerken</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Compiler&amp;action=edit&amp;section=10" title="De broncode bewerken van de sectie: Semantische analyse"><span>brontekst bewerken</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>De semantische analyse wordt uitgevoerd op de afleidingsboom die het resultaat is van de hierboven beschreven parsen. </p><p>De parser definieert een mogelijke afleiding van een woord uit een formele taal in de zin van de contextvrije grammatica van die taal. Een dergelijke afleiding zegt echter niets over de correctheid van de afleiding met betrekking tot de contextgevoelige eigenschappen van de programmeertaal. Een voorbeeld is een regel dat een variabele gedeclareerd moet zijn voordat deze gebruikt wordt, of dat een bepaalde waarde alleen toegekend kan worden aan een variabele van het juiste type. </p><p>Een veelgebruikte methode tijdens de semantische analyse is attribuutevaluatie, waarbij semantische regels met een <a href="/wiki/Attributengrammatica" title="Attributengrammatica">attributengrammatica</a> worden vastgelegd. De attribuutevaluator van een compiler doorloopt nogmaals de gehele afleiding (soms meer dan één keer) om te bepalen of een afgeleid woord alle contextuele regels van de formele taal eerbiedigt. De attribuutevaluator beschouwt vaak deelbomen van de boom van de wortel naar de bladeren en weer terug en decoreert daarbij de boom met invoerinformatie (contextuele beperkingen op deelbomen die van boven uit de boom worden opgelegd – bijvoorbeeld "variabele X heeft hier geen waarde en mag dus niet uitgelezen worden") en uitvoerinformatie (contextuele informatie die bepaalt of een deelboom wel in de bovenliggende boom past – bijvoorbeeld "het type van de uitspraak die gevormd wordt door deze deelboom is A"). </p><p>Er wordt nog altijd veel werk verricht in de informatica aan attribuutevaluatorgeneratoren. Er zijn wel verschillende systemen die uit een beschrijving een attribuutevaluator kunnen genereren, maar er is nog geen algemene erkende oplosmethode. </p> <div class="mw-heading mw-heading3"><h3 id="Optimalisatie">Optimalisatie</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Compiler&amp;veaction=edit&amp;section=11" title="Bewerk dit kopje: Optimalisatie" class="mw-editsection-visualeditor"><span>bewerken</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Compiler&amp;action=edit&amp;section=11" title="De broncode bewerken van de sectie: Optimalisatie"><span>brontekst bewerken</span></a><span class="mw-editsection-bracket">]</span></span></div> <div class="hatnote" style="margin-bottom:0.5em; padding:0.5em 0 0.5em 1.6em; font-size:95%;" role="note"><span typeof="mw:File"><span><img alt="" src="//upload.wikimedia.org/wikipedia/commons/thumb/e/ee/1rightarrow_blue.svg/15px-1rightarrow_blue.svg.png" decoding="async" width="15" height="15" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/e/ee/1rightarrow_blue.svg/23px-1rightarrow_blue.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/e/ee/1rightarrow_blue.svg/30px-1rightarrow_blue.svg.png 2x" data-file-width="480" data-file-height="480" /></span></span> <i>Zie <a href="/wiki/Optimalisatie_(compiler)" title="Optimalisatie (compiler)">Optimalisatie (compiler)</a> voor het hoofdartikel over dit onderwerp.</i></div> <p>Het optimaliseren heeft een belangrijke taak om de snelheid zo efficiënt mogelijk te houden. Technieken die hierbij kunnen worden toegepast zijn onder andere het vereenvoudigen van wiskundige formules en het ontvouwen van lussen.<sup id="cite_ref-gábor_horváth_8-0" class="reference"><a href="#cite_note-gábor_horváth-8"><span class="cite-bracket">&#91;</span>8<span class="cite-bracket">&#93;</span></a></sup> </p> <div class="mw-heading mw-heading3"><h3 id="Codegeneratie">Codegeneratie</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Compiler&amp;veaction=edit&amp;section=12" title="Bewerk dit kopje: Codegeneratie" class="mw-editsection-visualeditor"><span>bewerken</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Compiler&amp;action=edit&amp;section=12" title="De broncode bewerken van de sectie: Codegeneratie"><span>brontekst bewerken</span></a><span class="mw-editsection-bracket">]</span></span></div> <div class="hatnote" style="margin-bottom:0.5em; padding:0.5em 0 0.5em 1.6em; font-size:95%;" role="note"><span typeof="mw:File"><span><img alt="" src="//upload.wikimedia.org/wikipedia/commons/thumb/e/ee/1rightarrow_blue.svg/15px-1rightarrow_blue.svg.png" decoding="async" width="15" height="15" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/e/ee/1rightarrow_blue.svg/23px-1rightarrow_blue.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/e/ee/1rightarrow_blue.svg/30px-1rightarrow_blue.svg.png 2x" data-file-width="480" data-file-height="480" /></span></span> <i>Zie <a href="/wiki/Codegenerator" title="Codegenerator">Codegenerator</a> voor het hoofdartikel over dit onderwerp.</i></div> <p>De <i>codegenerator</i> is de laatste stap van de compilatie. Dit onderdeel beschouwt nog een laatste maal de gedecoreerde afleidingsboom en genereert vertalingen in de doeltaal voor iedere deelboom van de afleidingsboom. Omdat alle deelbomen samen de gehele boom vormen, genereert dit proces de gehele vertaling. </p><p>De meest gebruikte methode bij codegeneratoren is dat de codegenerator naast drivercode bestaat uit een bibliotheek aan "standaardvertalingen" van stukken afleidingsboom, waarin gaten voorkomen. Deze gaten worden bij de echte codegeneratie gevuld met contextgevoelige informatie. Te denken valt dan aan de precieze naam van een variabele uit de invoer. Omdat codegeneratie afhankelijk is van contextgevoelige informatie en er voor attribuutevaluatie nog niet één echte oplossing is, is er ook nog niet één algemeen mechanisme voor generatie van codegeneratoren. </p><p>Daarnaast kampen onderzoekers naar codegeneratie ook met een ander probleem, namelijk dat er vaak veel meer dan één enkele manier is om een deelboom in een doeltaal te vertalen en niet iedere mogelijke vertaling altijd de beste is. Naar dit soort codeoptimalisatie wordt veel onderzoek gedaan. </p> <div class="mw-heading mw-heading2"><h2 id="Andere_translators">Andere translators</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Compiler&amp;veaction=edit&amp;section=13" title="Bewerk dit kopje: Andere translators" class="mw-editsection-visualeditor"><span>bewerken</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Compiler&amp;action=edit&amp;section=13" title="De broncode bewerken van de sectie: Andere translators"><span>brontekst bewerken</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Naast compilers zijn er naargelang het beoogde doel nog andere translators of vertalers beschikbaar.<sup id="cite_ref-translator_9-0" class="reference"><a href="#cite_note-translator-9"><span class="cite-bracket">&#91;</span>9<span class="cite-bracket">&#93;</span></a></sup> </p> <div class="mw-heading mw-heading3"><h3 id="Interpreter">Interpreter</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Compiler&amp;veaction=edit&amp;section=14" title="Bewerk dit kopje: Interpreter" class="mw-editsection-visualeditor"><span>bewerken</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Compiler&amp;action=edit&amp;section=14" title="De broncode bewerken van de sectie: Interpreter"><span>brontekst bewerken</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Bij een <a href="/wiki/Interpreter" title="Interpreter">interpreter</a> wordt wordt de code direct, regel voor regel, uitgevoerd zonder dat hij vooraf gecompileerd wordt. Hierbij zal de gevraagde broncode telkens opnieuw worden geïnterpreteerd als hij wordt aangeroepen. Een voordeel is dat elk apparaat waarvoor een interpreter beschikbaar is dezelfde code kan uitvoeren, maar het belangrijkste nadeel is dat het programma langzamer wordt uitgevoerd omdat het interpreteren tijd kost. </p> <div class="mw-heading mw-heading3"><h3 id="Assembler">Assembler</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Compiler&amp;veaction=edit&amp;section=15" title="Bewerk dit kopje: Assembler" class="mw-editsection-visualeditor"><span>bewerken</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Compiler&amp;action=edit&amp;section=15" title="De broncode bewerken van de sectie: Assembler"><span>brontekst bewerken</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Een <a href="/wiki/Assembler_(software)" title="Assembler (software)">assembler</a> zet <a href="/wiki/Assembleertaal" title="Assembleertaal">assembleertaal</a> om naar machinetaal. Assembleertaal is een <a href="/wiki/Mnemonic" title="Mnemonic">mnemonische</a> weergave van machinetaal, waardoor het voor programmeurs makkelijker te begrijpen is dan machinetaal zelf. Sommige compilers produceren assembleertaal in plaats van objectcode, of bieden een optie aan dat te doen. </p> <div class="mw-heading mw-heading3"><h3 id="Compilervarianten">Compilervarianten</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Compiler&amp;veaction=edit&amp;section=16" title="Bewerk dit kopje: Compilervarianten" class="mw-editsection-visualeditor"><span>bewerken</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Compiler&amp;action=edit&amp;section=16" title="De broncode bewerken van de sectie: Compilervarianten"><span>brontekst bewerken</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li>De meeste compilers doen hun werk voordat het programma wordt uitgevoerd. Dit wordt een <i>ahead-of-time</i> (AOT)-compiler genoemd. Een <i>just-in-time</i> (JIT)-compiler compileert het programma terwijl het programma wordt uitgevoerd. Functies worden dan gecompileerd op het moment dat ze voor de eerste keer worden aangeroepen. Een JIT-compiler combineert voordelen van compilers en interpreters<sup id="cite_ref-compilation_10-0" class="reference"><a href="#cite_note-compilation-10"><span class="cite-bracket">&#91;</span>10<span class="cite-bracket">&#93;</span></a></sup>, maar is ingewikkelder te schrijven en tijdens het compileren loopt het programma langzamer.</li> <li>AI-compiler: met <a href="/wiki/Kunstmatige_intelligentie" title="Kunstmatige intelligentie">kunstmatige intelligentie</a> via <a href="/wiki/Machinaal_leren" title="Machinaal leren">machinaal leren</a> om de optimalisatietijd te verkorten. Een voorbeeld is Milepost GCC van <a href="/wiki/IBM" title="IBM">IBM</a>.<sup id="cite_ref-11" class="reference"><a href="#cite_note-11"><span class="cite-bracket">&#91;</span>11<span class="cite-bracket">&#93;</span></a></sup></li> <li>Een <i>self-hosting compiler</i> is een compiler die in zijn eigen brontaal is geschreven, bijvoorbeeld een C++-compiler die in C++ is geschreven of een <a href="/wiki/Rust_(programmeertaal)" title="Rust (programmeertaal)">Rust</a>-compiler die in Rust is geschreven. Aangezien een self-hosting compiler zichzelf nodig heeft om gecompileerd te worden, is het ingewikkeld zo'n compiler naar een uitvoerbaar programma te vertalen. Dit proces wordt <a href="/wiki/Bootstrappen_(compilers)" title="Bootstrappen (compilers)">bootstrappen</a> genoemd.</li> <li>Een <i>cross-compiler</i> is een compiler wiens objectcode op een ander platform wordt uitgevoerd dan het platform waarop de compiler zelf wordt uitgevoerd. Veel mobiele applicaties worden bijvoorbeeld op een pc of laptop geschreven en gecompileerd en vervolgens op een mobiele telefoon uitgevoerd.</li> <li><a href="/wiki/Decompiler" title="Decompiler">Decompiler</a>: vertaalt een programma van een lagere programmeertaal naar een hogere programmeertaal.</li> <li>Native compiler: genereert een codeobject voor hetzelfde platform en besturingssysteem waarop het draait.</li> <li>Parallelle compiler: produceert een tussen compilatie en optimaliseert de abstracte syntaxisboom (AST) om te verspreiden naar meerdere processors.</li> <li>Source-to-source-compiler of transcompiler: converteert broncode van de ene hogere programmeertaal naar de andere hogere programmeertaal, vaak tot hetzelfde abstractieniveau. Dit wordt ook afgekort tot transpiler. Voorbeeld is <a href="/wiki/C%2B%2B" title="C++">C++</a> naar <a href="/wiki/Python_(programmeertaal)" title="Python (programmeertaal)">Python</a>.<sup id="cite_ref-12" class="reference"><a href="#cite_note-12"><span class="cite-bracket">&#91;</span>12<span class="cite-bracket">&#93;</span></a></sup></li></ul> <div class="mw-heading mw-heading2"><h2 id="Softwareontwikkeling">Softwareontwikkeling</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Compiler&amp;veaction=edit&amp;section=17" title="Bewerk dit kopje: Softwareontwikkeling" class="mw-editsection-visualeditor"><span>bewerken</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Compiler&amp;action=edit&amp;section=17" title="De broncode bewerken van de sectie: Softwareontwikkeling"><span>brontekst bewerken</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Compilers worden gebruikt binnen het <a href="/wiki/Programmeren_(computer)" title="Programmeren (computer)">programmeren</a>. Een tekst in de vorm van broncode in een bepaalde <a href="/wiki/Programmeertaal" title="Programmeertaal">programmeertaal</a> wordt omgezet, meestal naar een vorm waarin het direct door een computer kan worden uitgevoerd. Soms zal het naar een vorm worden omgezet zodanig dat het door een ander programma, een zogenaamde <a href="/wiki/Interpreter" title="Interpreter">interpreter</a> of runtime module, uitgevoerd kan worden. </p><p>Een <a href="/wiki/Softwareontwikkelaar" title="Softwareontwikkelaar">programmeur</a> schrijft de broncode van het programma in een <a href="/wiki/Teksteditor" title="Teksteditor">teksteditor</a> (een tekstbewerkingprogramma, meestal speciaal geschikt voor de te gebruiken programmeertaal) en slaat deze op in een <a href="/wiki/Bestand_(computer)" title="Bestand (computer)">bestand</a>. </p><p>Wanneer de programmeur de compiler gebruikt zal deze de broncode omzetten naar een uitvoerbaar bestand. De resulterende <i><a href="/wiki/Objectbestand" class="mw-redirect" title="Objectbestand">objectbestanden</a></i> (verwar object hier niet met <a href="/wiki/Objectori%C3%ABntatie" class="mw-redirect" title="Objectoriëntatie">objectoriëntatie</a>) moeten doorgaans dan nog <a href="/wiki/Linken" title="Linken">gelinkt</a> worden (samengevoegd met bijvoorbeeld opstartcode), waarna het programma klaar is voor uitvoering, de zogenaamde <i><a href="/wiki/Executable" title="Executable">executable</a></i>. </p><p>Tijdens het ontwikkelen worden <a href="/w/index.php?title=Statische_analyse&amp;action=edit&amp;redlink=1" class="new" title="Statische analyse (de pagina bestaat niet)">statische-analyse</a>-tools (zoals <a href="/w/index.php?title=Lint_(programma&amp;action=edit&amp;redlink=1" class="new" title="Lint (programma (de pagina bestaat niet)">Lint</a>) en <a href="/wiki/Debugger" title="Debugger">debuggers</a> gebruikt om fouten op te sporen en te verbeteren. </p><p>Vaak zijn alle door de softwareontwikkelaar gebruikte tools, zoals de editor, compiler en de debugger, geïntegreerd in een <a href="/wiki/Integrated_development_environment" title="Integrated development environment">geïntegreerde ontwikkelomgeving</a> (Engels: integrated development environment, IDE), waardoor de softwareontwikkelaar geen aparate programma's hoeft op te roepen. </p> <div class="mw-heading mw-heading2"><h2 id="Voor_-en_nadelen">Voor -en nadelen</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Compiler&amp;veaction=edit&amp;section=18" title="Bewerk dit kopje: Voor -en nadelen" class="mw-editsection-visualeditor"><span>bewerken</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Compiler&amp;action=edit&amp;section=18" title="De broncode bewerken van de sectie: Voor -en nadelen"><span>brontekst bewerken</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>De voor -en nadelen van een compiler worden vaak vergeleken met een interpreter. Beide hebben met elkaar gemeen, dat ze broncode transformeren naar uitvoerbare instructies. </p> <table class="wikitable" width="100%"> <tbody><tr> <th>Voordelen compiler </th> <th>Nadelen compiler </th></tr> <tr> <td>Snel en efficiënt bij het online draaien. Het kan ook goed debuggen met omvangrijke projecten. </td> <td>Tijdens onderhoud en hercompileren is vaak het gehele systeem bezet. </td></tr> <tr> <td>Kan zeer goed optimaliseren en inspelen op de hardwarearchitectuur. </td> <td>Het geheugencapaciteit is omvangrijker door zijn complex structuur. </td></tr> <tr> <td>Kan zeer goed overweg met grafische doeleinde zoals geavanceerde spellen en consoles. </td> <td>Kan enkel compileren via slimme apparaten. Bijvoorbeeld een eenvoudige rekenmachine kan niet compileren. </td></tr> <tr> <td>Het is goed te beveiligen en kan moeilijk uitgelezen worden omdat de broncode werd gecompileerd naar machinetaal. </td> <td>De broncode wordt echter in zijn geheel vertaald wat meer tijd en geld kost tijdens het updaten en stilleggen. </td></tr></tbody></table> <div class="mw-heading mw-heading2"><h2 id="Voorbeelden">Voorbeelden</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Compiler&amp;veaction=edit&amp;section=19" title="Bewerk dit kopje: Voorbeelden" class="mw-editsection-visualeditor"><span>bewerken</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Compiler&amp;action=edit&amp;section=19" title="De broncode bewerken van de sectie: Voorbeelden"><span>brontekst bewerken</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Voorbeelden van compilers (in alfabetische, geen chronologische volgorde): </p> <ul><li><a href="/w/index.php?title=Clang&amp;action=edit&amp;redlink=1" class="new" title="Clang (de pagina bestaat niet)">Clang</a> (<a href="/wiki/C_(programmeertaal)" title="C (programmeertaal)">C</a>, <a href="/wiki/C%2B%2B" title="C++">C++</a> en <a href="/wiki/Objective-C" title="Objective-C">Objective-C</a>)</li> <li><a href="/wiki/GNU_Compiler_Collection" title="GNU Compiler Collection">GNU Compiler Collection</a> (GCC, verschillende programmeertalen)</li> <li><a href="/wiki/Intel" title="Intel">Intel</a> C++ Compiler (<a href="/wiki/Linux" title="Linux">Linux</a>, <a href="/wiki/Windows" class="mw-redirect" title="Windows">Windows</a>)</li> <li><a href="/w/index.php?title=Microsoft_Visual_C%2B%2B&amp;action=edit&amp;redlink=1" class="new" title="Microsoft Visual C++ (de pagina bestaat niet)">Microsoft Visual C++</a> (MSVC)</li> <li><a href="/wiki/MinGW" title="MinGW">MinGW</a></li> <li><a href="/w/index.php?title=Roslyn_(compiler)&amp;action=edit&amp;redlink=1" class="new" title="Roslyn (compiler) (de pagina bestaat niet)">Roslyn</a> (<a href="/wiki/C_Sharp" title="C Sharp">C#</a> en <a href="/wiki/Visual_Basic" title="Visual Basic">Visual Basic</a>)</li></ul> <p>Voorbeelden van <a href="/wiki/Integrated_development_environment" title="Integrated development environment">integrated development environments</a> met ingebouwde compilers (software-ontwikkelomgeving): </p> <ul><li><a href="/wiki/C%2B%2BBuilder" title="C++Builder">C++Builder</a> (RAD)</li> <li><a href="/wiki/Delphi_(software)" title="Delphi (software)">Delphi</a> (RAD)</li> <li><a href="/wiki/Microsoft_Visual_Studio" title="Microsoft Visual Studio">Microsoft Visual Studio</a></li> <li><a href="/wiki/Turbo_Pascal" title="Turbo Pascal">Turbo Pascal</a></li></ul> <div class="mw-heading mw-heading2"><h2 id="Externe_links">Externe links</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Compiler&amp;veaction=edit&amp;section=20" title="Bewerk dit kopje: Externe links" class="mw-editsection-visualeditor"><span>bewerken</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Compiler&amp;action=edit&amp;section=20" title="De broncode bewerken van de sectie: Externe links"><span>brontekst bewerken</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li><style data-mw-deduplicate="TemplateStyles:r67679320">.mw-parser-output .taalaanduiding{font-family:sans-serif;font-size:85%;cursor:help;color:var(--color-subtle,#555)}.mw-parser-output .taalaanduiding span{border-bottom:1px dotted var(--color-subtle,#555)}</style><span class="taalaanduiding" title="Taal: Engels">(<span>en</span>) </span><a rel="nofollow" class="external text" href="http://www.epaperpress.com/lexandyacc/index.html"><i>A Compact Guide to Lex &amp; Yacc</i></a>, een korte, praktische introductie tot het schrijven van compilers met behulp van <a href="/wiki/Lex_(computerprogramma)" title="Lex (computerprogramma)">lex</a> en <a href="/wiki/Yacc" title="Yacc">yacc</a>.</li></ul> <div class="toccolours appendix" role="presentation" style="font-size:90%; margin:1em 0 -0.5em; clear:both;"> <div><span style="font-weight:bold">Voetnoten</span></div> <div class="reflist" style="list-style-type: decimal;"><div class="mw-references-wrap mw-references-columns"><ol class="references"> <li id="cite_note-dragon-1"><span class="mw-cite-backlink"><a href="#cite_ref-dragon_1-0">↑</a></span> <span class="reference-text"><span class="citation" id="CITEREF2007"><span style="font-variant:small-caps;">Alfred V. Aho, Monica S. Lam, Ravi Sethi en Jeffrey D. Ullman</span>&#32;(2007).&#32;<cite><i>Compilers: Principles, Techniques and Tools, Second Edition</i></cite>. Pearson Education.</span></span> </li> <li id="cite_note-compile-2"><span class="mw-cite-backlink"><a href="#cite_ref-compile_2-0">↑</a></span> <span class="reference-text"><span class="citation"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r67679320"><span class="taalaanduiding" title="Taal: Engels">(<span>en</span>) </span><a rel="nofollow" class="external text" href="https://www.lenovo.com/my/en/glossary/compile/">What is compile?</a>.&#32;<i>Glossary (Woordenlijst) <a href="/wiki/Lenovo" title="Lenovo">Lenovo</a></i>. </span></span> </li> <li id="cite_note-bbc_grace_hopper-3"><span class="mw-cite-backlink">↑ <a href="#cite_ref-bbc_grace_hopper_3-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-bbc_grace_hopper_3-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><span class="citation"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r67679320"><span class="taalaanduiding" title="Taal: Engels">(<span>en</span>) </span><a rel="nofollow" class="external text" href="https://www.bbc.com/news/business-38677721">Grace Hopper's compiler: Computing's hidden hero</a>.&#32;<i><a href="/wiki/BBC_News" title="BBC News">BBC News</a> about <a href="/wiki/BBC_World_Service" title="BBC World Service">BBC World Service</a> - 50 Things That Made the Modern Economy By <a href="/wiki/Tim_Harford" title="Tim Harford">Tim Harford</a> (episode "Compiler")</i>. </span></span> </li> <li id="cite_note-first_compiler-4"><span class="mw-cite-backlink">↑ <a href="#cite_ref-first_compiler_4-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-first_compiler_4-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><span class="citation"><a rel="nofollow" class="external text" href="https://www.standaard.be/cnt/dmf20141030_01351357">De erfgenamen van Ada Lovelace</a>.&#32;<i><a href="/wiki/De_Standaard" title="De Standaard">De Standaard</a></i>. </span></span> </li> <li id="cite_note-5"><span class="mw-cite-backlink"><a href="#cite_ref-5">↑</a></span> <span class="reference-text"><span class="citation" id="CITEREF1962"><span style="font-variant:small-caps;">Tim Hart en Mike Levin</span>,&#32;<a rel="nofollow" class="external text" href="ftp://publications.ai.mit.edu/ai-publications/pdf/AIM-039.pdf">AI Memo 39-The new compiler</a>&#32;(1962).&#32;<a rel="nofollow" class="external text" href="https://web.archive.org/web/20201213195043/ftp://publications.ai.mit.edu/ai-publications/pdf/AIM-039.pdf">Gearchiveerd</a> op 13-12-2020. </span></span> </li> <li id="cite_note-portable_compiler-6"><span class="mw-cite-backlink">↑ <a href="#cite_ref-portable_compiler_6-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-portable_compiler_6-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><span class="citation"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r67679320"><span class="taalaanduiding" title="Taal: Engels">(<span>en</span>) </span><a rel="nofollow" class="external text" href="https://www.bell-labs.com/usr/dmr/www/portpap.html">Portability of C Programs and the UNIX System</a>.&#32;<i>Originally published in The Bell System Technical Journal, Vol. 57, No. 6, Part 2, July-August 1978, pp 2021-2048 - <a href="/wiki/Bell_Labs" title="Bell Labs">Bell Labs</a> en <a href="/wiki/AT%26T" title="AT&amp;T">AT&amp;T</a></i>. </span></span> </li> <li id="cite_note-7"><span class="mw-cite-backlink"><a href="#cite_ref-7">↑</a></span> <span class="reference-text"><span class="citation" id="CITEREF2005"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r67679320"><span class="taalaanduiding" title="Taal: Engels">(<span>en</span>) </span><span style="font-variant:small-caps;"><a href="/wiki/Niklaus_Wirth" title="Niklaus Wirth">Niklaus Wirth</a></span>,&#32;<a rel="nofollow" class="external text" href="https://web.archive.org/web/20081003154409/http://www-old.oberon.ethz.ch/WirthPubl/CBEAll.pdf">Compiler Construction</a>&#32;(2005-11).&#32;Gearchiveerd op 3 Oct 2008 - 28 Jul 2019. </span></span> </li> <li id="cite_note-gábor_horváth-8"><span class="mw-cite-backlink"><a href="#cite_ref-gábor_horváth_8-0">↑</a></span> <span class="reference-text"><span class="citation" id="CITEREF2021"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r67679320"><span class="taalaanduiding" title="Taal: Engels">(<span>en</span>) </span><a rel="nofollow" class="external text" href="https://www.youtube.com/watch?v=eeS1WP7FK-A">Algorithms from a Compiler Developer's Toolbox - CppNow</a>.&#32;<i>Gábor Horváth in Live Conference - Werknemer bij <a href="/wiki/Microsoft" title="Microsoft">Microsoft</a>'s C++ Static en voordien <a href="/wiki/Google_LLC" title="Google LLC">Google LLC</a> en <a href="/wiki/Apple_Inc." title="Apple Inc.">Apple Inc.</a></i>&#32;(2021). </span></span> </li> <li id="cite_note-translator-9"><span class="mw-cite-backlink"><a href="#cite_ref-translator_9-0">↑</a></span> <span class="reference-text"><span class="citation"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r67679320"><span class="taalaanduiding" title="Taal: Engels">(<span>en</span>) </span><a rel="nofollow" class="external text" href="https://www.bbc.co.uk/bitesize/guides/z6x26yc/revision/5">Translators</a>.&#32;<i><a href="/wiki/British_Broadcasting_Corporation" title="British Broadcasting Corporation">BBC</a> Bitsize</i>. </span></span> </li> <li id="cite_note-compilation-10"><span class="mw-cite-backlink"><a href="#cite_ref-compilation_10-0">↑</a></span> <span class="reference-text"><span class="citation"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r67679320"><span class="taalaanduiding" title="Taal: Engels">(<span>en</span>) </span><a rel="nofollow" class="external text" href="https://www.lenovo.com/us/en/glossary/compilation/">What is compilation?</a>.&#32;<i>Glossary (Woordenlijst) <a href="/wiki/Lenovo" title="Lenovo">Lenovo</a></i>. </span></span> </li> <li id="cite_note-11"><span class="mw-cite-backlink"><a href="#cite_ref-11">↑</a></span> <span class="reference-text"><span class="citation"><a rel="nofollow" class="external text" href="https://tweakers.net/nieuws/61071/ibm-bouwt-zelf-lerende-compiler.html">IBM bouwt zelf-lerende compiler</a>.&#32;<i><a href="/wiki/Tweakers" title="Tweakers">Tweakers</a></i>. </span></span> </li> <li id="cite_note-12"><span class="mw-cite-backlink"><a href="#cite_ref-12">↑</a></span> <span class="reference-text"><span class="citation"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r67679320"><span class="taalaanduiding" title="Taal: Engels">(<span>en</span>) </span><span style="font-variant:small-caps;">Lachaux, Marie-Anne</span>;&#32;<span style="font-variant:small-caps;">Roziere, Baptiste; Chanussot, Lowik; Lample, Guillaume</span>,&#32;<a rel="nofollow" class="external text" href="https://ui.adsabs.harvard.edu/abs/2020arXiv200603511L/abstract">Unsupervised Translation of Programming Languages</a>. </span></span> </li> </ol></div></div> </div> <style data-mw-deduplicate="TemplateStyles:r67837862">.mw-parser-output .navigatie{position:relative;clear:both;overflow:auto;margin:1em auto -0.5em;padding:2px;background-color:var(--background-color-neutral-subtle,#f8f9fa);border:1px solid var(--border-color-base,#a2a9b1);text-align:center;font-size:87%}.mw-parser-output .navigatie-bewerken{margin-left:0.5em}.mw-parser-output .navigatie-bewerken .mw-ui-icon::before{background-size:0.9em}.mw-parser-output .navigatie-afb-links,.mw-parser-output .navigatie-afb-rechts{position:absolute}.mw-parser-output .navigatie-afb-rechts{right:2px}.mw-parser-output .navigatie-afb-groot{float:right;padding-left:0.5em}.mw-parser-output .navigatie-titel{background-color:#ddeef8;padding:2px 5.5em;font-weight:bold}.mw-parser-output .navigatie-inhoud{padding:0.5em}.mw-parser-output .navigatie-inhoud p:first-child{margin:0}.mw-parser-output .navigatie div[style*="background-color"],.mw-parser-output .navigatie div[style*="background"]{color:inherit}@media screen{html.skin-theme-clientpref-night .mw-parser-output .navigatie-titel{background-color:var(--background-color-interactive,#eaecf0)!important}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .navigatie-titel{background-color:var(--background-color-interactive,#eaecf0)!important}}</style> <div class="navigatie" role="navigation" aria-labelledby="Compiler"> <div class="navigatie-afb-links noviewer"><div class="navigatie-bewerken show-autoconfirmed nomobile"><span class="nowrap skin-invert-image"><span typeof="mw:File"><a href="/wiki/Sjabloon:Navigatie_compiler" title="Sjabloon:Navigatie compiler"><img src="//upload.wikimedia.org/wikipedia/commons/thumb/c/c4/OOjs_UI_icon_article-ltr.svg/16px-OOjs_UI_icon_article-ltr.svg.png" decoding="async" width="16" height="16" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/c/c4/OOjs_UI_icon_article-ltr.svg/24px-OOjs_UI_icon_article-ltr.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/c/c4/OOjs_UI_icon_article-ltr.svg/32px-OOjs_UI_icon_article-ltr.svg.png 2x" data-file-width="20" data-file-height="20" /></a></span> · <span class="ui-state-disabled" typeof="mw:File"><span title="Overleg sjabloon (de pagina bestaat niet)"><img alt="Overleg sjabloon (de pagina bestaat niet)" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/40/OOjs_UI_icon_speechBubbles-ltr.svg/16px-OOjs_UI_icon_speechBubbles-ltr.svg.png" decoding="async" width="16" height="16" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/4/40/OOjs_UI_icon_speechBubbles-ltr.svg/24px-OOjs_UI_icon_speechBubbles-ltr.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/4/40/OOjs_UI_icon_speechBubbles-ltr.svg/32px-OOjs_UI_icon_speechBubbles-ltr.svg.png 2x" data-file-width="20" data-file-height="20" /></span></span> · <span typeof="mw:File"><a href="//nl.wikipedia.org/w/index.php?title=Sjabloon:Navigatie_compiler&amp;action=edit" title="Sjabloon bewerken"><img alt="Sjabloon bewerken" src="//upload.wikimedia.org/wikipedia/commons/thumb/8/8a/OOjs_UI_icon_edit-ltr.svg/16px-OOjs_UI_icon_edit-ltr.svg.png" decoding="async" width="16" height="16" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/8/8a/OOjs_UI_icon_edit-ltr.svg/24px-OOjs_UI_icon_edit-ltr.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/8/8a/OOjs_UI_icon_edit-ltr.svg/32px-OOjs_UI_icon_edit-ltr.svg.png 2x" data-file-width="20" data-file-height="20" /></a></span></span></div></div> <div id="Compiler" class="navigatie-titel"><a class="mw-selflink selflink">Compiler</a></div> <div class="navigatie-inhoud"> <style data-mw-deduplicate="TemplateStyles:r67785531">.mw-parser-output .navigatie-tabel{margin:0 auto 0 auto;text-align:left}.mw-parser-output .navigatie-tabel .links{text-align:right}.mw-parser-output .navigatie-tabel .rechts{padding-left:0.5em}@media screen and (max-width:640px){.mw-parser-output .navigatie-tabel tr{display:grid;grid-template-columns:1fr;width:100%;margin-bottom:0.5em}.mw-parser-output .navigatie-tabel tr:last-of-type{margin-bottom:0}.mw-parser-output .navigatie-tabel .links{text-align:unset}.mw-parser-output .navigatie-tabel .rechts{padding:unset}}</style><table class="navigatie-tabel vatop" cellpadding="0" cellspacing="0" style=""><tbody><tr><td class="links" style=""><b>Onderdelen:</b></td><td class="rechts"><a href="/wiki/Lexicale_analyse" title="Lexicale analyse">lexicale analyse</a> · <a href="/wiki/Parser" title="Parser">parser</a> · <a href="/wiki/Typesysteem" title="Typesysteem">typesysteem</a> · <a href="/wiki/Interne_representatie" title="Interne representatie">interne representatie</a> · <a href="/wiki/Optimalisatie_(compiler)" title="Optimalisatie (compiler)">optimalisatie</a> · <a href="/wiki/Registerallocatie" title="Registerallocatie">registerallocatie</a> · <a href="/wiki/Symbol_table" title="Symbol table">symbol table</a></td></tr><tr><td class="links"><span class="nowrap"><b>Verwante software:</b></span></td><td class="rechts"><a href="/wiki/Assembler_(software)" title="Assembler (software)">assembler</a> · <a href="/wiki/Debugger" title="Debugger">debugger</a> · <a href="/wiki/Interpreter" title="Interpreter">interpreter</a> · <a href="/wiki/Linken" title="Linken">linker</a> · <a href="/wiki/Parsergenerator" title="Parsergenerator">parsergenerator</a></td></tr><tr><td class="links"><b>Termen:</b></td><td class="rechts"><a href="/wiki/Abstracte_syntaxis" title="Abstracte syntaxis">abstracte syntaxis</a> · <a href="/wiki/Attributengrammatica" title="Attributengrammatica">attributengrammatica</a> · <a href="/wiki/Broncode" title="Broncode">broncode</a> · <a href="/wiki/Bytecode" title="Bytecode">bytecode</a> · <a href="/wiki/Call_stack" title="Call stack">call stack</a> · <a href="/wiki/Just-in-time_compilatie" class="mw-redirect" title="Just-in-time compilatie">just-in-time compilatie</a> · <a href="/wiki/Machinetaal" title="Machinetaal">machinetaal</a> · <a href="/wiki/Reguliere_grammatica" title="Reguliere grammatica">reguliere grammatica</a> · <a href="/wiki/Syntaxisboom" title="Syntaxisboom">syntaxisboom</a> · <a href="/wiki/Three_address_code" title="Three address code">three address code</a></td></tr></tbody></table> </div></div> <!-- NewPP limit report Parsed by mw‐api‐int.codfw.main‐58b97c867d‐bnxfv Cached time: 20241125184922 Cache expiry: 2592000 Reduced expiry: false Complications: [show‐toc] CPU time usage: 0.202 seconds Real time usage: 0.237 seconds Preprocessor visited node count: 4483/1000000 Post‐expand include size: 22146/2097152 bytes Template argument size: 8166/2097152 bytes Highest expansion depth: 13/100 Expensive parser function count: 1/500 Unstrip recursion depth: 1/20 Unstrip post‐expand size: 14009/5000000 bytes Lua time usage: 0.024/10.000 seconds Lua memory usage: 975334/52428800 bytes Number of Wikibase entities loaded: 0/400 --> <!-- Transclusion expansion time report (%,ms,calls,template) 100.00% 174.365 1 -total 68.77% 119.919 1 Sjabloon:Appendix 67.08% 116.965 1 Sjabloon:References 45.53% 79.391 11 Sjabloon:Citeer_web 19.37% 33.781 1 Sjabloon:Navigatie_compiler 17.74% 30.926 1 Sjabloon:Navigatie 8.24% 14.370 1 Sjabloon:Navigatie/Tabel 8.19% 14.285 1 Sjabloon:Citeer_boek 6.14% 10.707 1 Sjabloon:En 5.05% 8.811 9 Sjabloon:Taalaanduiding --> <!-- Saved in parser cache with key nlwiki:pcache:260:|#|:idhash:dateformat=default and timestamp 20241125184922 and revision id 67606304. Rendering was triggered because: api-parse --> </div><!--esi <esi:include src="/esitest-fa8a495983347898/content" /> --><noscript><img src="https://login.wikimedia.org/wiki/Special:CentralAutoLogin/start?type=1x1" alt="" width="1" height="1" style="border: none; position: absolute;"></noscript> <div class="printfooter" data-nosnippet="">Overgenomen van "<a dir="ltr" href="https://nl.wikipedia.org/w/index.php?title=Compiler&amp;oldid=67606304">https://nl.wikipedia.org/w/index.php?title=Compiler&amp;oldid=67606304</a>"</div></div> <div id="catlinks" class="catlinks" data-mw="interface"><div id="mw-normal-catlinks" class="mw-normal-catlinks"><a href="/wiki/Categorie:Alles" title="Categorie:Alles">Categorie</a>: <ul><li><a href="/wiki/Categorie:Compiler" title="Categorie:Compiler">Compiler</a></li></ul></div></div> </div> </main> </div> <div class="mw-footer-container"> <footer id="footer" class="mw-footer" > <ul id="footer-info"> <li id="footer-info-lastmod"> Deze pagina is voor het laatst bewerkt op 31 mei 2024 om 08:48.</li> <li id="footer-info-copyright">De tekst is beschikbaar onder de licentie <a rel="nofollow" class="external text" href="//creativecommons.org/licenses/by-sa/4.0/deed.nl">Creative Commons Naamsvermelding/Gelijk delen</a>, er kunnen aanvullende voorwaarden van toepassing zijn. Zie de <a class="external text" href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Terms_of_Use/nl">gebruiksvoorwaarden</a> voor meer informatie.<br /> Wikipedia&#174; is een geregistreerd handelsmerk van de <a rel="nofollow" class="external text" href="https://www.wikimediafoundation.org">Wikimedia Foundation, Inc.</a>, een organisatie zonder winstoogmerk.</li> </ul> <ul id="footer-places"> <li id="footer-places-privacy"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Privacy_policy">Privacybeleid</a></li> <li id="footer-places-about"><a href="/wiki/Wikipedia">Over Wikipedia</a></li> <li id="footer-places-disclaimers"><a href="/wiki/Wikipedia:Algemeen_voorbehoud">Disclaimers</a></li> <li id="footer-places-wm-codeofconduct"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Universal_Code_of_Conduct">Gedragscode</a></li> <li id="footer-places-developers"><a href="https://developer.wikimedia.org">Ontwikkelaars</a></li> <li id="footer-places-statslink"><a href="https://stats.wikimedia.org/#/nl.wikipedia.org">Statistieken</a></li> <li id="footer-places-cookiestatement"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Cookie_statement">Cookieverklaring</a></li> <li id="footer-places-mobileview"><a href="//nl.m.wikipedia.org/w/index.php?title=Compiler&amp;mobileaction=toggle_view_mobile" class="noprint stopMobileRedirectToggle">Mobiele weergave</a></li> </ul> <ul id="footer-icons" class="noprint"> <li id="footer-copyrightico"><a href="https://wikimediafoundation.org/" class="cdx-button cdx-button--fake-button cdx-button--size-large cdx-button--fake-button--enabled"><img src="/static/images/footer/wikimedia-button.svg" width="84" height="29" alt="Wikimedia Foundation" loading="lazy"></a></li> <li id="footer-poweredbyico"><a href="https://www.mediawiki.org/" class="cdx-button cdx-button--fake-button cdx-button--size-large cdx-button--fake-button--enabled"><img src="/w/resources/assets/poweredby_mediawiki.svg" alt="Powered by MediaWiki" width="88" height="31" loading="lazy"></a></li> </ul> </footer> </div> </div> </div> <div class="vector-settings" id="p-dock-bottom"> <ul></ul> </div><script>(RLQ=window.RLQ||[]).push(function(){mw.config.set({"wgHostname":"mw-web.codfw.main-57488d5c7d-wpj67","wgBackendResponseTime":159,"wgPageParseReport":{"limitreport":{"cputime":"0.202","walltime":"0.237","ppvisitednodes":{"value":4483,"limit":1000000},"postexpandincludesize":{"value":22146,"limit":2097152},"templateargumentsize":{"value":8166,"limit":2097152},"expansiondepth":{"value":13,"limit":100},"expensivefunctioncount":{"value":1,"limit":500},"unstrip-depth":{"value":1,"limit":20},"unstrip-size":{"value":14009,"limit":5000000},"entityaccesscount":{"value":0,"limit":400},"timingprofile":["100.00% 174.365 1 -total"," 68.77% 119.919 1 Sjabloon:Appendix"," 67.08% 116.965 1 Sjabloon:References"," 45.53% 79.391 11 Sjabloon:Citeer_web"," 19.37% 33.781 1 Sjabloon:Navigatie_compiler"," 17.74% 30.926 1 Sjabloon:Navigatie"," 8.24% 14.370 1 Sjabloon:Navigatie/Tabel"," 8.19% 14.285 1 Sjabloon:Citeer_boek"," 6.14% 10.707 1 Sjabloon:En"," 5.05% 8.811 9 Sjabloon:Taalaanduiding"]},"scribunto":{"limitreport-timeusage":{"value":"0.024","limit":"10.000"},"limitreport-memusage":{"value":975334,"limit":52428800}},"cachereport":{"origin":"mw-api-int.codfw.main-58b97c867d-bnxfv","timestamp":"20241125184922","ttl":2592000,"transientcontent":false}}});});</script> <script type="application/ld+json">{"@context":"https:\/\/schema.org","@type":"Article","name":"Compiler","url":"https:\/\/nl.wikipedia.org\/wiki\/Compiler","sameAs":"http:\/\/www.wikidata.org\/entity\/Q47506","mainEntity":"http:\/\/www.wikidata.org\/entity\/Q47506","author":{"@type":"Organization","name":"Bijdragers aan Wikimedia-projecten"},"publisher":{"@type":"Organization","name":"Wikimedia Foundation, Inc.","logo":{"@type":"ImageObject","url":"https:\/\/www.wikimedia.org\/static\/images\/wmf-hor-googpub.png"}},"datePublished":"2002-03-19T17:11:00Z","dateModified":"2024-05-31T07:48:36Z"}</script> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10