Кіріспе

Бағдарламалау тілдері машинаның (көбінесе компьютердің) қызметін басқару үшін қолданылады. Табиғи тілдер сияқты, бағдарламалау тілдері де синтаксис және семантика ережелерін сақтайды. Мыңдаған бағдарламалау тілдері бар, және әр жыл сайын жаңалары құрылады. Көптеген тілдер жеткілікті деңгейде танымал бола бермейді, сондықтан оларды көп адам қолданбайды, бірақ кәсіби бағдарламашылар өмірінде ондаған тілдерді пайдалана алады. Бағдарламалау тілдерінің көпшілігі халықаралық (немесе ұлттық) стандарттармен реттелмейді, тіпті Perl немесе Standard ML сияқты кеңінен қолданылатын тілдер де (атына қарамастан). Белгілі стандартталған бағдарламалау тілдеріне ALGOL, C, C++, JavaScript (ECMAScript атымен), Smalltalk, Prolog, Common Lisp, Scheme (IEEE стандарты), ISLISP, Ada, Fortran, COBOL, SQL және XQuery кіреді. ТОК

Жалпы салыстыру

Келесі кестеде жиі қолданылатын бағдарламалау тілдерінің таңдауы бойынша жалпы және техникалық ақпараттар салыстырылады. Толық ақпарат алу үшін әрбір тілдің жеке мақалаларын қараңыз. Тіл Бастапқы мақсаты Императивті Объектіге бағытталған Функционалдық Процедуралық Жалпы Рефлексивті Басқа парадигмалар Стандартталған ба? 1C:Enterprise бағдарламалау тілі Қолданба, RAD, бизнес, жалпы, веб, мобильдік Объектіге негізделген, прототипке негізделген бағдарламалау ActionScript Қолданба, клиенттік, веб Прототипке негізделген 1999 2003, ActionScript 1.0 ES3-пен, ActionScript 2.0 ES3 және ES4 жобасының бір бөлігімен, ActionScript 3.0 ES4 жобасымен, ActionScript 3.0 E4X-пен Ada Қолданба, кіріктірілген, нақты уақыт, жүйе Concurrent, Distributed 1983, 2005, 2012, ANSI, ISO, GOST 27831 88 Aldor Жоғары доменге тән, символдық есептеу ALGOL 58 Қолданба ALGOL 60 Қолданба 1960, IFIP WG 2.1, ISO ALGOL 68 Қолданба Concurrent 1968, IFIP WG 2.1, GOST 27974 88, Ateji PX Параллель қолданба pi calculus APL Қолданба, деректерді өңдеу Массивке бағытталған, тікелей 1989, ISO Ассамблер тілі Жалпы Кез келген, синтаксисі әдетте өте ерекше, нысана процессорға байланысты 1985 IEEE 694 1985 AutoHotkey GUI автоматтандыру (макростар), жоғары доменге тән AutoIt GUI автоматтандыру (макростар), жоғары доменге тән Ballerina Интеграция, икемді, серверлік, жалпы Concurrent, транзакциялық, статикалық және күшті түрде терілген, схемалық-визуальды Ballerina тілінің ережесі бойынша стандартталған Bash Shell, сценарий POSIX.2 BASIC Қолданба, білім беру 1983, ANSI, ISO, ECMA BeanShell Қолданба, сценарий Жұмыс істеп жатыр, JCP BLISS Жүйе BlitzMax Қолданба, ойын Boo Қолданба, ойын сценарийлері C Қолданба, жүйе, жалпы мақсат, төмен деңгейлі операциялар 1989, ANSI C89, ISO/IEC C90, ISO/IEC C95, ISO/IEC C99, ISO/IEC C11, ISO/IEC C17, ISO/IEC C2x C++ Қолданба, жүйе 1998, ISO/IEC C++98, ISO/IEC C++03, ISO/IEC C++11, ISO/IEC C++14, ISO/IEC C++17, ISO/IEC C++20, ISO/IEC C++23 C# Қолданба, RAD, бизнес, клиенттік, жалпы, серверлік, веб, ойын бағдарламалау Structured, concurrent 2000, ECMA, ISO Clarion Жалпы, бизнес, веб Clean Жалпы Clojure Жалпы Concurrent CLU Жалпы COBOL Қолданба, бизнес 1968 ANSI X3.23, 1974, 1985; ISO/IEC 1989:1985, 2002, 2014 Cobra Қолданба, бизнес, жалпы, веб ColdFusion (CFML) Веб Common Lisp Жалпы Көрсеткіш синтаксис, массивке бағытталған, синтаксистік макростар, көптеген жіберулер, concurrent 1994, ANSI COMAL 80 Білім беру Crystal Жалпы мақсат Concurrent Curry Қолданба Ленитивті бағалау, беймәлімдік Curry тілінің ережесі бойынша стандартталған Oz Mozart Қолданба, тарату, білім беру Concurrent, logic Pascal Қолданба, білім беру 1983, ISO Perl Қолданба, сценарий, мәтінді өңдеу, Веб PHP Серверлік, веб қолданбасы, веб Тілдің ережесі және сұраулар бойынша стандартталған (RFCs) PL/I Қолданба 1969, ECMA 50 (1976) Plus Қолданба, жүйелік әзірлеме

Экспрессивтілік

Тіл мәлімдемелер қатынасы Жолдар қатынасы C 1 1 C++ 2.5 1 Fortran 2 0.8 Java 2.5 1.5 Perl 6 6 Smalltalk 6 6.25 Python 6 6.5 Бағдарламалау тілдері туралы әдебиетте олардың салыстырмалы көркемдік қуаты туралы көптеген бейресми мәлімдемелер бар, бірақ мұндай мәлімдемелерді формалдауға немесе қызықты салдарларды туындатуға арналған ешқандай құрылым жоқ. Бұл кесте екі түрлі дереккөзден алынған көркемділіктің екі өлшемін ұсынады. GZip байттарындағы көркемділіктің қосымша өлшемін Компьютерлік тілдердің сынақ ойындарында табуға болады.

Салыстырмалы көрсеткіштер

Бенчмарктер компонент немесе жүйенің нақты жұмыс жүктемесін имитациялау үшін жасалған. Осы бөлімдегі бенчмарк деректерінің бір бөлігін жинауға қолданылған компьютерлік бағдарламалар толыққанды түрде оңтайландырылмаған болуы мүмкін, сондай-ақ деректердің релевандылығы күмәнді. Ең дәл бенчмарктер – сіздің нақты жағдайыңызға бейімделгендер. Басқалардың бенчмарк деректері біреулер үшін пайдалы болуы мүмкін, бірақ оны дұрыс түсіндіру көптеген қиындықтарға әкеледі. Компьютерлік тілдер бенчмарктары сайты бенчмарк деректерін жалпылауға қарсы ескертеді, бірақ оқырман ұсынған код үзінділерінен жасалған көптеген микро-бенчмарктерді қамтиды және нақты бағдарламалау тілдері мен тест түрлерін салыстыратын әртүрлі диаграммалар мен кестелерді құрайтын интерфейске ие.