Эжил (язык программирования)

редактировать
Эжил
Эжил - тамильский язык программирования Logo.png
Парадигма интерпретированная, императивная, структурированная
Разработана Мутху Аннамалай
Разработчик Независимый / фрилансер
Впервые появился2007
Стабильный выпуск версия 0.1 / 13 июня 2013 г.; 7 лет назад (13.06.2013)
Дисциплина печати сильная, динамическая
OS Linux, Windows
Лицензия GPLv3
Расширения имен файлов .n
Веб-сайтezhillang.org
Основные реализации
Ezhil-Lang
Под влиянием
Logo, BASIC, Python

Ezhil, на тамильском языке алфавит (тамильский : எழில், романизированный: Eḻil, lit. «красота», тамильское произношение: ), является компактным, открытым исходным кодом, интерпретируется, язык программирования, изначально разработанный для того, чтобы дать возможность учащимся, говорящим на родном тамильском языке, K-12 возрастной группы изучать компьютерное программирование, и позволяют изучать математику и вычисления вне лингвистических знаний в компьютерных системах, основанных преимущественно на английском языке.

В языке программирования «Эжил» тамильские ключевые слова и языковая грамматика выбраны, чтобы легко позволить носителю тамильского языка писать программы в системе «Эжил». Ezhil позволяет легко представить компьютерную программу ближе к логическим конструкциям тамильского языка, эквивалентным условным операторам, операторам ветвления и цикла в современных языках программирования, основанных на английском языке. Ezhil - первый свободно доступный язык программирования на тамильском и один из многих известных неанглийских языков программирования. Официально язык был анонсирован в июле 2009 года, а разрабатывался с конца 2007 года.

Содержание
  • 1 Описание
    • 1.1 Цели
    • 1.2 Возможности
    • 1.3 Ключевые слова
    • 1.4 Система типов
  • 2 Язык - управляющие структуры, объявления функций и грамматика операторов
    • 2.1 Оператор If-else
    • 2.2 Оператор цикла
    • 2.3 Операторы
    • 2.4 Комментарии
    • 2.5 Объявление функции
  • 3 Область видимости переменных и видимость
  • 4 Реализации
  • 5 Примеры
    • 5.1 Hello world
    • 5.2 Угадайка
    • 5.3 Файловый ввод-вывод
    • 5.4 Черепашья графика
  • 6 Логотип Ezhil
  • 7 См. также
  • 8 Ссылки
  • 9 Внешние ссылки
Описание

Синтаксис для Ezhil в целом аналогичен синтаксису BASIC : блоки кода выполняются в последовательном порядке или через определения функций в общем потоке управления . структуры включают , а и if . Завершение функционального блока и блока операторов должно иметь ключевое слово завершения, подобное END в BASIC. Объявления не требуются, поскольку Ezhil - это язык с динамической типизацией, хотя преобразования типов должны выполняться явно. У Ezhil есть встроенные типы для чисел, строк, логики и списков.

Цели

  • Образовательные: язык ежил нацелен на учащихся K-12 и носителей тамильского языка, чтобы изучить элементарный принцип компьютерных наук
  • Интуитивно: синтаксический сахар языка эжил устроен так, чтобы позволить структура предложения ближе к head final тамильский язык, где обычный порядок слов SOV, в отличие от SVO порядка английского.

Возможности

  • Арифметические и логические операции, приоритет указывается в скобках
  • Более 350+ встроенных функций - многие из них обычно встречаются в стандартной библиотеке Python
  • Процедурное программирование с использованием функций, поддерживающих рекурсия, вызов по значению и т. д.
  • Ежиль как язык - это не макропроцессор, а полноценный интерфейс компилятора
  • В языке «Ежиль» есть поддержка подсветки синтаксиса для Notepad ++ и Emacs

Ключевые слова

Условные операторы моделируются после оператора IF-ELSEIF-ELSE. Выбраны операторы управления циклом, производные от операторов WHILE. Синтаксис объявления функции остается простым. Подробности включают оператор печати и операторы управления потоком ниже.

1.-: Оператор PRINT - பதிப்பி 2.-: Оператор BREAK - நிறுத்து 3.-: Оператор CONTINUE - தொடர் 4.-: Оператор RETURN - பின்கொடு 5.-: IF-ELSEIF-ELSE-statement - ஆனால், இல்லைஆனால், இல்லை 6.-: END-statement - முடி 7.-: FUNCTION-statement - நிரல்பாகம் 8.-: WHILE-statement - வரை

Система типов

Ezhil имеет четыре основных типа, для чисел, строк, Логики и списки. Он не позволяет создавать новые типы, будучи процедурным языком без структур или объектов.

Язык - управляющие структуры, объявления функций и грамматика операторов

Стандартная языковая грамматика управляющих структур для языка Ежиль приведена ниже,

Программы Ежил в режиме подсветки синтаксиса Notepad ++

Если- Оператор else

@ (CONDITION) ஆனால் # Истинная ветвь இல்லை # Ложная ветвь முடி

Оператор цикла

@ (CONDITION) வரை # LOOP BODY முடி

Операторы

Стандартные логические операторы, равенство "==", неравенство "! =", арифметическое сравнение ">=", "<=",">", "<" are supported. Arithmetic operators like "+","-","*","/" indicate standard plus, minus, product, division. Modulo is denoted by "%", and exponent by "^" characters.

Комментарии

Символ '#' обозначает однострочный комментарий из указывает на конец строки. Многострочные комментарии не определены.

Объявление функции

