Сообщение Re[6]: Реализация языка программирования Mini C на Nitra от 05.03.2017 23:54
Изменено 06.03.2017 3:07 VladD2
Re[6]: Реализация языка программирования Mini C на Nitra
Здравствуйте, Arsen.Shnurkov, Вы писали:
AS>Именно. Всё что ты сделал — прочитал какую-то аннотацию.
Вообще-то не аннотацию, а вводную статью. Ну, и в разговорах не раз видел.
Открой мне глаза, если я заблуждаюсь. Объясни зачем мне может быть нужен этот формат.
AS>Две возможности:
AS>1) Чтобы сгенерировать двоичный код.
А зачем мне генерировать двоичный код? Для генерации исполнимого кода есть специальные API. Для дотнета это CCI Metadata, Mono cecil. Для Яыв тоже свой есть.
AS>2) как бонус — входной файл тоже можно описывать как бинарный и унифицировать преобразования.
Дык не нужны преобразования бинарных данных. Вот сделать DSL для того же MSIL-а смысл есть, хотя и не очень большой. Это позволило бы сделать код преобразования из АСТ в него более декларативным и высокоуровневым, позволило бы абстрагироваться от API через которое идет генерация. А использовать тут какой-то язык описания форматов попросту не нужно.
AS>Именно. Всё что ты сделал — прочитал какую-то аннотацию.
Вообще-то не аннотацию, а вводную статью. Ну, и в разговорах не раз видел.
Открой мне глаза, если я заблуждаюсь. Объясни зачем мне может быть нужен этот формат.
AS>Две возможности:
AS>1) Чтобы сгенерировать двоичный код.
А зачем мне генерировать двоичный код? Для генерации исполнимого кода есть специальные API. Для дотнета это CCI Metadata, Mono cecil. Для Яыв тоже свой есть.
AS>2) как бонус — входной файл тоже можно описывать как бинарный и унифицировать преобразования.
Дык не нужны преобразования бинарных данных. Вот сделать DSL для того же MSIL-а смысл есть, хотя и не очень большой. Это позволило бы сделать код преобразования из АСТ в него более декларативным и высокоуровневым, позволило бы абстрагироваться от API через которое идет генерация. А использовать тут какой-то язык описания форматов попросту не нужно.
Re[6]: Реализация языка программирования Mini C на Nitra
Здравствуйте, Arsen.Shnurkov, Вы писали:
AS>Именно. Всё что ты сделал — прочитал какую-то аннотацию.
Вообще-то не аннотацию, а вводную статью. Ну, и в разговорах не раз видел.
Открой мне глаза, если я заблуждаюсь. Объясни зачем мне может быть нужен этот формат.
AS>Две возможности:
AS>1) Чтобы сгенерировать двоичный код.
А зачем мне генерировать двоичный код? Для генерации исполнимого кода есть специальные API. Для дотнета это CCI Metadata, Mono cecil. Для Яыв тоже свой есть. Для нэйтив: LLVM API или просто генерация C-кода.
AS>2) как бонус — входной файл тоже можно описывать как бинарный и унифицировать преобразования.
Дык не нужны преобразования бинарных данных. Вот сделать DSL для того же MSIL-а смысл есть, хотя и не очень большой. Это позволило бы сделать код преобразования из АСТ в него более декларативным и высокоуровневым, позволило бы абстрагироваться от API через которое идет генерация. А использовать тут какой-то язык описания форматов попросту не нужно.
AS>Именно. Всё что ты сделал — прочитал какую-то аннотацию.
Вообще-то не аннотацию, а вводную статью. Ну, и в разговорах не раз видел.
Открой мне глаза, если я заблуждаюсь. Объясни зачем мне может быть нужен этот формат.
AS>Две возможности:
AS>1) Чтобы сгенерировать двоичный код.
А зачем мне генерировать двоичный код? Для генерации исполнимого кода есть специальные API. Для дотнета это CCI Metadata, Mono cecil. Для Яыв тоже свой есть. Для нэйтив: LLVM API или просто генерация C-кода.
AS>2) как бонус — входной файл тоже можно описывать как бинарный и унифицировать преобразования.
Дык не нужны преобразования бинарных данных. Вот сделать DSL для того же MSIL-а смысл есть, хотя и не очень большой. Это позволило бы сделать код преобразования из АСТ в него более декларативным и высокоуровневым, позволило бы абстрагироваться от API через которое идет генерация. А использовать тут какой-то язык описания форматов попросту не нужно.