Информация об изменениях

Сообщение Re[3]: Синхронизация C++ исходника с Java и Python от 13.10.2015 5:52

Изменено 13.10.2015 6:01 enji

Здравствуйте, R.O. Prokopiev, Вы писали:


ROP>Но в рабочий код такие трюки тащить нельзя.


Ява-плюсы проблем практически не вызывают, если писать на подмножестве обоих языков. Питон-плюсы — немного препроцессора понадобится, плюс соглашение об отступах


FUNC(void, myFunc, (int, a)(float b)) {
  DECL(int) c = a + b;
  IF (a > b) {
    c = c - 2;
  }
  g(a, c);
}


Все это обрабатывается стандартным сишным препроцессором, плюс {} для питона убираются. Не так и страшно, на самом деле.

Это всяко проще сопровождать, чем какой-нить транслятор из си в питон, имхо. Ну и порог вхождения значительно ниже, бери и пиши Конечно, надо будет сделать обертки для функций из стандартной библиотеки, если таковые используются.
Re[3]: Синхронизация C++ исходника с Java и Python
Здравствуйте, R.O. Prokopiev, Вы писали:


ROP>Но в рабочий код такие трюки тащить нельзя.


Ява-плюсы проблем практически не вызывают, если писать на подмножестве обоих языков. Питон-плюсы — немного препроцессора понадобится, плюс соглашение об отступах


FUNC(void, myFunc, (int, a)(float b)) {
  DECL(int) c = a + b;
  IF (a > b) {
    c = c - 2;
  }
  g(a, c);
}


Все это обрабатывается стандартным сишным препроцессором, плюс {} для питона убираются. Не так и страшно, на самом деле.

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

Т.е. получается, что надо сделать АПИ для каждого языка, которое одинаково выглядит и скрывает нюансы стандартной библиотеки (выделение памяти — для плюсов будет умный указатель, для питона и явы — пустышки, и т.п.). Плюс макросы, которые скрывают нюансы синтаксиса.

ЗЫ на твой изврат с комментариями по ссылке это все ж не похоже