Програмски језик — разлика између измена

Садржај обрисан Садржај додат
Autobot (разговор | доприноси)
м harvardski nacin citiranja
Ред 40:
: [[Теорија израчунљивости]] класификује језике по прорачунима које су способни да изразе. У свим језицима који су потпуни у [[Turing completeness|Тјуринговом]] смислу може се имплементирати исти сет [[алгоритам]]а. [[SQL-92|-{ANSI/ISO SQL-92}-]] и [[Charity (programming language)|-{''Charity''}-]] су примери језика који нису Тјурингов потпуни, мада се често називају програмским језицима.<ref>{{cite web|author=Digital Equipment Corporation| title = Information Technology - Database Language SQL (Proposed revised text of DIS 9075)| url = http://www.contrib.andrew.cmu.edu/~shadow/sql/sql1992.txt| work = ISO/IEC 9075:1992, Database Language SQL| accessdate=29. 6. 2006.|url-status=live| archiveurl = https://web.archive.org/web/20060621035823/http://www.contrib.andrew.cmu.edu/%7Eshadow/sql/sql1992.txt| archivedate=21. 6. 2006.|df=dmy-all}}</ref><ref>{{cite web|author=The Charity Development Group| title = The CHARITY Home Page| url = http://pll.cpsc.ucalgary.ca/charity1/www/home.html|date=December 1996| accessdate=29. 6. 2006.|url-status=live| archiveurl = https://web.archive.org/web/20060718010551/http://pll.cpsc.ucalgary.ca/charity1/www/home.html| archivedate=18. 7. 2006.|df=dmy-all}}, ''Charity is a categorical programming language...'', ''All Charity computations terminate.''</ref>
 
[[Jezik za obeležavanje|Језици за обележавање]] као што су -{[[XML]]}-, -{[[HTML]]}-, или -{[[troff]]}-, и који дефинишу [[Data model|структуиране податке]], обично се не сматрају програмским језицима.<ref>[http://www.w3.org/XML/1999/XML-in-10-points.html XML in 10 points] {{webarchive| url = https://web.archive.org/web/20090906083110/http://www.w3.org/XML/1999/XML-in-10-points.html |date=6. 9. 2009. }} [[W3C]], 1999, ''XML is not a programming language.''</ref>{{sfn|Powell|2003|p=25}} Програмски језици могу, међутим, да имају заједничку синтаксу са језицима за обележавање, ако је рачунарска семантика дефининсана. -{[[XSLT]]}-, на пример, је [[Turing completeness|Тјурингов комплетан]] -{XML}- дијалекат.<ref>{{cite web|url=http://www.ibm.com/developerworks/library/x-xslt/| title = What kind of language is XSLT?| publisher = IBM.com| accessdate=3. 12. 2010.|url-status=live| archiveurl = https://web.archive.org/web/20110511192712/http://www.ibm.com/developerworks/library/x-xslt/| archivedate=11. 5. 2011.|df=dmy-all}}</ref><ref>{{cite web|url=http://msdn.microsoft.com/en-us/library/ms767587(VS.85).aspx| title = XSLT is a Programming Language| publisher = Msdn.microsoft.com| accessdate=3. 12. 2010.|url-status=live| archiveurl = https://web.archive.org/web/20110203015119/http://msdn.microsoft.com/en-us/library/ms767587(VS.85).aspx| archivedate=3. 2. 2011.|df=dmy-all}}</ref>{{sfn|Scott|2006|pp=802}} Штавише, -{[[LaTeX]]}-, који се углавном користи за структуирање докумената, исто тако садржи пун Тјурингов комплетан подскуп.<ref name="Oetiker et Al., 2017">{{cite web|last=Oetiker| first = Tobias| last2=Partl| first2 = Hubert| last3=Hyna| first3 = Irene| last4=Schlegl| first4 = Elisabeth| title = The Not So Short Introduction to LATEX 2ε| url = https://tobi.oetiker.ch/lshort/lshort.pdf| website = tobi.oetiker.ch| accessdate=16. 4. 2017.| format = Version 5.06|year=2016|url-status=live| archiveurl = https://web.archive.org/web/20170314015536/https://tobi.oetiker.ch/lshort/lshort.pdf| archivedate=14. 3. 2017.|df=dmy-all|pages=1–157}}</ref>{{sfn|Syropoulos|Tsolomitis|Sofroniou|2003|pp=213}}
 
Термин ''рачунарски језик'' се понекад користи синонимно са програмским језиком.<ref>Robert A. Edmunds, The Prentice-Hall standard glossary of computer terminology, Prentice-Hall. {{page|year=1985|id=|pages=91}}</ref> Међутим, употреба ова два термина варира међу ауторима, а постоје разлике и у погледу њиховог тачног опсега. Један облик употребе описује програмске језике као подскуп рачунарских језика.<ref>Pascal Lando, Anne Lapujade, Gilles Kassel, and Frédéric Fürst, ''[http://home.mis.u-picardie.fr/~site-ic/site/IMG/pdf/ICSOFT2007_final.pdf Towards a General Ontology of Computer Programs] {{webarchive| url = https://web.archive.org/web/20150707093557/http://home.mis.u-picardie.fr/~site-ic/site/IMG/pdf/ICSOFT2007_final.pdf |date=7. 7. 2015. }}'', [http://dblp.uni-trier.de/db/conf/icsoft/icsoft2007-1.html ICSOFT 2007] {{webarchive| url = https://web.archive.org/web/20100427063709/http://dblp.uni-trier.de/db/conf/icsoft/icsoft2007-1.html |date=27. 4. 2010. }}. pp. 163–170</ref> У том смислу, језици који се користе у рачунарству са различитим циљевима него што су изражавања рачунарких програма генерално су наменски дизајнирани рачунарски језици. На пример, језици за обележавање се понекад називају рачунарским језицима да би се нагласило да они нису намењени да се користе за програмирање.<ref>S.K. Bajpai, ''Introduction To Computers And C Programming'', New Age International. {{page|year=2007|isbn=978-81-224-1379-3|pages=346}}</ref>
 
Једно алтернативно гледиште на употребу језика сматра програмске језике теоретским констрактима за програмирање апстрактних машина, а рачунарске језике њиховим подскупом који се извршава на физичким рачунарима, који имају коначне хардверске ресурсе.<ref>R. Narasimahan,. ''Programming Languages and Computers: A Unified Metatheory''. pp. 189--247 in Franz Alt, Morris Rubinoff (eds.) Advances in computers, Volume 8. {{page1|location=|publisher=Academic Press|year=1994|isbn=978-0-12-012108-3|pages=215}}: "[...] the model [...] for computer languages differs from that [...] for programming languages in only two respects. In a computer language, there are only finitely many names--or registers--which can assume only finitely many values--or states--and these states are not further distinguished in terms of any other attributes. [author's footnote:] This may sound like a truism but its implications are far reaching. For example, it would imply that any model for programming languages, by fixing certain of its parameters or features, should be reducible in a natural way to a model for computer languages."</ref> [[John C. Reynolds|Џон Рејнолдс]] наглашава да су језици са [[formal specification|формалном спецификацијом]] у истој мери програмски језици колико су и језици намењени извршавању. Он исто тако сматра да су текстуални, па и чак графички уноси, који утичу на понашање рачунара програмски језици, упркос чињенице да они обично нису Тјуриншки комплетни, и напомиње да је игнорисање концепата програмских језика разлог постојања многих недостатака у улазним форматима.<ref>John C. Reynolds, ''Some thoughts on teaching programming and programming languages'', [[SIGPLAN]] Notices, Volume 43, Issue 11, November. (2008). pp. 109.</ref>
 
== Машински и асемблерски језици ==