Автор Тема: Вопрос по биндингу ? Или что тут еще требуется?  (Прочитано 111379 раз)

vlad

  • Hero Member
  • *****
  • Сообщений: 1391
    • Просмотр профиля
Re: Вопрос по биндингу ? Или что тут еще требуется?
« Ответ #150 : Ноябрь 01, 2013, 03:04:58 pm »
И еще, у cmd  файла есть какое нибудь возвращаемое значение? Или как мне можно получить, код ошибки/успеха?

Лично я, когда у меня возникают подобные вопросы, переписываю батник на питон ;)

P.S. Считайте это рекламой питона.

valexey_u

  • Hero Member
  • *****
  • Сообщений: 3013
    • Просмотр профиля
Re: Вопрос по биндингу ? Или что тут еще требуется?
« Ответ #151 : Ноябрь 01, 2013, 03:06:24 pm »
Я таким образом могу модули независимо компилировать, или как в браузере надо, если есть импорт, то должен быть и модуль?

Нет, не можешь. Если бы были символьые файлы - тогда можно былор бы раздельно компилировать. Сейчас процесс выглядит так:
- на входе список файлов .ob, которые входят в твою программу
- в процессе компиляции если компилятор натыкается на IMPORT еще не скомпилированного файла .ob - он его компилит (процесс повторяется рекурсивно)
- все файлы можно не указывать, если они импортятся модулями из оригинального списка
- когда все скомпилировано генерится RTL$.js с нужной подеержкой времени исполнения для всех скомпилированных файлов

Я не считаю этот механизм правильным (можно не критиковать), просто на данном этапе это то, что мне нужно для переписывания кусков компилятора на оберон.

Ну, то есть в переводе на русский, если есть некий модуль Main который импортит еще модули A,B,C,D, которые в свою очередь импортят модуль Foo, то компилятору достаточно дать аргументом Main.ob, а остальное он по цепочке сам найдет (если они есть) и скомпилирует?
Y = λf.(λx.f (x x)) (λx.f (x x))

vlad

  • Hero Member
  • *****
  • Сообщений: 1391
    • Просмотр профиля
Re: Вопрос по биндингу ? Или что тут еще требуется?
« Ответ #152 : Ноябрь 01, 2013, 03:08:48 pm »
Файл ошибок при этом формируется, но пустой (хотя сообщение об ошибке выдается в консоль), на какое значение надо заменить errors в fs.writeFile ?

По идее должно работать. Посмотри у меня там используется fs.writeFileSync - оно точно работает.

vlad

  • Hero Member
  • *****
  • Сообщений: 1391
    • Просмотр профиля
Re: Вопрос по биндингу ? Или что тут еще требуется?
« Ответ #153 : Ноябрь 01, 2013, 03:34:19 pm »
То при изменении основной ветки если конфликтов не будет, ветка будет автоматически обновляться?

Автоматически - да, в том смысле, что тебе не придется самому мерджить.
Вручнок = тоже да, в том смысле, что тебе надо будет делать git pull или гуйню какую-нибудь запускать

vlad

  • Hero Member
  • *****
  • Сообщений: 1391
    • Просмотр профиля
Re: Вопрос по биндингу ? Или что тут еще требуется?
« Ответ #154 : Ноябрь 01, 2013, 03:41:09 pm »
Ну, то есть в переводе на русский, если есть некий модуль Main который импортит еще модули A,B,C,D, которые в свою очередь импортят модуль Foo, то компилятору достаточно дать аргументом Main.ob, а остальное он по цепочке сам найдет (если они есть) и скомпилирует?

Да.

adva

  • Sr. Member
  • ****
  • Сообщений: 385
    • Просмотр профиля
Re: Вопрос по биндингу ? Или что тут еще требуется?
« Ответ #155 : Ноябрь 01, 2013, 03:44:21 pm »
Ну, то есть в переводе на русский, если есть некий модуль Main который импортит еще модули A,B,C,D, которые в свою очередь импортят модуль Foo, то компилятору достаточно дать аргументом Main.ob, а остальное он по цепочке сам найдет (если они есть) и скомпилирует?
Как минимум, один импортируемый файл скомпилился, далее пока не проверял.

