Oberon space

General Category => Общий раздел => Тема начата: ilovb от Ноябрь 21, 2012, 04:39:37 pm

Название: Neko
Отправлено: ilovb от Ноябрь 21, 2012, 04:39:37 pm
Интересная штука однако:
http://nekovm.org/
спека:
http://nekovm.org/specs

Спасибо DIzer'у за это наводку  ;)
Название: Re: Neko
Отправлено: ilovb от Ноябрь 21, 2012, 04:58:44 pm
Goodbye Neko VM, Hello Lua  :P
http://presidentbeef.github.com/brat/2010/05/10/switching-vms.html
Название: Re: Neko
Отправлено: DIzer от Ноябрь 21, 2012, 05:26:02 pm
Goodbye Neko VM , Hello Lua  :P
http://presidentbeef.github.com/brat/2010/05/10/switching-vms.html
Молодец, ilovb  ;D так и думал что вы ее найдете..  однако, идеальных платформ нет,  да и усилия потраченные на создания компилятора и инфраструктуры  разнятся  от платформы к платформе. весь вопрос в том для чего вы это дело затеваете.. если just for fun = то лучше делать туда где проще... больше шансов получить на выходе нечто юзабельное без предварительного  принятия на грудь для храбрости...  ;)
Название: Re: Neko
Отправлено: valexey_u от Ноябрь 21, 2012, 05:27:34 pm
Goodbye Neko VM , Hello Lua  :P
http://presidentbeef.github.com/brat/2010/05/10/switching-vms.html
Молодец, ilovb  ;D так и думал что вы ее найдете..  однако, идеальных платформ нет,  да и усилия потраченные на создания компилятора и инфраструктуры  разнятся  от платформы к платформе. весь вопрос в том для чего вы это дело затеваете.. если just for fun = то лучше делать туда где проще... больше шансов получить на выходе нечто юзабельное без предварительного  принятия на грудь для храбрости...  ;)
Тогда предлагаю msp430! Куда уж проще то :-D Если for fun.
Название: Re: Neko
Отправлено: DIzer от Ноябрь 21, 2012, 05:29:44 pm

Тогда предлагаю msp430! Куда уж проще то :-D Если for fun.
тык многие просто заценить результат не смогут ввиду специфичности платформы. А что Астроба под нее не компилит?
Название: Re: Neko
Отправлено: valexey_u от Ноябрь 21, 2012, 05:30:48 pm

Тогда предлагаю msp430! Куда уж проще то :-D Если for fun.
тык многие просто заценить результат не смогут ввиду специфичности платформы.
Платформа с доставкой стоит 4 бакса :-)

А что Астроба под нее не компилит?
Конечно нет. Атсроба компилит только под армы. На чето-то меньшее оно не согласно :-)
Название: Re: Neko
Отправлено: DIzer от Ноябрь 21, 2012, 05:37:22 pm

Тогда предлагаю msp430! Куда уж проще то :-D Если for fun.
тык многие просто заценить результат не смогут ввиду специфичности платформы.
Платформа с доставкой стоит 4 бакса :-)

А что Астроба под нее не компилит?
Конечно нет. Атсроба компилит только под армы. На чето-то меньшее оно не согласно :-)
1. Aaaх  отгуглил - это детище TI, сорри , за невежество это совсем не мое..
2. Ну, ИМХО мало кто выкинет даже бакс за удовольствие понаблюдать это в действии..
Хотя почему бы и нет? может даже найдется с десяток другой маргиналов согласных на покупку софта...
Название: Re: Neko
Отправлено: DIzer от Ноябрь 21, 2012, 05:40:32 pm
 но боюсь,  Алексей, что вы предлагаете совсем не то что хотел сделать инициатор топика...
