Языки программирования с русским синтаксисом

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Языки программирования с русским синтаксисом » Прочее... » Где и как проверять язык?


Где и как проверять язык?

Сообщений 1 страница 4 из 4

1

Предположим мы тут разработали некую первую версию языка программирования и хотим проверить его, то есть написать маленькую программку, которая бы исполнялась. Но что это за программка? Надо иметь какое-нибудь окружение, где это программка будет исполняться. Я думаю, что проверять программку, чтобы она делала что-то в Windows или Linux, не получится, потому что нужно тогда использовать библиотеки от Windows или Linux. А чтобы их использовать нужно эти библиотеки с функциями поддерживать в нашем языке программирования. Это очень много работы и очень трудно будет. Получается, что легче с начала смоделировать некую окружающую среду, в которой программки, скомпилированные с нашим языком программирования, могли бы что-то делать и проверятся. Получается, что нужно написать какой-то эмулятор такой окружающей среды, который бежал, например, в Windows и мог бы запускать наши программки и мы видели потом что происходит. То есть, сделать так, чтобы наш язык программирования создавал программы, которые запускались бы на Windows, это практически не реально, потому что сильно много работы, и нужно ли это вообще, чтобы эти скомпилированные программы работали в Windows или Linux или где-то ещё? Тут на форуме упомянули KolibriOS, но там и так же нужно, чтобы язык программирования умел использовать их библиотеки и это тоже много работы. Вот по сути и вопрос. Где и как проверять наш язык программирования? И даже можно и спросить «что будем проверять»? Напишем программу, которая будет что-то рисовать? Или напишем программу, которая будет работать типа Консоль? Или будет просто выдавать число или какой-то результат после компиляции, что-то типа интерпретатор, который читал бы заданное уравнение или формулу и выдавал ответ?

0

2

Я думаю, что проверять программку, чтобы она делала что-то в Windows или Linux, не получится, потому что нужно тогда использовать библиотеки от Windows или Linux

И в чем проблема собственно? Не нужно ничего поддерживать. Самый простой способ написать интерпретатор - как выводить сообщение на экран это его проблемы, а не проблема языка. Допустим Вы пишите: print a или Вывести на экран строку А без разницы в нашем случае. Так вот язык не обязан знать все тонкости рисования букв на канве. Этим займется либо компилятор либо интерпретатор с языка программирования.

0

3

А мне всё таки кажется, что писать интерпретатор для вызывания разных функций операционной системы сильно большой шаг. То есть, это сильно трудная задача, которая займёт много времени, так как операционные системы очень многокомпонентные. Мне кажется, что нужно начать с очень простово, и придумать свой "ассемблер", для которого потом написать маленькую виртуальную машину. Эта виртуальная машина будет исполнять маленькие операции (ассемблер команды). И тут потом уже пишем свой высокий язык, который будет компилироваться в этот наш ассемблер, и потом исполнятся в нашей виртуальной машине. Думаю сразу встроить свой высокий язык в окружение чужой операционной системы сильно трудно и так далеко, что даже не видно как туда дойти. А компилировать в свой маленький ассемблер и проверять свои программы в простой своей виртуальной машине будет проще и интересней, так как всё просто и понятно будет.   :crazyfun:

Так что может быть давайте сначала сделаем свой маленький ассемблер, соберём все нужные атомарные операции, ну типа построим свою маленькую виртуальную архитектуру (регистры, модель памяти, и.т.д.), на которой будут бежать наши программы, которые сначала будут написаны на нашем ассемблере, а потом будем делать свой высокий язык, который будет компилировать в наш ассемблер. Думаю это был бы интересный и познавательный проект, и очень лёгкая первая ступень, по зубам и новичкам, так чтобы им всё было просто и понятно.  :crazy:

Отредактировано 84р (04-11-2011 01:53:52)

0

4

Так наоборот сложней :). Напиши виртуалку, да еще ассемблер. Вы пробовали когда-нибудь писать программы? Интерпретатор написать проще, чем имитировать свое окружение.

0


Вы здесь » Языки программирования с русским синтаксисом » Прочее... » Где и как проверять язык?