<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="lt">
	<id>https://www.pipedija.com/index.php?action=history&amp;feed=atom&amp;title=Kompiliuojamos_kalbos</id>
	<title>Kompiliuojamos kalbos - Versijų istorija</title>
	<link rel="self" type="application/atom+xml" href="https://www.pipedija.com/index.php?action=history&amp;feed=atom&amp;title=Kompiliuojamos_kalbos"/>
	<link rel="alternate" type="text/html" href="https://www.pipedija.com/index.php?title=Kompiliuojamos_kalbos&amp;action=history"/>
	<updated>2026-07-10T20:53:35Z</updated>
	<subtitle>Šio puslapio versijų istorija projekte</subtitle>
	<generator>MediaWiki 1.37.1</generator>
	<entry>
		<id>https://www.pipedija.com/index.php?title=Kompiliuojamos_kalbos&amp;diff=62719&amp;oldid=prev</id>
		<title>Pikachu 21:45, 26 sausio 2023</title>
		<link rel="alternate" type="text/html" href="https://www.pipedija.com/index.php?title=Kompiliuojamos_kalbos&amp;diff=62719&amp;oldid=prev"/>
		<updated>2023-01-26T21:45:57Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;lt&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Ankstesnė versija&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;00:45, 27 sausio 2023 versija&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l8&quot;&gt;8 eilutė:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;8 eilutė:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Iš Algol išaugo dvi esminės kompiliuojamų kalbų grupės - [[Pascal]], kuri dar pertaisė Algol idėjas taip, kad gavosi vienu perėjimu kompiliuojama kalba, o taip pat [[C kalba]], kuri buvo tyčia pakankamai supaprastinta, kad nors ir buvo kompiliuojama dviem perėjimais, kompiliatoriai būdavo paprasti. Šių dviejų kalbų įtaka nulėmė daugumos vėlesnių kompiliuojamų, o taip pat ir daugelio nekompiliuojamų kalbų [[gramatika|gramatiką]].&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Iš Algol išaugo dvi esminės kompiliuojamų kalbų grupės - [[Pascal]], kuri dar pertaisė Algol idėjas taip, kad gavosi vienu perėjimu kompiliuojama kalba, o taip pat [[C kalba]], kuri buvo tyčia pakankamai supaprastinta, kad nors ir buvo kompiliuojama dviem perėjimais, kompiliatoriai būdavo paprasti. Šių dviejų kalbų įtaka nulėmė daugumos vėlesnių kompiliuojamų, o taip pat ir daugelio nekompiliuojamų kalbų [[gramatika|gramatiką]].&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Šiuo atžvilgiu ypatingai išskirtinė yra Pascal, nes kadaise ji, o paskui ir jos USCD Pascal realizacija nulėmė daugybės kitų kalbų ir kompiliatorių vystymąsi - buvo netgi periodas, kai apie 90% pasaulio kompiliatorių viename ar kitame kūrimo etape patys naudojo Pascal kompiliatorius. Pascal išskirtinumas - kad jau pačios kalbos pagrinduose buvo atsižvelgta į kompiliavimą taip, kad pavyktų programą sukompiliuoti vienu praėjimu: t.y., buvo griežta tipizacija, privaloma kintamųjų, funkcijų ir procedūrų išankstinė deklaracija, apribotas [[GOTO]] ir [[rekursija|rekursijos]] naudojimas ir panašiai. Dėl to kalba gavosi visai paprasta, bet nepaprastai efektyviai kompiliuojama ir optimizuojama, o jos įtaka labai pasijuto daugybėje kitų programavimo kalbų.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Kompiliuojamos kalbos yra daug pranašensės už [[interpretuojamos kalbos|interpretuojamas kalbas]], nes jomis parašytos programos po kompiliacijos gali būti vykdomos kaip tikros mašininės programos. Kitaip tariant, kompiliatorius vieną kartą gerokai padirbėjo, išvertė programą į realų [[mašininis kodas|mašininį kodą]] ir tada jau programa dirba dideliu greičiu. Praktiškai tai reiškia, kad netgi neefekytivai ir menkai optimizuojant kompiliuotos programos dirba bent 10-30 kartų greičiau už greičiausias interpretuojamas programas. Dažniausiai greičių skirtumas būna dar didesnis, iki šimtų ar tūkstnačių kartų.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Kompiliuojamos kalbos yra daug pranašensės už [[interpretuojamos kalbos|interpretuojamas kalbas]], nes jomis parašytos programos po kompiliacijos gali būti vykdomos kaip tikros mašininės programos. Kitaip tariant, kompiliatorius vieną kartą gerokai padirbėjo, išvertė programą į realų [[mašininis kodas|mašininį kodą]] ir tada jau programa dirba dideliu greičiu. Praktiškai tai reiškia, kad netgi neefekytivai ir menkai optimizuojant kompiliuotos programos dirba bent 10-30 kartų greičiau už greičiausias interpretuojamas programas. Dažniausiai greičių skirtumas būna dar didesnis, iki šimtų ar tūkstnačių kartų.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l14&quot;&gt;14 eilutė:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;16 eilutė:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Esminis kompiliuojamų kalbų trūkumas - jų reiklumas gramatikai. Šiomis kalbomis negalima rašyti belenkaip, tikintis, kad visvien kažkaip kažkas suveiks. Klaidos čia lemia daug, o kai kada būna ir nepastebimos, išlendančios tik ilgiau ta kalba parašytą programą naudojant. Taigi, toli gražu ne visi programuotojai šias kalbas mėgsta ir toli gražu ne visiems uždaviniams šios kalbos gerai tinka.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Esminis kompiliuojamų kalbų trūkumas - jų reiklumas gramatikai. Šiomis kalbomis negalima rašyti belenkaip, tikintis, kad visvien kažkaip kažkas suveiks. Klaidos čia lemia daug, o kai kada būna ir nepastebimos, išlendančios tik ilgiau ta kalba parašytą programą naudojant. Taigi, toli gražu ne visi programuotojai šias kalbas mėgsta ir toli gražu ne visiems uždaviniams šios kalbos gerai tinka.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Svarbu neužmiršti, kad kai kurių interpretuojamų kalbų kūrėjai visiškai melagingai aiškina, kad jų kalbos esą yra kompiliuojamos, nors niekas tenai nėra kompiliuojama, o tiesiog sutransliuotas [[pseudokodas]] prikabinamas prie interpretatoriaus ir pasakoma, kad čia binarinis vykdomasis failas. Tai tokių kalbų rimtai vertinti neverta, nes nesąmonės nenusipelno jūsų dėmesio. Tiesa, norint atskirti tas kompiliuojamas kalbas nuo interpretuojamų, kartais reikia šiek tiek pasiaiškinti apie realizacijas, nes kartais būna nemažų makaronų. Kaip pvz., paskaitę kokią nors [[Vikipedija|Vikipediją]] galite atrasti kliedesių apie tai, kad kompiliuoamos kalbos esą yra kokia nors ActionScript, Basic ar Java, nors nei viena iš jų nėra kompiliuojama.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Visgi naujesniais laikais griežtą ribą tarp kompiliuojamų ir interpretuojamų kalbų nustatyti sunku, nes pvz., Java kompiliuojama į pseudokodą, o [[C plus plus]] gali naudoti kokį nors objektų brokerį, kuris faktiškai veikia kaip specialus interpretatorius. Taigi, visai jau griežtos ribos nebelieka, nes kai kurios realizacijos būna truputį hibridinės. Vėlgi, faktiškai visos kompiliuojamos programavimo kalbos turi ir principines interpretavimo galimybes, tad gali būti vykdomos ir interpretuojant.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;== Populiarios kompiliuojamos programavimo kalbos ==&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Tarp žinomesnių pilnai kompiliuojamų programavimo kalbų yra šios:&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* [[Fortran]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* [[Pascal]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* [[Ada]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* [[C kalba]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* [[C++]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* [[Modula]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* [[Objective C]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* [[Oberon]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Programavimo kalbos]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Programavimo kalbos]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key pipedija_1_37-mediawiki_:diff::1.12:old-62717:rev-62719 --&gt;
&lt;/table&gt;</summary>
		<author><name>Pikachu</name></author>
	</entry>
	<entry>
		<id>https://www.pipedija.com/index.php?title=Kompiliuojamos_kalbos&amp;diff=62717&amp;oldid=prev</id>
		<title>Pikachu: Pikachu pervadino puslapį Kompiliuojama kalba į Kompiliuojamos kalbos</title>
		<link rel="alternate" type="text/html" href="https://www.pipedija.com/index.php?title=Kompiliuojamos_kalbos&amp;diff=62717&amp;oldid=prev"/>
		<updated>2023-01-26T21:30:15Z</updated>

		<summary type="html">&lt;p&gt;Pikachu pervadino puslapį &lt;a href=&quot;/index.php/Kompiliuojama_kalba&quot; class=&quot;mw-redirect&quot; title=&quot;Kompiliuojama kalba&quot;&gt;Kompiliuojama kalba&lt;/a&gt; į &lt;a href=&quot;/index.php/Kompiliuojamos_kalbos&quot; title=&quot;Kompiliuojamos kalbos&quot;&gt;Kompiliuojamos kalbos&lt;/a&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;lt&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Ankstesnė versija&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;00:30, 27 sausio 2023 versija&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;lt&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(Jokio skirtumo)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Pikachu</name></author>
	</entry>
	<entry>
		<id>https://www.pipedija.com/index.php?title=Kompiliuojamos_kalbos&amp;diff=62715&amp;oldid=prev</id>
		<title>Pikachu: Naujas puslapis: '''Kompiliuojama kalba''' - tai tokia programavimo kalba, kuri gali būti visiškai pilnavertiškai išverčiama į mašininį kodą taip, kad neliktų interpretuojamų fragmentų. Kitaip tariant, kompiliuojama kalba parašytą programą galima automatinėmis priemonėmis išversti į logiškai tapatų asemblerio kodą.  Automatiškai išversti programą į kokį nors mašininį kodą ne visada paprasta, nes pvz., koks nors kintamasis...</title>
		<link rel="alternate" type="text/html" href="https://www.pipedija.com/index.php?title=Kompiliuojamos_kalbos&amp;diff=62715&amp;oldid=prev"/>
		<updated>2023-01-26T17:36:48Z</updated>

		<summary type="html">&lt;p&gt;Naujas puslapis: &amp;#039;&amp;#039;&amp;#039;Kompiliuojama kalba&amp;#039;&amp;#039;&amp;#039; - tai tokia &lt;a href=&quot;/index.php/Programavimo_kalba&quot; class=&quot;mw-redirect&quot; title=&quot;Programavimo kalba&quot;&gt;programavimo kalba&lt;/a&gt;, kuri gali būti visiškai pilnavertiškai išverčiama į &lt;a href=&quot;/index.php/Ma%C5%A1ininis_kodas&quot; title=&quot;Mašininis kodas&quot;&gt;mašininį kodą&lt;/a&gt; taip, kad neliktų interpretuojamų fragmentų. Kitaip tariant, kompiliuojama kalba parašytą programą galima automatinėmis priemonėmis išversti į logiškai tapatų &lt;a href=&quot;/index.php/Asembleris&quot; title=&quot;Asembleris&quot;&gt;asemblerio&lt;/a&gt; kodą.  Automatiškai išversti programą į kokį nors mašininį kodą ne visada paprasta, nes pvz., koks nors kintamasis...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Naujas puslapis&lt;/b&gt;&lt;/p&gt;&lt;div&gt;'''Kompiliuojama kalba''' - tai tokia [[programavimo kalba]], kuri gali būti visiškai pilnavertiškai išverčiama į [[mašininis kodas|mašininį kodą]] taip, kad neliktų interpretuojamų fragmentų. Kitaip tariant, kompiliuojama kalba parašytą programą galima automatinėmis priemonėmis išversti į logiškai tapatų [[asembleris|asemblerio]] kodą.&lt;br /&gt;
&lt;br /&gt;
Automatiškai išversti programą į kokį nors mašininį kodą ne visada paprasta, nes pvz., koks nors kintamasis vienoje vietoje gali būti naudojamas kaip skaičius, kitoje - kaip tekstas, o trečioje - kaip dar kas nors. Gali būti sunkumų ir verčiant programos kodą, nes pvz., kokios nors kalbos konstrukcijos gali tiesiog neturėti išverčiamo ekvivalento. &lt;br /&gt;
&lt;br /&gt;
Kaip pvz., itin sunkus, visiškai nekompiliuojamas atvejis yra &amp;quot;eval&amp;quot; tipo funkcija, kuri leidžia įvykdyti ta pačia kalba parašytą kodą. Jei kodas yra iš anksto neapibrėžtas, o generuojamas programos vykdymo metu, tai [[kompiliatorius]] iš principo negali žinoti, koks tenai bus kodas, o tai reiškia, kad negali ir sukompiliuoti jo į mašininį kodą. Kitaip tariant, toksai fragmentas lieka nekompiliuojamu, o tiktai interpretuojamu.&lt;br /&gt;
&lt;br /&gt;
Kadangi kompiliavimui keliama daug įvairių reikalavimų, kompiliuojamos kalbos paprastai turi daug visokių apribojimų ir smarkiai griežtesnę [[sintaksė|sintaksę]]. Šiais laikais klasikinėmis kompiliuojamomis kalbomis laikomos [[Algol]] tipo kalbos, kurios išsprendė daugelį ankstesnių programavimo kalbų problemų. Nors kompiliuojamų kalbų buvo ir iki tol, visgi Algol ištaisė tiek bėdų, kad faktiškai viskas, kas kompiliuojama, istoriškai dabar jau siejasi su šia kalba.&lt;br /&gt;
&lt;br /&gt;
Iš Algol išaugo dvi esminės kompiliuojamų kalbų grupės - [[Pascal]], kuri dar pertaisė Algol idėjas taip, kad gavosi vienu perėjimu kompiliuojama kalba, o taip pat [[C kalba]], kuri buvo tyčia pakankamai supaprastinta, kad nors ir buvo kompiliuojama dviem perėjimais, kompiliatoriai būdavo paprasti. Šių dviejų kalbų įtaka nulėmė daugumos vėlesnių kompiliuojamų, o taip pat ir daugelio nekompiliuojamų kalbų [[gramatika|gramatiką]].&lt;br /&gt;
&lt;br /&gt;
Kompiliuojamos kalbos yra daug pranašensės už [[interpretuojamos kalbos|interpretuojamas kalbas]], nes jomis parašytos programos po kompiliacijos gali būti vykdomos kaip tikros mašininės programos. Kitaip tariant, kompiliatorius vieną kartą gerokai padirbėjo, išvertė programą į realų [[mašininis kodas|mašininį kodą]] ir tada jau programa dirba dideliu greičiu. Praktiškai tai reiškia, kad netgi neefekytivai ir menkai optimizuojant kompiliuotos programos dirba bent 10-30 kartų greičiau už greičiausias interpretuojamas programas. Dažniausiai greičių skirtumas būna dar didesnis, iki šimtų ar tūkstnačių kartų.&lt;br /&gt;
&lt;br /&gt;
Tiesa, šitoks greičių skirtumas būna su tam tikromis išlygomis: interpretuojamose programose naudojamos interpretatorių funkcijos dažniai būna kompiliuotos, tad jų vykdymo greitis nesiskiria nuo kompiliuotos programos. Taigi, toksai greičio palyginimas tinka tiktai būtent pačiam interpretuojamam ir kompiliuojamam kodui, o ne iškviečiamoms funkcijoms palyginti. Jei esminę vykdomo kodo dalį sudaro iškviečiamos funkcijos, kompiliuojamų ir interpretuojamų programų greitis gali likti praktiškai vienodas.&lt;br /&gt;
&lt;br /&gt;
Esminis kompiliuojamų kalbų trūkumas - jų reiklumas gramatikai. Šiomis kalbomis negalima rašyti belenkaip, tikintis, kad visvien kažkaip kažkas suveiks. Klaidos čia lemia daug, o kai kada būna ir nepastebimos, išlendančios tik ilgiau ta kalba parašytą programą naudojant. Taigi, toli gražu ne visi programuotojai šias kalbas mėgsta ir toli gražu ne visiems uždaviniams šios kalbos gerai tinka.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Programavimo kalbos]]&lt;/div&gt;</summary>
		<author><name>Pikachu</name></author>
	</entry>
</feed>