2010-08-27 16 views
16

Scala è un linguaggio di programmazione peculiare in quanto è rivolto sia a JVM che a CLR. Ma quali sono i benefici? Vale la pena considerarlo una valida alternativa al linguaggio F #?Quali sono i vantaggi dell'uso di Scala in .Net?

+1

Domanda correlata: http://stackoverflow.com/questions/168428/f-and-scala-comparison –

+3

Ultimo aspetto, Scala non ha nemmeno lavorato su CLR per anni, né tantomeno utilizzato. –

risposta

13

La maggior parte dei risultati della ricerca web che vedo da "Scala .NET" sono del 2008 o dell'inizio del 2009. Scala è una lingua interessante, ma la mia ammissione è l'impressione informata è che non è una "alternativa valida" per un'applicazione .NET con resistenza industriale.

vedo la gente parla di passaggio di scrivere applicazioni che sono portabili su CLR e JVM, ed è una bella idea, in teoria, ma in pratica non vedo alcuna prova che qualcuno ha fatto questo per reali. (Se le persone conoscono degli esempi, per favore pubblicali.)

+5

+1 solo per l'uso delle parole "per i veri" in una frase.: P –

+1

Per srslys (15 caratteri) – Juliet

3

Il vantaggio rispetto a cosa?

Il vantaggio rispetto a una lingua diversa, che si rivolge solo a una delle grandi piattaforme? Bene, puoi correre su entrambe le piattaforme; accedere alle librerie da entrambe le piattaforme senza cambiare lingua;

Il vantaggio dell'esecuzione su .Net anziché su JVM? Bene, se lavori in un ambiente pesante .Net questo potrebbe essere più un requisito che un beneficio.

Il vantaggio rispetto a F #? Non conosco F #, ma quando vivi in ​​un mondo .Net centric, credo che sapere come F # sarà più facile allora disponibile per Scala su CLR. Quindi, supponendo che le due lingue siano in qualche modo comparabili, preferirei F #

9

Amo davvero Scala ma nello stato attuale della sua implementazione .NET: Un grande NO. Non è stato aggiornato da un po '. La versione JVM è davvero molto più avanti. Non vedo la porta .NET di Scala abbastanza matura da corrispondere alla sua controparte JVM in un futuro prevedibile.

Sarebbe meglio con F #.

2

Per quanto ne so, nessuno utilizza ancora Scala.NET ancora. Se le persone vogliono eseguire il codice Scala su .NET, l'opzione migliore è IKVM. E Scala funziona perfettamente con IKVM, da tutti i rapporti.

C'è ancora lavoro in corso su Scala.NET, e sembra che sarà possibile (con pieno supporto di Visual Studio) "alla fine". This è la risorsa più informativa, Miguel Garcia è attualmente impiegato da LAMP e credo sia finanziato da una concessione Microsoft per migliorare Scala.NET allo stato di produzione pronta. Ma questo potrebbe essere erroneamente ricordato ... almeno, c'è lavoro da agosto 2010, quindi non è morto.

A causa dello stack overflow "intelligente" prevenzione dello spam, posso solo pubblicare un link. Dovrai quindi cercare su Google "IKVM" e "IKVM scala". Il link che ho incluso è il più difficile da trovare.

12

Scala su .NET è uno sforzo in corso guidato da Miguel Garcia. L'ultimo stato è che siamo quasi in grado di eseguire il bootstrap su .NET. Non ho dubbi che qualcosa di solido verrà fuori da questo, ma è ancora troppo presto per prendere impegni quando.

A lungo termine, non vedo Scala come un concorrente di F # o C#. Sarebbe difficile competere su un piano di parità con linguaggi che sono supposti nativamente da Microsoft. D'altra parte, vedo qualche attrazione di Scala per i negozi che vogliono eseguire su .NET e sulla JVM.

+0

Qual è il problema con la concorrenza con F #? O per esprimerlo in modo diverso: quanto è lontano dal bootstraping in una lingua di lavoro? –

+1

@Martin - Scala sul CLR è un linguaggio .NET di prima classe in cui posso facilmente utilizzare il framework .NET completo o sarà semplicemente Scala e le classi Java che utilizzano IKVM.NET per essere eseguito in cima a il CLR? È solo una soluzione di compatibilità per l'esecuzione di app JVM su CLR quando necessario o è destinato a essere un linguaggio reale per gli sviluppatori .NET? – Justin

Problemi correlati