2010-06-07 3 views
4

Я недавно изучил erlang и был заинтригован scala за его набор функций и простоту интерполяции с помощью java (и, возможно, .net) приложений. Я, наконец, изучаю актеров и задаюсь вопросом, есть ли действующий механизм, который в настоящее время работает в .net.Актеры в Scala.net

Я посмотрел на библиотеки, которые сошли с sbaz, и обнаружили, что есть scala.Concurrent, но нет scala.actors.Actor. Я попытался использовать scala.Concurrent.Channel, но не смог использовать! для отправки сообщений.

Мне просто интересно, если это то, что доступно в настоящее время, и если да, то как вы собираетесь его настроить.

ответ

7

Актеры Scala (и я думаю, что большинство абстракций параллелизма Scala) довольно привязаны к низкоуровневой поддержке параллелизма Java. Их части даже сильно связаны с JVM Sun и перейдут в деградированный режим на других JVM (есть копия ссылочной реализации jsr 166y, задерживающейся в кодовой базе Scala, которая зависит от частных API Sun).

Нарушение сцепления было бы возможно, но это был бы значительный проект. Это также может привести к некоторым компромиссам производительности, поскольку интерфейсы оболочки Scala должны быть предоставлены для общих конструкций, которые должны быть реализованы с использованием низкоуровневых API .NET или Java.

4

На данный момент Scala.net не является готовой к производству, и ей не хватает некоторых основных функций, таких как актеры и возможности синтаксического анализа.

this thread на форумах scala-lang.

Смежные вопросы