Эта статья поднимает множество проблем. Пожалуйста, помогите улучшить его или обсудите эти проблемы на странице обсуждения . ( Узнайте, как и когда удалить эти сообщения-шаблоны ) ( Узнайте, как и когда удалить этот шаблон сообщения )
|
Non-английский на основе языков программирования являются языки программирования , которые не используют ключевые слова взяты из или вдохновляются от английского словаря.
Распространенность языков программирования на английском языке [ править ]
Использование английского языка в качестве источника вдохновения для выбора элементов, в частности ключевых слов в языках программирования и библиотеках кода, представляет собой важную тенденцию в истории языкового дизайна. Согласно онлайн-базе данных языков HOPL [1] из более чем 8500 зарегистрированных языков программирования, примерно 2400 из них были разработаны в США , 600 - в Великобритании , 160 - в Канаде и 75 - в Австралии .
Таким образом, более трети всех языков программирования были разработаны в странах, где английский является основным языком. Это не учитывает долю использования каждого языка программирования, ситуации, когда язык был разработан в неанглоязычной стране, но использовал английский для обращения к международной аудитории (см. Пример Python из Нидерландов , Ruby из Японии , и Lua из Бразилии ), а также ситуаций, когда он был основан на другом языке программирования, который использовал английский.
Международные языки программирования [ править ]
Идея языков программирования в международном стиле была вдохновлена работами британских компьютерных ученых Кристофера Стрейчи , Питера Ландина и других. Он представляет собой класс языков, образцом которых была линейка алгоритмических языков ALGOL .
АЛГОЛ 68 [ править ]
Стандартный документ АЛГОЛА 68 был опубликован на множестве естественных языков . Стандарт разрешил интернационализацию языка программирования. 20 декабря 1968 года «Заключительный отчет» (MR 101) была принята Рабочей группой, то впоследствии утвержденной Генеральной Ассамблеей ЮНЕСКО «s МФОИ для публикации. Перевод стандарта был сделан на русский , немецкий , французский , болгарский , а затем и на японский языки . Стандарт был также доступен на шрифте Брайля . АЛГОЛ 68 стал стандартом ГОСТ- 27974-88 в Советском Союзе .
- ГОСТ 27974-88 Язык программирования АЛГОЛ 68 - Язык программирования АЛГОЛ 68 [2]
- ГОСТ 27975-88 Язык программирования АЛГОЛ 68 расширенный - Язык программирования АЛГОЛ 68 расширенный [3]
На английском языке оператор case в Algol68 читается как case ~ in ~ out ~ esac . По- русски это читается как выб ~ в ~ либо ~ быв .
Цитрин [ править ]
Локализация - это ключевая особенность языка программирования Citrine . В Citrine у каждого человеческого языка есть своя собственная версия, например, версия западно-фризского языка называется Citrine / FY. Citrine содержит локализованные ключевые слова, локализованные числа и локализованные знаки препинания. Пользователи могут переводить файлы кода с одного языка на другой, используя строковый подход. На момент написания цитрин поддерживает 111 человеческих языков. Поддержка не ограничивается известными языками; все естественные человеческие языки принимаются для включения, вплоть до EGIDS-6 .
Схема [ править ]
Хотя интернационализация не является частью какого-либо стандарта Scheme , выразительность и гибкость языка позволяет добавить интернационализацию в виде библиотеки . International Scheme - это проект с открытым исходным кодом, перевод в который может внести каждый. Поскольку переводы Scheme могут быть загружены как библиотеки, программы Scheme могут быть многоязычными .
На основе неанглийских языков [ править ]
Ключевые слова в | Имя | Описание | Ссылка на сайт |
---|---|---|---|
Амхарский | AxumLight / Блин # | Амхарский язык программирования на платформе .NET | [1] |
арабский | Аль-Хаваризм | Язык среднего уровня для системного программирования с пользовательской IDE. Предназначен для профессиональных целей. поддерживает платформы Windows и Linux. Первые разработки и разработки в 2008 году. Состояние разработки: активно. | [2] |
Джим | Арабский язык процедурного программирования, использующий возможности как C, так и Pascal. Поддерживает простую графику. Предназначен для образовательных целей. Разработал Мохаммад Аммар Альсалка. Выпущен в 2006 году. | [3] | |
АРЛОГО | Язык с открытым исходным кодом, основанный на интерпретаторе логотипа UCB . | ||
Ebda3 | Многопарадигмальный язык программирования высокого уровня. | ||
Qalb | A Scheme -как язык программирования. [4] | [4] | |
Калимат | Язык программирования, призванный помочь арабским детям узнать о программировании. [5] | ||
Аммория | Объектно-ориентированный язык | [5] | |
Лугаты (MyProLang) | Естественный арабский язык программирования общего назначения, основанный на собственном синтаксисе. [6] | ||
Феникс | C-подобный императивный процедурный язык высокого уровня. | [6] | |
Бенгальский | ChaScript | Построен с использованием грамматики ECMAScript . [7] | [7] |
китайский язык | Китайский BASIC | Китайские - местные диалекты BASIC на основе Applesoft BASIC ; для тайваньских клонов Apple II и Multitech Microprofessor II . | |
Китайский питон | Версия Python, локализованная на китайский язык. | [8] | |
Простой язык программирования | Китайский язык быстрой разработки приложений . | ||
Wenyan | Эзотерический язык, который точно следует грамматике и тону классического китайского ; он компилируется в JavaScript и Python (с выходом C и т. д.). | [9] [10] | |
ЖПы | Полнофункциональный модуль Python, который преобразует китайские ключевые слова, переменные и параметры. | ||
Чешский и словацкий | Карел | Образовательный язык программирования с чешскими и словацкими версиями. | |
нидерландский язык | Суперлого | Создан для компьютерного обучения на базе Logo . | |
Драма | Ассемблер для образовательных целей. | ||
Финский | сампо | Образовательный Forth- подобный язык программирования, используемый в 1980-х годах в средней школе города Оулу . | |
Тампио | Сделан так, чтобы выглядеть как естественный язык. Объектно-ориентированный. | [11] | |
Французский | GOTO ++ | Эзотерический язык программирования, основанный на французском и английском языках. | [12] |
Линотт | |||
LSE (Language Symbolique d'Enseignement) | Педагогический язык программирования, разработанный в 1970-х годах в Высшей школе электричества. Этакий БЕЙСИК, но с процедурами, функциями и локальными переменными, как в Паскале. | ||
BASICOIS | BASIC с французскими ключевыми словами [8] | ||
SPIP | Язык шаблонов с французским синтаксисом [9] | ||
Немецкий | Германец | Немецкая реализация Python . | [13] |
Греческий | Glossas | Основан на Паскале , используется в образовательных целях в средней школе. | [14] |
иврит | TamliLogo | Реализация логотипа на иврите . | [15] |
хинди | Kalaam.io | Kalaam - это язык программирования на хинди, обладающий всеми основными функциями современного языка программирования. От циклов for к циклам while и от функций к условным операторам. Kalaam имеет собственный синтаксический анализатор, интерпретатор, стек виртуальной памяти и выполняет исходный код из дерева синтаксического анализа, созданного синтаксическим анализатором. | [16] |
Язык программирования хинди | Хинди языка программирования для .NET Framework . | [17] | |
Язык W | HTML с переводом на хинди | [18] | |
Хинди , бенгали , гуджарати | Система программирования хиндави | Набор вариантов C, C ++ , lex , yacc , assembly , BASIC , Logo и Ada | |
исландский | Фьёльнир | Императивный язык программирования 1980-х годов. | |
индонезийский | БАИК | C с индонезийскими ключевыми словами. | [19] |
Ирландский | Сетанта | Язык общего назначения высокого уровня, работающий в браузере. Содержит графический API, который можно использовать для создания игр и анимации. | [20] |
Итальянский | Моничелли | Эзотерический язык прогнозирования, основанный на так называемой "Supercazzola" из фильма " Мои друзья" (фильм). | https://github.com/esseks/monicelli |
Японский | Дулиттл | Разработано в образовательных целях. | [21] |
Продюсер | Объектно-ориентированный японский язык программирования. Он используется для хобби и бизнес-приложений. | [22] | |
Котодама о писке | На основе Squeak . В образовательных целях. | [23] | |
Разум | Используется для хобби и бизнес-приложений. | [24] | |
Надешико (な で し こ) | Японский язык программирования. | [25] | |
Подсолнечник | Используется для хобби и бизнес-приложений. | [26] | |
TTSneo | Японский язык программирования. Он используется для хобби-приложений. | [27] | |
Унчику | Японский язык программирования. Имеет ограниченные функции / операции. Разработано в образовательных целях. | ||
Корейский | Ссиат | Язык, использующий хангыль ( корейский ). Имя Ссиат (씨앗) в переводе с корейского означает «семя». | |
Ахеуи | Эзотерический язык программирования похож на Befunge , но с использованием хангыль [10] | ||
Чангджо | Язык, использующий хангыль . Используется для мультимедийного и игрового программирования. | ||
hForth | Система Forth с необязательным корейским набором ключевых слов. | [28] | |
латинский | Lusus | ||
Lingua :: Romana :: Perligata | Альтернативный синтаксис для Perl 5 , позволяющий программировать на латыни. | [29] | |
латышский язык | Дзинтарс | Руби переведена на латышский язык. | [30] |
Литовский | Сетонас | Python переведен на литовский язык. | [31] |
малайский | Малайский базовый | BASIC с малайскими ключевыми словами | [32] |
Персидский | Фарсине | Объектно -ориентированный язык программирования для .NET Framework . Он похож на C # и Delphi. | [33] |
Харазми | Персидский язык программирования и IDE, предназначенные для обучения программированию учащихся средних школ, похожие на Паскаль. | ||
Кати (زبان کاتی) | Онлайн-язык программирования на персидском языке. | [34] | |
Хашеми (آقای هاشمی) | является ответвлением от SimpleLanguege, простого примера языка, созданного с использованием Truffle API. | [35] | |
Simorgh (SPL) | SPL был изобретен с целью, чтобы люди, не являющиеся техническими специалистами, могли создавать свои собственные портативные приложения, которые могут быть написаны на их родном языке. http://www.simorghonline.com | ||
Польский | AC-логотип | Логотип с польскими командами IDŹ, OTO, NAPRZÓD и др., Созданный в 1992 году. | |
САКО | Язык, созданный в 1950-х годах и получивший прозвище «польский фортран ». | ||
EOL | В экспрессионно-ориентированном языке можно использовать польские или английские ключевые слова. | ||
португальский | VisuAlg | Язык, предназначенный для обучения программированию, основанный на Паскале . | [36] |
потигол | Функциональный язык программирования на португальском языке для начинающих. | [37] | |
Студия Portugol | основан на C и PHP для учебных целей. | [38] | |
G-Portugol | Язык программирования с португальскими ключевыми словами. | [39] | |
русский | 1С: Предприятие | Фреймворк и язык для бизнес-приложений. Также можно использовать английские ключевые слова. | |
РАПИРА | Интерпретируемый процедурный язык программирования с сильной системой динамических типов. | ||
Аналитик | Язык для символьных манипуляций с алгебраическими выражениями, используемый в советских сериях компьютеров МИР . [11] | ||
Эль-76 | Язык для символьных манипуляций с алгебраическими выражениями, используемый в советских сериях компьютеров Эльбрус . [12] | ||
ЯМБ | ЯМБ (язык машин бухгалтерских) (машинный язык для бухгалтерских машин) - русский язык программирования для специализированных бухгалтерских компьютеров «Искра-554», «Искра-555» и «Нева-501». | ||
КуМир | Подобен Pascal и IDE, в основном предназначен для использования в учебных заведениях. Название является аббревиатурой, что означает Комплект ученический «Мир» (студенческая среда «Мир»). | ||
Робик | Простой язык для обучения детей основам программирования. | ||
ЯАП | Язык, используемый на Наири | ||
АЛМИР-65 | Язык, используемый в МИР | ||
УАЯ | Язык для изучения программирования | ||
сербский | Ћ плус плус | Ћ плус плус (сербский, «C plus plus») - это JavaScript- подобный язык программирования, основанный на кириллице. | [40] |
испанский | ГарГар | Язык процедурного программирования, основанный на Паскале, для учебных целей. [13] | |
PSeInt | Интерпретатор псевдокода для испанского языка, такой как Паскаль, с полностью основанным на испанском синтаксисе. PSeInt - это аббревиатура от Pseudocode Interpreter . | ||
Криолло | Нечистый язык строгого функционального программирования, который компилируется в байт-код C, Python и JVM, с ключевыми словами на испанском языке Риоплатенс , на котором говорят в Буэнос-Айресе . | [41] | |
Латиноамериканец | Язык с полностью испанским синтаксисом. | [42] | |
Да | Псевдо-язык прямого перевода для программирования на C и C ++ с испанскими ключевыми словами. | [43] | |
Паускаль | Язык с полностью испанским синтаксисом; компилятор для 32-битной Windows. | ||
ИНФОРМАЦИЯ | Перевод Информ , используемый для создания текстовых игр. | ||
суахили | менять | Язык программирования суахили, это образовательный язык программирования, созданный на основе Nodejs. Он был создан, чтобы помочь носителям суахили легко понять концепцию кодирования и программирования в целом. | [44] [45] |
Шведский | Энкельт | Язык с полностью шведским синтаксисом. Переведен на Python. | [46] |
Тагальский | Бато | Руби переведена на тагальский. | [47] |
Тамильский | Ежиль | Разработано в образовательных целях. | |
Сварам | Простой, универсальный и процедурный язык. [14] | ||
Язык W | Перевод HTML на тамильский язык | https://github.com/rvenkatesh29/w_language | |
Урду | Урдускрипт | Диалект JavaScript . | [48] |
Алиф | [49] | ||
Йоруба | Йорланг | Построенный на вершине Node.js . | [50] |
(Разные) | Логотип | В одном из выпусков Apple II он был доступен на французском языке . Версия, используемая в болгарском образовании с болгарскими клонами Apple II, была переведена на болгарский язык . ЛОГОТИП для Commodore 64 имел итальянскую локализацию. | |
4-е измерение | В локальных версиях внутренний язык использует французские или немецкие ключевые слова. | ||
ФОКУСНЫЙ | Ключевые слова изначально были на английском языке, но DEC выпустила версии FOCAL на нескольких европейских языках. | ||
Мама | Образовательный язык программирования и среда разработки, призванная помочь молодым студентам начать программирование, создавая 3D-анимацию и игры. В настоящее время он доступен на английском, иврите, идиш и китайском языках. | ||
MS Word и MS Excel | Их макроязыки раньше были локализованы не на английском языке. | ||
ML4 | Язык программирования баз данных клиент / сервер с ключевыми словами на английском или немецком языке. [15] | ||
RoboMind | Образовательный язык программирования доступен на арабском , китайском , голландском , английском , французском , немецком , греческом , польском , бразильском португальском , испанском , шведском и турецком языках . | ||
Царапать | Вводный язык визуального программирования от Media Lab Массачусетского технологического института с поддержкой программирования на нескольких языках, включенных в стандартную комплектацию. | ||
Катробат | Язык визуального программирования, ориентированный на подростков, с поддержкой более 60 языков, таких как словенский, польский, хинди, немецкий, румынский, турецкий, норвежский, акан, тви, иврит, китайский упрощенный, индонезийский, шведский, традиционный китайский, португальский, бразильский, хорватский. , Боснийский, тайский, японский, синдхи, тамильский, суахили, арабский, персидский, корейский, сербский (кириллица), сербский (латиница), бенгальский, французский, словацкий, вьетнамский, итальянский, македонский, русский, португальский, английский, Канада, чешский , Сингальский, азербайджанский, казахский, голландский, каталонский, албанский, пушту, гуджарати, финский, малайский, литовский, малаялам, датский, венгерский, африкаанс, каннада, греческий, болгарский, галисийский, урду (Пакистан), английский, Австралия, английский, Великобритания, телугу, украинский, хауса и игбо. | [51] | |
TECO | Язык программирования, используемый для управления действиями текстового редактора TECO . Диалект этого языка MIT использовался для программирования ранних версий Emacs до того, как он был переписан в 1985 году в Emacs Lisp . | ||
TI-Calculator BASIC | Версия 68000 локализована. К сожалению, различные строки конфигурации также локализованы, что препятствует прямой двоичной совместимости. | ||
Цитрин | Язык программирования, который можно использовать для кодирования на любом родном человеческом языке, включает модуль переводчика для перевода кода с одного человеческого языка на другой. На момент написания он поддерживает английский, голландский, литовский и румынский языки. |
Языки, основанные на символах вместо ключевых слов [ править ]
- APL - язык, основанный на математических обозначениях и абстракциях.
- Brainfuck - минималистский эзотерический язык программирования, созданный для того, чтобы компилятор занимал меньше 256 байт .
- G - графический язык, используемый в LabVIEW (не путать с G-кодом).
- Hoon - язык системного программирования для Urbit, компилируемый в Nock.
- J - APL- подобный язык, который использует только специальные символы ASCII и добавляет программирование на уровне функций .
- Light Pattern - язык, в котором в качестве исходного кода используется серия фотографий, а не текст. [16]
- Мышь - минималистский язык, созданный доктором Питером Грогоно, который использует символы ASCII для ключевых слов.
- Piet - эзотерический язык программирования, основанный на искусстве.
- Plankalkül - первый язык программирования высокого уровня, отличный от фон Неймана, разработанный Конрадом Цузе во время Второй мировой войны в Германии .
- Пробелы - эзотерический язык, основанный на пробельных символах (пробелах, табуляциях и переносах строк).
Изменяемый синтаксис парсера [ править ]
- Babylscript - многоязычная версия JavaScript, которая использует несколько токенизаторов для поддержки локализованных ключевых слов на разных языках и позволяет объектам и функциям иметь разные имена на разных языках.
- Component Pascal - препроцессор, который переводит ключевые слова с родного языка на английский в образовательной версии BlackBox Component Builder, доступной в виде открытого исходного кода. [52] Перевод контролируется с помощью изменяемого словаря и поддерживается изменяемыми сообщениями об ошибках компилятора. Полная русская версия используется в образовании, и должна быть возможность приспособить другие языки с письмом слева направо (например, кабардинский язык был опробован в качестве доказательства концепции).
- HyperTalk язык программирования A, которая позволяет перевод с помощью пользовательских ресурсов, используемых в - Apple , «s HyperCard .
- IronPerunis - локализация IronPython 2.7 на литовский и русский языки .
- AppleScript - язык, который когда-то допускал разные «диалекты» [17], включая французский и японский; однако они были удалены в более поздних версиях.
- Мод - полностью определяемый пользователем синтаксис и семантика в пределах набора символов ASCII. [18]
- Perl - Пока ключевые слова в Perl и имена функций , как правило , на английском языке, что позволяет изменение его синтаксического анализатора для изменения языка ввода, например, в Damian Conway «s Lingua :: Romana :: Perligata модуль, который позволяет программам быть написаны на латинском или его Lingua :: tlhInganHol :: yIghun Perl язык на клингонском языке. Они меняют не только ключевые слова, но и грамматику в соответствии с языком.
- Perunis - локализация Python 2.6 на литовский и русский языки .
- Иоке - Иоке - складной язык . Это позволяет писать очень выразительный код, который пишет код. Примеры той же программы на китайском , датском , хинди и испанском языках
Ссылки [ править ]
- ^ В HOPL (История языков программирования) расширенный поиск находит языки по странам.
- ^ "ГОСТ 27974-88 Язык программирования АЛГОЛ 68 - Язык программирования АЛГОЛ 68" (PDF) (на русском). ГОСТ . 1988. Архивировано из оригинального (PDF) 24 марта 2017 года . Проверено 15 ноября 2008 года .
- ^ «ГОСТ 27975-88 Язык программирования АЛГОЛ 68 расширенный - Язык программирования АЛГОЛ 68 расширенный» (PDF) (на русском языке). ГОСТ . 1988 . Проверено 15 ноября 2008 года .
- ^ https://www.theverge.com/2013/1/25/3914150/alb-programming-language-based-on-arabic-script
- ^ https://www.arabnet.me/english/editorials/business/industry/kalimat-first-arabic-programming-language-for-kids
- ^ IA eng (PDF) .
- ^ ChaScript: преодоление языкового барьера с использованием бенгальской системы программирования , IEEE, doi : 10.1109 / ICECE.2014.7026875 , S2CID 39503002 .
- ^ Марсель Лабель, Языки программирования (PDF) .
- ^ Команда документации Spip, Языковой глоссарий.
- ^ "Aheui", Esolang (вики).
- ^ Аналитик , ACM.
- ^ Эль-76 , Кірыліца ў сеціве.
- ^ Руководство дель lenguaje Гаргар [ Гаргар Руководство ] (на испанском языке), в архиве с оригинала на 5 ноября 2016. [ постоянная мертвая ссылка ]
- ^ Ганеш (PDF) , Infitt, 2003 .
- ^ C / S Entwicklungsumgebung ML4 , Программное обеспечение ML.
- ^ Темкин (август 2015). «Световой узор: написание кода с фотографиями». Леонардо . 48 (4): 375–381. DOI : 10,1162 / LEON_a_01091 . S2CID 57571969 .
- ^ https://www.researchgate.net/publication/221501771_AppleScript
- ^ Language Design in Maude , Матиас, 2006/06/05, LShift Ltd.
Источники [ править ]
- Пиготт, Диармуид (2006). "HOPL, История языков программирования" . Архивировано из оригинала на 2011-02-20 . Проверено 14 апреля 2008 .
Внешние ссылки [ править ]
- Информационная страница SAKO в HOPL - Автор Diarmuid Pigott