Подтвердить что ты не робот

Готова ли scala.net?

Scala, похоже, тоже имеет реализацию .NET. Мне было интересно, если это полная реализация без каких-либо свободных концов или просто витрина.

Это важно, потому что приложение, которое мы собираемся разработать, должно иметь графический интерфейс Windows, помимо основной реализации в Интернете. Наличие языка, на котором основной код может быть перенесен между двумя реализациями, выглядит как создатель сделки.

Кто-нибудь работал над .NET-реализацией Scala? Любая обратная связь?

4b9b3361

Ответ 1

Я слышал, что новое финансирование было приобретено для стороны .NET, но на данный момент это большое и все большее расстояние от "готового производства" или даже "пригодного для использования". Не было регистрации, которая значимо коснулась стороны .NET за долгое время.

Обновление 15 января 2010: Недавнее сообщение в одном из списков scala.

От: Лукас Ритц

В Пт, 15 янв 2010 в 03:18, Нафтоли Гугенхайм писал (а):

Не уверен, что это то, что вы ищете, но я думаю, что H2 можно запустить на
.NET, согласно его документации/веб-сайту.
Если вы ищете двигатель базы данных, запрограммированный в Scala, лично я | ничего не слышал, но это ничего не значит.
Если вы имеете в виду ORM и т.д., То есть несколько. Вы можете использовать Lift Mapper даже в Интернете приложение без лифта (просто включите веб-кит и используйте банки IIRC).
Каков статус scala на .NET?

Мы работаем над загрузкой компилятора, и мы исправляем MSIL-Backend-Bugs на этом пути. EPFL предоставит компилятор, работающий на .NET(который использует IKVM.OpenJDK.Core.dll, по крайней мере, в первой версии)

Сейчас у нас есть кросс-компилятор, запущенный на JVM, и сокращенная версия scala -library.jar, которая работает на .NET.

Для некоторых частей мы будем полагаться на сообщество (например, переносить больше scala -library.jar на .NET).

Лукаса

Ответ 2

Мартин Одерски говорит в этом интервью SE Radio (январь 2011):

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

Он начинает говорить о .NET с отметкой в ​​15 минут.

Ответ 3

Wikipedia entry утверждает:

Существует альтернативная реализация для платформы .NET, но она не были обновлены. (править)

В "ограничениях" раздела часто задаваемых вопросов есть эта запись:

Работает ли Scala на .Net?

Да, текущий дистрибутив Scalaможет компилировать программу для .Net Платформа. Платформа .Net имеет много сходство с Java, но оно также много особенностей, поддержание этого порта является сложным задача. Версия MSIL/.Net Scalaна данном этапе реализует практически весь язык Scala, и большая часть стандартных библиотек. Один значительный ограничение заключается в том, что структурные типы еще не работает на .NET. Там все еще может быть быть проблемами при использовании, в частности, сложные обработчики исключений. Маленький количество библиотек недоступно из-за особенностей .Net и взаимодействие с другими .Net языки не поддерживаются. Для дальнейшего подробности, пожалуйста, обратитесь к этому (возможно, немного устаревшим) страницу документации.

руководство по использованию Scala с .NET говорит о версии 1.4, которая довольно устарела. С другой стороны, похоже, что документация была написана еще в 2008 году, в том числе страница "Scala на .NET: quirks" , которая звучит довольно важно.

Без собственного опыта это звучит так, будто поддержка хромает вместе, но что порт .NET на самом деле не является первоклассным гражданином. Тот факт, что нет "гудения" вокруг Scala на .NET(по сравнению с версией Java), также не ободряет. Это не похоже на то, что я хотел бы использовать для коммерческого программного обеспечения на данный момент. Конечно, это возможно, что это хорошо, и просто недостаточно хорошо продается. Если вы действительно заинтересованы в этой идее, я бы попросил список рассылки.

Почему бы не использовать Eclipse RCP для клиента Windows на базе Java/ Scala или использовать .NET для веб-приложения?

Ответ 4

В интервью scala -lang.org 18 июля 2011 года:

Могу ли я запустить программы Scala в .Net сейчас?
Miguel:
Простой ответ - да, с некоторыми ограничениями, которые будут устранены осенью.

Ссылка: Интерактивный просмотр
Ссылка: Бинарники

Ответ 5

В настоящий момент - нет, не очень, что очень жаль, так как это довольно забавный язык.

Программы типа Hello Hello, тонкие, даже причудливые трюки, такие как запись простого стека, где небольшая часть Python (тот же код под Jython или IronPython) управляет одним и тем же фрагментом Scala.

Все, что умеренно облагается налогом - компиляция scalac-net может и будет бросаться, даже если код не использует ничего вне пространства имен scala, а также строит и передает довольно исчерпывающий набор модульных тестов на JVM. Он может препятствовать созданию даже довольно простых сборок (даже если он построен с использованием .net 1.0, чтобы соответствовать низкой спецификации mscorlib, включенной в пакет scala -msil).

Мои тестовые тесты для "умеренного налогообложения" включали следующие реализации, предназначенные для компенсации текущих недостатков .net

  • порт в scala библиотеки С# для BigInteger (из codeplex, с моими собственными модульными тестами)
  • порт scala кода Java в scala.actors

Ответ 6

Как и в Scala Days 2010 в апреле, Мигель Гарсия работал над Scala.NET. Я считаю, что он работает над плагином визуальной студии, и я не уверен, насколько далеко продвинуты дела, однако вы можете найти доказательства его работы здесь:

http://lamp.epfl.ch/~magarcia/ScalaCompilerCornerReloaded/ http://www.sts.tu-harburg.de/people/mi.garcia/ScalaCompilerCorner/MixedSourceScalaCSharp.pdf http://www.sts.tu-harburg.de/people/mi.garcia/ScalaCompilerCorner/ScalaNetLearnsLINQTricks.pdf

Мигель сейчас делает свой postdoc в EPFL: http://lamp.epfl.ch/~magarcia/

Ответ Paul (extempore), вероятно, содержит более свежую информацию, но если бы мне было любопытно, я мог бы спросить Мигеля напрямую.

Ответ 7

DDJ: Планируется ли .NET-версия Scala?

МО: Да. Мы объявили об этом в июле. У нас есть проект, который на самом деле финансируемый Microsoft, для создания .NET-версии Scala. И у нас есть первая загрузочная версия компилятора, компилирующая себя на .NET. Есть еще работа, особенно для интеграции Visual Studio.

Интервью с Scala Мартин Одерский - 14 июля 2011 г.

Ответ 8

Глядя на SVN-репо, в пространстве .net определенно происходит какая-то активность. В 2.7.x был каталог dotnet-library, но это было в 2.8.x и trunk. Вместо этого существует каталог msil, который имеет некоторые нетривиальные вещи, которые происходят совсем недавно: 4 месяца назад по rytz.

Вся доступная документация, похоже, устарела, но, возможно, стоит рассказать одному из основных участников, каков текущий статус. Обратите внимание, что extempore (который уже ответил на это больше года назад), кажется, один из них.