Ежил (язык программирования) - Ezhil (programming language)
Парадигма | интерпретированный, императив, структурированный |
---|---|
Разработано | Мутху Аннамалай |
Разработчик | Независимый / фрилансер |
Впервые появился | 2007 |
Стабильный выпуск | |
Печатная дисциплина | сильный, динамичный |
Операционные системы | Linux, Windows |
Лицензия | GPLv3 |
Расширения имени файла | .n |
Интернет сайт | Ежилланг |
Основной реализации | |
Ежил-Ланг | |
Под влиянием | |
Логотип, БАЗОВЫЙ, Python |
Ежиль, в Тамильский язык сценарий (Тамильский: எழில், романизированный:Eḻil, горит 'Красота', Тамильское произношение:[eɻil̪]), является компактным, Открытый исходный код, интерпретированный, язык программирования, изначально предназначенный для поддержки собственныхТамильский говорящие студенты, К-12 возрастная группа для обучения компьютерное программирование, и включить обучение умение считать и вычисление, помимо лингвистической экспертизы в компьютерных системах преимущественно на английском языке.
В языке программирования Ezhil тамильские ключевые слова и языковая грамматика выбраны, чтобы легко позволить носителю языка тамильского языка писать программы в системе Ezhil. Ezhil позволяет легко представить компьютерную программу ближе к логическим конструкциям тамильского языка, эквивалентным условным операторам, операторам ветвления и цикла в современных языках программирования, основанных на английском языке. Ezhil - первый свободно распространяемый язык программирования в Тамильский язык и один из многих известных неанглийские языки программирования. Язык был официально анонсирован в июле 2009 года, а разрабатывается с конца 2007 года.
Описание
В синтаксис из Ежиль в целом похож на БАЗОВЫЙ: блоки кода выполняются в последовательном порядке или через определения функций в общем поток управления структуры включают пока
, и если
. Завершение функционального блока и блока операторов должно иметь ключевое слово завершения, подобное END в BASIC. Заявления не требуются, поскольку Ежиль это язык с динамической типизацией, хотя преобразование типов должно быть сделано явно. У Ezhil есть встроенные типы для чисел, строк, логики и списков.
Цели
- Образовательные: язык Ezhil нацелен на учащихся K-12 и носителей тамильского языка для изучения элементарного принципа компьютерных наук.
- Интуитивно: ежил язык синтаксический сахар устроен так, чтобы структура предложения была ближе к главный финал Тамильский язык, где обычный порядок слов SOV, в отличие от SVO порядок английского.
Функции
- Арифметические и логические операции, приоритет указан в скобках
- Более 350+ встроенных команд - многие из них обычно встречаются в стандартной библиотеке Python
- Процедурное программирование с использованием функций, поддерживающих рекурсию, вызов по значению и т. Д.
- Ежил как язык - это не макропроцессор, а полноценный компилятор-интерфейс.
- В языке Ezhil есть поддержка подсветки синтаксиса для Notepad ++ и Emacs
Ключевые слова
Условные операторы моделируются после оператора IF-ELSEIF-ELSE. Выбраны операторы управления циклом, производные от операторов WHILE. Синтаксис объявления функции остается простым. Подробности включают оператор печати и операторы управления потоком ниже.
1.- : РАСПЕЧАТАТЬ утверждение - பதிப்பி2.- : ПЕРЕМЕНА утверждение - நிறுத்து 3.- : ПРОДОЛЖИТЬ утверждение - தொடர்4.- : ВОЗВРАЩАТЬСЯ утверждение - பின்கொடு 5.- : ЕСЛИ-ELSEIF-ЕЩЕ-утверждение - ஆனால், இல்லைஆனால், இல்லை6.- : КОНЕЦ-утверждение - முடி7.- : НАЗНАЧЕНИЕ-утверждение - நிரல்பாகம்8.- : ПОКА-утверждение - வரை
Система типов
Ezhil имеет четыре основных типа: числа, строки, логические элементы и списки. Он не позволяет создавать новые типы, будучи процедурным языком без структур или объектов.
Язык - управляющие структуры, объявления функций и грамматика операторов
Стандартная языковая грамматика управляющих структур для языка Ежиль приведена ниже.
Если-еще заявление
@( УСЛОВИЕ ) ஆனால் # Истинная веткаஇல்லை # Ложная веткаமுடி
Заявление цикла
@( УСЛОВИЕ ) வரை # LOOP BODYமுடி
Операторы
Поддерживаются стандартные логические операторы, равенство "==", неравенство "! =", Арифметическое сравнение "> =", "<=", ">", "<". Арифметические операторы, такие как «+», «-», «*», «/», обозначают стандартный плюс, минус, произведение, деление. Модуль обозначается символом «%», а показатель степени - символом «^».
Комментарии
Символ «#» обозначает однострочный комментарий от точки до конца строки. Многострочные комментарии не определены.
Объявление функции
நிரல்பாகம் [FUNCTION_NAME] ( ARGLIST ) [НАЗНАЧЕНИЕ ТЕЛО]முடி
Переменная область видимости и видимость
Ezhil поддерживает только вызов по значению и копирует все структуры данных при вызовах функций. Глобалы не поддерживаются. Поддерживается рекурсия, и вызов функций копирует переменные.
Реализации
Текущая реализация Ezhil[3] тесно интегрирован со средой выполнения Python. Интерпретатор Ezhil основан на readline-подобном CLI, хотя его также можно запускать в пакетном режиме. Интерактивный режим использует программы в виде текста в кодировке UTF-8 и строит дерево, используя интерфейс компилятора, чтобы построить AST, и выполняет его, используя объекты Python, созданные из этого AST.
Примеры
Привет, мир
Ниже приводится Привет, мир программа в Ежиле:
# தமிழில் ஒரு எடுத்துக்காட்டு பதிப்பி "வணக்கம் Виджай!"<ссылка></ссылка>பதிப்பி "உலகே வணக்கம்"பதிப்பி "******* நன்றி !. *******"выход()
Угадайку
Ниже приводится игра в угадывание с 10 шансами угадать число от [1 до 100].
பதிப்பி ", விதி விளையாட்டுக்கு வருக!"# ஒவ்வொரு முறை ஒரு புதிய விதி தேவைсемя( 1729 + 500*случайный() )எண் = Randint(1,100)# 10 வாய்ப்புகளை கொடுக்கவாய்ப்பு = 0@( வாய்ப்பு < 10 ) வரை பதிப்பி "நான் என் இதயத்தில் எண் [1-100] ஒன்று நினைக்கிறேன்" பதிப்பி "நான் என்ன நினைக்கிறேன் என்று தெரியுமா?" Угадай = உள்ளீடு ( "Угадай / யூகிக்க >>" ) வாய்ப்பு = வாய்ப்பு + 1 # பதிப்பி (எண் == угадать) # பதிப்பி எண் @( எண் == Угадай ) ஆனால் பதிப்பி "வாழ்த்துக்கள்! சரியான பதில்" выход(0) முடி @( எண் < Угадай ) ஆனால் பதிப்பி "உங்கள் உள்ளீடு அதிகமாக உள்ளது" இல்லை பதிப்பி "உங்கள் உள்ளீடு குறைத்து உள்ளது" முடி பதிப்பி "இன்னும்" பதிப்பி ( 10 - வாய்ப்பு ) பதிப்பி "வாய்ப்புக்குள் மீதமுள்ளன முடி"முடிபதிப்பி ": 10 வாய்ப்பு முடிக்க முடியவில்லை!"выход( -1 )
Файловый ввод-вывод
# கோப்புப் பயன்பாடுfp = கோப்பை_திற( "names.txt","ш")# நாம் ஒரு பட்டியலில் இருந்து வார்த்தைகளை பயன்படுத்த முடியும்எ = ["இந்த","ஒரு","எழில்","தமிழ்","நிரலாக்க","மொழி","உதாரணம்"]இ = 0@( இ < len(எ) ) வரை # நாம் ஒவ்வொரு வரியும் ஒரு எண் மற்றும் வார்த்தை சேர்க்க முடியும் வரி = ул(இ) +" = "+ எடு( எ, இ ) + " п" பதிப்பி வரி கோப்பை_எழுது( fp,வரி ) இ = இ + 1முடி# சேமித்து மூடகோப்பை_மூடு( fp )# மறு திறந்த கோப்புfp = கோப்பை_திற( "names.txt")# மற்றும் உள்ளடக்கங்களை படிக்கவும்வரிகள் = கோப்பை_படி(fp)# பயனருக்கு காண்பிக்கபதிப்பி வரிகள்# கோப்பு மூடகோப்பை_மூடு( fp )# ஒரு எடிட்டர் கோப்பு திறக்க, "names.txt". emacs அல்லது Блокнот பயன்படுத்தவும்.
Графика черепаха
Ниже приводится Графика черепаха основанный на примере рисования символов Инь-Ян.
நிரல்பாகம் инь(радиус, color1, цвет2) #turtle_width (3) turtle_color("чернить") turtle_fill(Истинный) turtle_circle(радиус/2., 180) turtle_circle(радиус, 180) turtle_left(180) turtle_circle( -1*радиус/2.0 , 180 ) turtle_color(color1) turtle_fill(Истинный) turtle_color(цвет2) turtle_left(90) turtle_up() turtle_forward(радиус*0.375) turtle_right(90) turtle_down() turtle_circle(радиус*0.125) turtle_left(90) turtle_fill(Ложь) turtle_up() turtle_backward(радиус*0.375) turtle_down() turtle_left(90)முடிநிரல்பாகம் главный() #turtle_reset () инь(200, "белый", "чернить") инь(200, "чернить", "белый") turtle_ht() Пауза( «Готово! Нажмите Enter, чтобы выйти», 5)முடிглавный()
Логотип Ежил
- Логотип для ежильского языка состоит из переплетенных букв Тамильский языковой сценарий, разборчивость Ezhil - тамильский язык программирования.
Смотрите также
Рекомендации
- Аннамалай, Муфия (28 июля 2009 г.). «Ежил: тамильский язык программирования». arXiv:0907.4960. Эталонная реализация языка программирования Ежил