Но есть пожелание, можно ли, искать модули оберона для этого в заданных каталогах, да пусть хоть тот же NODE_PATH ? А то придется все файлы в одном месте держать, что не очень. И при этом либо чтобы соблюдалась структура каталогов, в выходном каталоге, либо можно компилить прям туда же, где лежат модули оберона (расширение то все равно другое)

valexey_u

  • Hero Member
  • *****
  • Сообщений: 3013
    • Просмотр профиля
Re: Вопрос по биндингу ? Или что тут еще требуется?
« Ответ #156 : Ноябрь 01, 2013, 03:47:08 pm »
И вот так плавно и не заметно мы переходим к обсуждению билд-системы для Оберона :-) А оттуда не далеко и до менеджера пакетов!

Дайошь все на autotools'ах!!1
Y = λf.(λx.f (x x)) (λx.f (x x))

vlad

  • Hero Member
  • *****
  • Сообщений: 1391
    • Просмотр профиля
Re: Вопрос по биндингу ? Или что тут еще требуется?
« Ответ #157 : Ноябрь 01, 2013, 03:47:46 pm »
Но есть пожелание, можно ли, искать модули оберона для этого в заданных каталогах

Все можно :) Просто не все сразу

vlad

  • Hero Member
  • *****
  • Сообщений: 1391
    • Просмотр профиля
Re: Вопрос по биндингу ? Или что тут еще требуется?
« Ответ #158 : Ноябрь 01, 2013, 03:50:34 pm »
И вот так плавно и не заметно мы переходим к обсуждению билд-системы для Оберона :-) А оттуда не далеко и до менеджера пакетов!

Дайошь все на autotools'ах!!1

ТруЪ обероновский инструментарий должен делать только на труЪ оберонах :) А не на старинны юниксовых костылях.

adva

  • Sr. Member
  • ****
  • Сообщений: 385
    • Просмотр профиля
Re: Вопрос по биндингу ? Или что тут еще требуется?
« Ответ #159 : Ноябрь 01, 2013, 03:57:44 pm »
Ладно, ладно, я умерю свой зуд :)

valexey_u

  • Hero Member
  • *****
  • Сообщений: 3013
    • Просмотр профиля
Re: Вопрос по биндингу ? Или что тут еще требуется?
« Ответ #160 : Ноябрь 01, 2013, 04:07:33 pm »
И вот так плавно и не заметно мы переходим к обсуждению билд-системы для Оберона :-) А оттуда не далеко и до менеджера пакетов!

Дайошь все на autotools'ах!!1

ТруЪ обероновский инструментарий должен делать только на труЪ оберонах :) А не на старинны юниксовых костылях.
Ну, вообще, наверно имеет смысл посмотреть как это сделано у свежих языков - у Go, Haskell и Modula-3. У них у всех все весьма прилично с точки зрения сборки.
Y = λf.(λx.f (x x)) (λx.f (x x))

adva

  • Sr. Member
  • ****
  • Сообщений: 385
    • Просмотр профиля
Re: Вопрос по биндингу ? Или что тут еще требуется?
« Ответ #161 : Ноябрь 02, 2013, 03:28:02 am »
Выявил ошибку (?): если вдруг окажется, что в NODE_PATH указан и oberon.js и выходной каталог, то ругается на метод RTL$.assert . Похоже потому, что два RTL$.js файла образуются

adva

  • Sr. Member
  • ****
  • Сообщений: 385
    • Просмотр профиля
Re: Вопрос по биндингу ? Или что тут еще требуется?
« Ответ #162 : Ноябрь 02, 2013, 03:29:33 am »
И еще кажется юникодную кодировку файла не воспринимает. Только ANSI ?

adva

  • Sr. Member
  • ****
  • Сообщений: 385
    • Просмотр профиля
Re: Вопрос по биндингу ? Или что тут еще требуется?
« Ответ #163 : Ноябрь 02, 2013, 05:22:46 am »
Подскажите, пожалуйста, куда в node.js надо добавить строку, чтобы она в скомпилированно файле попала в первую строку?
Если в prolog добавляю, то в случае наличия require(RTL ...), она оказывается ниже него

adva

  • Sr. Member
  • ****
  • Сообщений: 385
    • Просмотр профиля
Re: Вопрос по биндингу ? Или что тут еще требуется?
« Ответ #164 : Ноябрь 02, 2013, 05:32:43 am »
И еще у меня при выполнении ругается на отсутсвие exports . Это что-то глобальное для node?