‮Сдвиг по фазе (kincajou) wrote,
‮Сдвиг по фазе
kincajou

От нефиг делать

пока есть время, вернулся к своему старому проекту - встраиваемый интерпретируемый язык для микроконтроллерных дивайсов. За основу взял то, что предлагает А.В.Костельцев в своей книжке и почти ничего не изобретаю, окромя дополнительных встроенных типов -- double-то мне практически не нужен, а вот битовые-байтовые-словные типа очень даже нужны. И булев тип. И примитивы для доступа к железу. И ещё что-то. И встроенный же доступ к моей собственной файловой системе, которая тоже встроена туда же, куда и всё :)

Это чтобы получить:
а) более-менее полноценную возможность писать скрипты для маленьких устройств, одновременно ещё и командную строку как бы нахаляву;
б) максимальную отвязку от "железной" части, одновременно с этим имея полный над ней контроль (т.е., например, не писать обработчик прерывания на приём байта по последовательному порту, а иметь в программе обработчик соответствующего СОБЫТИЯ);
в) ??????
г) скилл Крутизна +5.

Дабы экономить ресурсы (чтоб не терять драгоценные такты на интертрепацию), код сначала компилится в некий промежуточный байт-код, максимально компактный, и уже потом исполняется.

Конечно, определёная потеря в производительности есть, это неизбежно из-за оверхэда. На критических участках без нормального программирования не обойтись, но во многих иных случаях максимальная производительность не нужна, хватит и просто большой (а если какой-нибудь пользовательский интерфейс писать, так там вообще незаметно, чтоб что-то тормозило - человек всё равно медленнее).

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

P.S. попутно обнаружилось нечто странное: оказывается, 1 поделить на 2 будет не 0.5, а 0.500000001495465973, но если это умножить на 2, то снова получается 1. Нипанятна.
Tags: приключения Электроника
Subscribe

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 18 comments