43 votes

La production de scala.net est-elle prête?

Scala semble également avoir une implémentation .NET. Je me demandais s'il s'agissait d'une implémentation complète, sans faille ou simplement comme une vitrine.

C'est important, car l'application que nous sommes sur le point de développer devrait avoir une interface graphique Windows en plus de la mise en œuvre principale sur le Web. Avoir un langage dans lequel le code principal peut être transféré entre deux implémentations ressemble à un deal maker.

Quelqu'un a travaillé sur l'implémentation .NET de Scala? Tous les commentaires?

27voto

extempore Points 8016

J'ai entendu parler d'un nouveau financement a été acquis pour la .NET, mais pour le moment c'est une grande et l'augmentation de la distance à partir de "production ready" ou même "utilisable". Il n'a pas été un check-in, qui véritablement touché le .NET dans un temps long.

Mise à jour 15 janvier 2010: Un récent message à un de la scala listes.

De: Lukas Rytz

Sur Ven Jan 15, 2010 à 03:18, Naftoli Gugenheim a écrit:

Vous ne savez pas si c'est ce que vous cherchez, mais je pense que H2 peut être exécuté sur
.NET, conformément à sa documentation/site web.
Si vous êtes à la recherche d'un moteur de base de données programmées dans Scala, personnellement, je
n'avez pas entendu parler de tout, mais cela ne veut pas dire quoi que ce soit.
Si vous voulez dire un ORM etc. il y a quelques. Vous pouvez utiliser l'Ascenseur de Mappeur de même dans un
non-Lift application (il suffit d'inclure le webkit et util pots IIRC).
Quel est le statut de la Scala .NET?

Nous travaillons sur l'amorçage du compilateur et nous sommes en train de corriger MSIL-Backend-Bugs sur le chemin. L'EPFL fournira un compilateur en cours d'exécution sur .NET (qui utilise IKVM.OpenJDK.Core.dll, au moins dans une première version)

Maintenant, nous avons un cross-compilateur en cours d'exécution sur la JVM, et une version réduite de scala-library.jar qui fonctionne sur .NET.

Pour certaines parties, nous comptons sur la communauté (par exemple, le portage de plus de scala-library.jar .NET).

Lukas

12voto

Brownie Points 3702

Martin Odersky a déclaré dans cette interview accordée à SE Radio (janvier 2011):

Je ne veux pas vous donner une heure d'arrivée approximative, mais cela devrait certainement être cette année, y compris le support visuel studio.

Il commence à parler de .NET après 15 minutes.

9voto

Jon Skeet Points 692016

L' entrée de Wikipedia revendications:

Une alternative existe pour la .NET plate-forme, mais il n'a pas été gardé jusqu'à ce jour. (citation nécessaire)

La section"limitations" de la FAQ a cette entrée:

Ne Scala de travail .Net?

Oui, le courant de la Scala de distribution pouvez compiler le programme pour le .Net la plate-forme. L' .Net plate-forme a de nombreux les similitudes de Java, mais il a également de nombreuses particularités, la prise de le maintien de ce port est d'un compliqué de la tâche. Le MSIL/.Net version de Scala met en œuvre, à ce stade, pratiquement le toute la Scala de la langue, et la plupart des bibliothèques standard. Une importante limitation est que les types de construction ne pas encore de travail .NET. Il peut encore des problèmes lors de l'utilisation en particulier complexe des gestionnaires d'exception. Un petit nombre de bibliothèques ne sont pas disponibles en raison des particularités de l' .Net, et l'interaction avec les autres .Net langues est pas pris en charge. Pour de plus amples de détails, veuillez vous référer à cette (peut-être un peu dépassé) page de documentation.

Le guide d'utilisation de Scala .NET parle de la version 1.4, qui est un peu vieux maintenant. D'autre part, ça ressemble à de la documentation a été écrit récemment, en 2008, y compris la "Scala .NET: bizarreries" de la page qui semble assez important.

Sans avoir aucune expérience de moi-même, il semble que le soutien est à la traîne le long, mais que l' .Port NET n'est pas vraiment un citoyen de première classe. Le fait qu'il n'y a pas de "buzz" autour de la Scala .NET (en comparaison avec la version Java) n'est pas encourageant. Il ne ressemble pas à quelque chose que je voudrais utiliser pour les logiciels commerciaux pour le moment. Bien sûr, il est possible que c'est beau, et tout simplement pas bien commercialisé. Si vous êtes vraiment vif sur l'idée, je vais demander sur une liste de diffusion.

Pourquoi ne pas utiliser l' Eclipse RCP pour une Java/Scala Windows client, ou de l'utilisation .NET pour l'application web?

4voto

Brownie Points 3702

Dans une interview sur scala-lang.org du 18 juillet 2011:

Puis-je exécuter des programmes Scala sur .Net maintenant?
Miguel :
La réponse simple est oui, avec quelques limitations qui seront supprimées d’ici la chute.

Lien: l'interview
Lien: Binaires

3voto

Steve Gilham Points 7829

Pour le moment -- non, pas vraiment, ce qui est un grand dommage, car c'est tout de même un plaisir de la langue.

"Bonjour le monde" type de programmes, les beaux-même fantaisie comme la rédaction d'une simple pile où un petit morceau de Python (le même code sous Python ou IronPython) disques de la même pièce de la Scala.

Rien modérément taxation -- le scalac-net compilation peut et va le jeter, même si le code ne pas utiliser quoi que ce soit à l'extérieur de la scala de noms, et établit et transmet un assez exhaustive de tests unitaires sur la JVM. Il peut rechigner à l'édifice à l'encontre de même assez simple assemblées (même si elle est construite à l'aide .net 1.0, pour correspondre à la faible spec de la mscorlib inclus dans le scala-msil bundle).

Mon test-ensembles pour "modérément taxation" ont inclus les implémentations suivantes destinées à compenser actuel manque .net

  • un port de Scala en C# d'un bibliothèque pour BigInteger (à partir de codeplex, avec mes propres tests unitaires)
  • un port de Scala du code Java dans scala.les acteurs

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X