Scala является своеобразным языком программирования, поскольку он предназначен как для JVM, так и для CLR. Но каковы преимущества? Стоит ли рассматривать его как жизнеспособную альтернативу языку F #?
Каковы преимущества использования Scala в .Net?
Ответ 1
Большинство обращений к веб-поиску, которые я вижу из "Scala.NET", относятся к 2008 или в начале 2009 года. Scala - интересный язык, но мое откровенно плохо информированное впечатление заключается в том, что это не "жизнеспособный" альтернатива "для промышленного приложения .NET.
Я вижу, что люди часто говорят о написании приложений, которые переносятся через CLR и JVM, и это хорошая идея в теории, но на практике я не вижу никаких доказательств того, что кто-то сделал это для реалов. (Если люди знают примеры, отправьте их.)
Ответ 2
Scala на .NET - это постоянная работа во главе с Мигелем Гарсией. Последнее состояние состоит в том, что мы почти способны загружать .NET. Я не сомневаюсь, что из этого выйдет что-то твердое, но еще слишком рано делать обязательства, когда.
В долгосрочной перспективе я не вижу Scala в качестве конкурента F # или С#. Было бы трудно конкурировать на равных с языками, которые изначально поддерживаются Microsoft. С другой стороны, я вижу некоторое притяжение Scala для магазинов, которые хотят работать как на .NET, так и на JVM.
Ответ 3
Мне очень нравится Scala, но в текущем состоянии его реализации .NET: Big NO. Некоторое время он не обновлялся. Версия JVM действительно намного впереди. Я не вижу Scala порт .NET созревания, достаточного для соответствия его JVM-аналогу в обозримом будущем.
Вам будет лучше с F #.
Ответ 4
Пособие по сравнению с чем?
Преимущества по сравнению с другим языком, который нацелен только на одну из больших платформ? Хорошо, вы можете работать на обеих платформах; доступ к библиотекам с обеих платформ без переключения языка;
Преимущество использования .Net вместо JVM? Хорошо, если вы работаете в тяжелой среде .Net, это может быть скорее требованием, чем преимуществом.
Пособие по сравнению с F #? Я не знаю F #, но когда вы живете в .Net-ориентированном мире, я бы наверняка знал, как для F # будет легче доступно, чем для Scala в среде CLR. Поэтому, предполагая, что два языка несколько сопоставимы, я предпочел бы F #
Ответ 5
Насколько я знаю, никто пока не использует Scala.NET. Если люди хотят запускать код Scala на .NET, лучшим вариантом является IKVM. И Scala отлично работает на IKVM, из всех отчетов.
Продолжается работа над Scala.NET, и похоже, что она будет жизнеспособной (с полной поддержкой Visual Studio) "в конце концов". Этот является самым информативным ресурсом, Miguel Garcia в настоящее время работает LAMP, и я думаю, что он финансируется грантом Microsoft для улучшения Scala.NET до готовность производства. Но это можно было бы забыть... по крайней мере, есть работа с августа 2010 года, поэтому ее не умерло.
Из-за "умного" предотвращения спама, я могу опубликовать только одну ссылку. Таким образом, вам придется искать в Google "IKVM" и "IKVM scala", чтобы узнать об этом. Ссылка, которую я включил, сложнее всего найти.