2010-07-18 17 views

risposta

3

C'è un compilatore per il targeting un sottoinsieme di F # per FPGA, che credo sia un'implementazione non-.NET

http://www.avalda.com/

http://blogs.msdn.com/b/dsyme/archive/2008/10/24/from-parallel-f-to-parallel-fpgas-from-avalda.aspx

+0

Per quanto ne so, in realtà utilizza le citazioni di F # sotto la copertina (quindi è ancora la versione .NET standard del compilatore F #). Tuttavia, se ciò vale come "implementazione alternativa", vale la pena menzionare anche WebSharper (http://www.intellifactory.com/) che compila F # (citazioni) in JavaScript. –

3

Mono è un'implementazione di .net che comprende un compilatore C# (nonché un compilatore vb). Non è principalmente un'implementazione C#.

8

F # interattivo, fsi.exe, gira già su Mono, così come i programmi F # compilati.

+7

compilatore F # gira su Mono pure, ma questo è ancora .NET implementazione di F # (solo in esecuzione su Mono) –

9

Come altri hanno sottolineato, l'implementazione standard F # di Microsoft è solo un'applicazione .NET (CLI) che viene eseguita su più implementazioni di CLI (ovvero .NET e Mono). F # produce anche applicazioni .NET (CLI) come librerie che funzionano anche su .NET e Mono. Tuttavia, questo è ancora lo stesso implementazione CLI di F # (solo in esecuzione su diversi implementazione di CLI)

Per rispondere alla tua domanda -

  • Per quanto ne so, non c'è nessun altro tentativo implementare il compilatore F # per altre piattaforme/runtime.
  • F # condivide uno sfondo comune con OCaml, quindi il modo più semplice per ottenere un'altra implementazione di F # consiste nel prendere OCaml e aggiungere funzionalità specifiche di F # (e rimuovere le funzionalità specifiche di OCaml).
  • È possibile utilizzare solo la sotto-lingua condivisa e la cross-compilazione utilizzando sia F # che OCaml.

Inoltre, ci sono alcuni piani to release F# as open source, quindi potrebbe essere possibile che (in futuro), qualcuno porta F # per altre piattaforme come JVM che utilizzano la fonte (quando viene rilasciato).

+2

Per quello che vale, ho visto alcune macro di camlp4 per Ocaml che implementano pattern attivi, espressioni di calcolo e uso di spazi per l'ambito a livello di blocco. Con un certo grado di macro hacking, potresti scrivere OCaml con una sintassi F #. – Juliet

+0

Le macro di Camlp sono aperte? –

Problemi correlati