நிரல்பாகம் [FUNCTION_NAME] (ARGLIST) [FUNCTION BODY] முடி
Область видимости переменной и видимость

Ezhil поддерживает только вызов по значению и копирует все структуры данных при вызовах функций. Глобальные объекты не поддерживаются. Поддерживается рекурсия, а вызов функций копирует переменные.

Реализации

Текущие Реализация Ezhil тесно интегрирована со средой выполнения Python. Интерпретатор Ezhil основан на readline-подобном CLI, но может также работать в пакетном режиме. Интерактивный режим использует программы как текст в кодировке UTF-8 и строит дерево, используя интерфейс компилятора, чтобы построить AST, и выполняет его с помощью объектов Python, построенных из этого AST.

Примеры

Hello world

Ниже представлена ​​программа Hello world на языке Ezhil:

# தமிழில் ஒரு எடுத்துக்காட்டு பதிப்பி "வணக்கம் Виджей!" பதிப்பி "உலகே வணக்கம்" பதிப்பி "******* நன்றி !. *******" exit ()

Игра в угадайку

Следующее - угадайка игра с 10 шансами угадать число от [1 до 100].

பதிப்பி ", விதி விளையாட்டுக்கு வருக!" # ஒவ்வொரு முறை ஒரு புதிய விதி தேவை seed (1729 + 500 * random ()) எண் = randint (1,100) # 10 வாய்ப்புகளை கொடுக்க வாய்ப்பு = 0 @ (வாய்ப்பு < 10) வரை பதிப்பி "நான் என் இதயத்தில் எண் [1-100] ஒன்று நினைக்கிறேன்" பதிப்பி "நான் என்ன நினைக்கிறேன் என்று தெரியுமா?" guess = உள்ளீடு ( "Guess/யூகிக்க>>") வாய்ப்பு = வாய்ப்பு + 1 # பதிப்பி (எண் == угадать) # பதிப்பி எண் @ (எண் == угадать) ஆனால் பதிப்பி "வாழ்த்துக்கள்! சரியான பதில் "exit (0) முடி @ (எண் < guess) ஆனால் பதிப்பி "உங்கள் உள்ளீடு அதிகமாக உள்ளது" இல்லை பதிப்பி "உங்கள் உள்ளீடு குறைத்து உள்ளது" முடி பதிப்பி "இன்னும் " பதிப்பி ( 10 - வாய்ப்பு) பதிப்பி "வாய்ப்புக்குள் மீதமுள்ளன முடி" முடி பதிப்பி "மன்னிக்கவும் : 10 வாய்ப்பு முடிக்க முடியவில்லை!" exit( -1)
Ниже приводится игра в угадывание с 10 шансами угадать число между [1-100]

Файловый ввод-вывод

# பயன்பாடு பயன்பாடு fp = கோப்பை_திற («names.txt», «w») # நாம் ஒரு பட்டியலில் இருந்து வார்த்தைகளை பயன்படுத்த முடியும் எ = [«இந்த», «ஒரு», «எழில்», «தமிழ்», «நிரலாக்க», «மொழி», «உதாரணம்»] இ = 0 @ (இ < len(எ)) வரை # நாம் ஒவ்வொரு வரியும் ஒரு எண் மற்றும் வார்த்தை சேர்க்க முடியும் வரி = str(இ) +" = "+ எடு( எ, இ) + " \n" பதிப்பி வரி கோப்பை_எழுது( fp,வரி) இ = இ + 1 முடி #சேமித்து மூட கோப்பை_மூடு( fp) # மறு திறந்த கோப்பு fp = கோப்பை_திற( "names.txt") # மற்றும் உள்ளடக்கங்களை படிக்கவும் வரிகள் = கோப்பை_படி(fp) # பயனருக்கு காண்பிக்க பதிப்பி வரிகள் # கோப்பு மூட கோப்பை_மூடு( fp) # ஒரு எடிட்டர் கோப்பு திறக்க, "names.txt". emacs அல்லது Notepad பயன்படுத்தவும்.

Графика черепахи

Ниже приведен пример на основе графики черепахи для рисования символов Инь-Ян.

நிரல்பாகம் Инь (радиус, цвет1, цвет2) #turtle_width (3) turtle_color ("черный") turtle_fill (True) turtle_circle (radius / 2., 180) turtle_circle (radius, 180) turtle_left (180) turtle_circle (-1 * radius / 2.0, 180) turtle_color (color1) turtle_fill (True) turtle_color (color2) turtle_left (90) turtle_up () turtle_forward (радиус * 0,375) turtle_right (90) turtle_down () turtle_circle (радиус * 0,125) turtle_left (90) turtle_fill (False) turtle_up () * turtle_75backward (радиус)) turtle_down () turtle_left (90) முடி நிரல்பாகம் main () #turtle_reset () yin (200, "белый", " черный ") инь (200," черный "," белый ") turtle_ht () pause (" Готово! Нажмите Enter, чтобы выйти ", 5) முடி main ()
Ниже приведен пример на основе графики Turtle для рисования символов Инь-Ян
Логотип Ezhil
  • Логотип для языка Ezhil состоит из чересстрочных букв Тамильский языковой сценарий, на котором написано Ezhil - тамильский язык программирования.
См. Также
Ссылки
  1. Annamalai, Muthiah (28 июля 2009 г.). Ezhil: A Tamil Язык программирования ». arXiv : 0907.4960. Эталонная реализация языка программирования« Ежил »
Внешние ссылки
На Викискладе есть материалы, связанные с « Ежил ».
Последняя правка сделана 2021-05-19 10:36:41
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте