Есть ли быстрый язык, который поддерживает переносимые продолжения? - PullRequest
14 голосов
/ 14 ноября 2008

Я ищу быстрый язык (т. Е. Язык, который может быть скомпилирован изначально для достижения производительности не более чем в 3 или 4 раза медленнее, чем C), который поддерживает переносимые продолжения. Под этим я подразумеваю продолжение, которое можно сериализовать на одном компьютере и десериализовать на другом.

Я знаю, что SISC может сделать это (реализация Scheme на Java), но это медленно. То же самое для Rhino (реализация Javascript в Java).

Ответы [ 4 ]

8 голосов
/ 14 ноября 2008

Вы проверяли OCaml ? Он может быть скомпилирован и должен быть немного медленнее, чем C.

Продолжения и разделенный контроль

6 голосов
/ 05 октября 2009

Scala 2.8.0 разрешит продолжения, и они будут переносимыми.

5 голосов
/ 17 ноября 2008

Хотя я согласен с тем, что диалекты Caml могут быть отличным выбором, я чувствую, что должен упомянуть схему Gambit. Вместе с Termite, эрлангоподобной средой, она поддерживает сериализацию продолжений, отправку их по проводам и многое другое.

http://dynamo.iro.umontreal.ca/~gambit/wiki/index.php/Main_Page

Компилируется в C-код.

2 голосов
/ 14 ноября 2008

С помощью Apache JavaFlow можно создавать сериализуемые продолжения в Java - если вы идете по этому пути, то библиотека Swing Continuations по адресу:

http://www.exploringexcellence.com/swingcontinuations/download.html

делает кодирование намного приятнее.

...