Название: Re: Neko
Отправлено: ilovb от Ноябрь 21, 2012, 05:46:04 pm
Имхо для оберона проще всего замутить свой байткод и виртуальную машину. Что то вроде P-кода.
Повторить путь первых паскалей короче  ;)
Реализацию виртуальной машины можно будет под все мыслимые платформы замутить. Там исходник то как помнится строк 300 от силы  ;D
Название: Re: Neko
Отправлено: valexey_u от Ноябрь 21, 2012, 05:52:31 pm
Имхо для оберона проще всего замутить свой байткод и виртуальную машину. Что то вроде P-кода.
Повторить путь первых паскалей короче  ;)
Реализацию виртуальной машины можно будет под все мыслимые платформы замутить. Там исходник то как помнится строк 300 от силы  ;D
Oxford Oberon Compiler? :-) Там же есть уже все. В том числе ЖИД-компилятор.
Название: Re: Neko
Отправлено: kemiisto от Ноябрь 21, 2012, 06:03:54 pm
Имхо для оберона проще всего замутить свой байткод и виртуальную машину. Что то вроде P-кода.
Повторить путь первых паскалей короче  ;)
Реализацию виртуальной машины можно будет под все мыслимые платформы замутить. Там исходник то как помнится строк 300 от силы  ;D
Будете делать свою VM - повторите не только путь, но и судьбу паскалей. R.I.P.
Название: Re: Neko
Отправлено: DIzer от Ноябрь 21, 2012, 06:07:12 pm
Имхо для оберона проще всего замутить свой байткод и виртуальную машину. Что то вроде P-кода.
Повторить путь первых паскалей короче  ;)
Реализацию виртуальной машины можно будет под все мыслимые платформы замутить. Там исходник то как помнится строк 300 от силы  ;D
Будете делать свою VM - повторите не только путь, но и судьбу паскалей. R.I.P.
А с другой стороны, что не сделаешь just for fun...
Название: Re: Neko
Отправлено: valexey_u от Ноябрь 21, 2012, 06:10:15 pm
Имхо для оберона проще всего замутить свой байткод и виртуальную машину. Что то вроде P-кода.
Повторить путь первых паскалей короче  ;)
Реализацию виртуальной машины можно будет под все мыслимые платформы замутить. Там исходник то как помнится строк 300 от силы  ;D
Будете делать свою VM - повторите не только путь, но и судьбу паскалей. R.I.P.
А с другой стороны, что не сделаешь just for fun...
Я на многое готов for fun, но на r.i.p не готов, извините :-)
Название: Re: Neko
Отправлено: DIzer от Ноябрь 21, 2012, 06:14:20 pm
Имхо для оберона проще всего замутить свой байткод и виртуальную машину. Что то вроде P-кода.
Повторить путь первых паскалей короче  ;)
Реализацию виртуальной машины можно будет под все мыслимые платформы замутить. Там исходник то как помнится строк 300 от силы  ;D
Будете делать свою VM - повторите не только путь, но и судьбу паскалей. R.I.P.
А с другой стороны, что не сделаешь just for fun...

Я на многое готов for fun, но на r.i.p не готов, извините :-)
это потому что вам еще рано... ИМХО нужно видеть удовольствие во всем.. ;D
Название: Re: Neko
Отправлено: ilovb от Ноябрь 21, 2012, 06:34:28 pm
Имхо для оберона проще всего замутить свой байткод и виртуальную машину. Что то вроде P-кода.
Повторить путь первых паскалей короче  ;)
Реализацию виртуальной машины можно будет под все мыслимые платформы замутить. Там исходник то как помнится строк 300 от силы  ;D
Oxford Oberon Compiler? :-) Там же есть уже все. В том числе ЖИД-компилятор.
Я сильно не погружался, но оно вроде сугубо учебное со специфическими особенностями. Да и не интересно оно for fun  :)
Название: Re: Neko
Отправлено: valexey_u от Ноябрь 21, 2012, 06:38:39 pm
Имхо для оберона проще всего замутить свой байткод и виртуальную машину. Что то вроде P-кода.
Повторить путь первых паскалей короче  ;)
Реализацию виртуальной машины можно будет под все мыслимые платформы замутить. Там исходник то как помнится строк 300 от силы  ;D
Oxford Oberon Compiler? :-) Там же есть уже все. В том числе ЖИД-компилятор.
Я сильно не погружался, но оно вроде сугубо учебное со специфическими особенностями. Да и не интересно оно for fun  :)
Как будто у нас получится не сугубо учебное :-D
Название: Re: Neko
Отправлено: ilovb от Ноябрь 21, 2012, 06:39:27 pm
Ну тык зато своими руками.  :)
Название: Re: Neko
Отправлено: Губанов Сергей Юрьевич от Ноябрь 23, 2012, 08:32:50 am
Имхо для оберона проще всего замутить свой байткод и виртуальную машину. Что то вроде P-кода.
Повторить путь первых паскалей короче  ;)
Реализацию виртуальной машины можно будет под все мыслимые платформы замутить. Там исходник то как помнится строк 300 от силы  ;D
Я думаю компилировать надо в промежуточный язык (не являющийся кодом никакой виртуальной машины). Разница между исходным и промежуточным языками в том, что исходный язык - текстовый (оптимизированный для человека), а промежуточный - бинарный (оптимизированный для быстрой загрузки JIT компилятором). Но не смотря на то, что он бинарный, он содержит всю необходимую информацию об исходной программе. Затем надо будет написать JIT компилятор. Вот JIT компилятор на первое время (по причине очкования) можно сделать в байт-код собственной виртуальной машины.

То есть надо написать три программы
1) Транслятор "текстовый язык"-->"бинарный язык"
2) JIT компилятор "бинарный язык" --> "байт код"
3) Виртуальная машина исполняющая байт код.

Если договориться о языке промежуточного бинарного представления и о байткоде. То эти три программы можно писать независимо и параллельно, тремя разными людьми.

Четвёртый человек может в это же время писать JIT компилятор во что-то другое, хоть в натив.