Нет, не путаю. Мысль дала осечку, отвлекся на что-то другое, вот так и получилось, что вместо JavaScript написал просто — Джава.
Как бы то ни было.
Хочу написть комплятор какого-нибудь языка. «Какого-нибудь», ограничено тем, что наиболее распространенные ныне существующие языки за время своего эволюционирования обрасли... хм... функциональностью. Реализовать такое — чертовски сложно, если вообще возможно одному человеку.
Вариант — компилятор для своего языка программирования. Но, как я ни пытался придумать чего-нибудь хорошего, в силу инерционности мышления (ну нет ничего лучше Си:) оригинального ничего не придумывалось. К тому же, в Делфи есть такая штука, как импортирование функций из Длл — вот это и хотелось бы включить в язык. И так, чтобы стиль записи не был противоречивым (смешать подобное с функциями Си — уродство). Вот.
На вопросы
Полное описание функции выглядит так:
functions (.new: «MyFunction» (.param: «Param1» (.type: types. «int» ) .param: «Param2» (.type: types. «short» ) .rtype: (.type: types. «dword» )
)
Ну и там где-то следует body.
Все очень примерно. А скобки нужны для того, чтобы отделить... хм... родителей от сыновей. Дело в том, что каждый доступ через точку возвращает тип с какими-то свойствами... Так мы группируем как бы... Н-да.
Как бы то ни было.
Хочу написть комплятор какого-нибудь языка. «Какого-нибудь», ограничено тем, что наиболее распространенные ныне существующие языки за время своего эволюционирования обрасли... хм... функциональностью. Реализовать такое — чертовски сложно, если вообще возможно одному человеку.
Вариант — компилятор для своего языка программирования. Но, как я ни пытался придумать чего-нибудь хорошего, в силу инерционности мышления (ну нет ничего лучше Си:) оригинального ничего не придумывалось. К тому же, в Делфи есть такая штука, как импортирование функций из Длл — вот это и хотелось бы включить в язык. И так, чтобы стиль записи не был противоречивым (смешать подобное с функциями Си — уродство). Вот.
На вопросы
Полное описание функции выглядит так:
functions (.new: «MyFunction» (.param: «Param1» (.type: types. «int» ) .param: «Param2» (.type: types. «short» ) .rtype: (.type: types. «dword» )
)
Ну и там где-то следует body.
Все очень примерно. А скобки нужны для того, чтобы отделить... хм... родителей от сыновей. Дело в том, что каждый доступ через точку возвращает тип с какими-то свойствами... Так мы группируем как бы... Н-да.