Език за програмиране: Разлика между версии

Изтрито е съдържание Добавено е съдържание
м замяна на месец от англ. на бг.
Ред 14:
* ''Абстракции:'' Езиците за програмиране обикновено съдържат [[абстракция (компютърни науки)|абстракции]] за дефинирането и работата със структури от данни или за управление на потока на изпълнение. Практическата необходимост, един език за програмиране да поддържа адекватни абстракции се изразява чрез принципа на абстракцията;<ref>David A. Schmidt, ''The structure of typed programming languages'', MIT Press, 1994, ISBN 0262193493, p. 32</ref> този принцип понякога е формулиран като препоръка към програмиста, да използва подобни абстракции по подходящият начин.<ref>{{cite book|last=Pierce|first=Benjamin|title=Types and Programming Languages|publisher=MIT Press|year=2002|isbn=0-262-16209-1|page=339}}</ref>
 
* ''Изразителна сила:'' Теорията на алгоритмите, класифицира езиците на база изчисленията, които са способни да изразят. Всички [[Тюрингова пълнота|Тюрингови]] езици могат да реализират един и същ набор от алгоритми. [[SQL|ANSI/ISO SQL]] и [[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 | dateformat=mdy | accessdate=June 29, юни 2006}}</ref><ref>{{cite web|author=The Charity Development Group|title=The CHARITY Home Page | url=http://pll.cpsc.ucalgary.ca/charity1/www/home.html | month=December|year=1996|accessdate=2006-06-29}}, ''Charity is a categorical programming language...'', ''All Charity computations terminate.''</ref>
 
[[Маркиращ език|Маркиращи езици]] като [[XML]], [[HTML]] или troff, които дефинират [[структурирани данни]], не се считат за езици за програмиране.<ref>[http://www.w3.org/XML/1999/XML-in-10-points.html XML in 10 points] [[W3C]], 1999, ''XML is not a programming language.''</ref><ref>{{cite book|last=Powell|first=Thomas|title=HTML & XHTML: the complete reference|publisher=McGraw-Hill|year=2003|isbn=0-07-222-942-X|page=25|quote=''HTML is not a programming language.''}}</ref><ref>{{cite book|last1=Dykes|first1=Lucinda|first2=Ed|last2=Tittel|title=XML For Dummies, 4th Edition|publisher=Wiley|year=2005|isbn=0-7645-8845-1|page=20|quote=''...it's a markup language, not a programming language.''}}</ref> Все пак, езиците за програмиране могат да имат подобен синтаксис с маркиращите езици, ако е дефинирана семантиката. [[XSLT]] например, е Тюрингов диалект на XML. <ref>http://www.ibm.com/developerworks/library/x-xslt/</ref><ref>http://msdn.microsoft.com/en-us/library/ms767587(VS.85).aspx</ref><ref>{{cite book|last=Scott|first=Michael|title=Programming Language Pragmatics|publisher=[[Morgan Kaufmann]]|year=2006|isbn=0-12-633951-1|page=802|quote=''XSLT, though highly specialized to the transformation of XML, is a Turing-complete programming language.''}}</ref> Освен това, [[LaTeX]], който се използва предимно за структуриране на документи, съдържа и Тюрингово подмножество.<ref>http://tobi.oetiker.ch/lshort/lshort.pdf</ref><ref>{{cite book|last=Syropoulos|first=Apostolos|coauthors=Antonis Tsolomitis, Nick Sofroniou|title=Digital typography using LaTeX|publisher=Springer-Verlag|year = 2003|isbn=0-387-95217-9|page=213|quote=''TeX is not only an excellent typesetting engine but also a real programming language.''}}</ref>