2009-07-31 5 views
7

Sto usando F # su un Mac e mi chiedo kbow se c'è F # IDE che funziona su mono (non un editor per scopi generici). Sembra che ci sia un addon for MonoDelvelop, ma penso che potrebbe non essere abbastanza maturo. Qualche suggerimento ?Esiste un IDE F # che funziona su Mono?

+0

Non è F # stesso non completamente maturo, non è un linguaggio di ricerca? – Dykam

+0

IIRC, il team del prodotto di Visual Studio ne ha assunto la custodia in questa fase e apparirà alla pari con C# e VB nella prossima versione di Visual Studio. Quindi no, non è un linguaggio di ricerca, è nella fase beta della sua prima versione come prodotto appropriato. – harms

risposta

7

testo forte In realtà ho iniziato a lavorare su una nuova associazione F # per MonoDevelop. Pubblicherò le notizie non appena avrò qualcosa che valga la pena condividere.

Strano, sembra che non posso aggiungere un commento alla mia risposta ... In ogni caso, vorrei iniziare con funzionalità di base che consente di creare e compilare progetti F #. Quando ciò sarà fatto, cercherò di implementare cose come il completamento automatico e cose del genere.

Aggiornamento: A causa di una recente aggiunta alla nostra famiglia, non sono stato in grado di completare il mio lavoro. Fortunatamente qualcun altro ha raccolto lo sforzo ei risultati del suo lavoro sono qui: http://github.com/vasili/FSharpBinding

+0

Questa è una grande notizia! Hai intenzione di supportare il completamento automatico? –

+0

Bello! Se hai bisogno di un tester, ci sono io. – Gustavo

+0

È bello sapere ... voglio aiutarti;) – wishi

4

Penso che l'addon MonoDevelop sarà la soluzione migliore. Sfortunatamente, a questo punto, chiedere un compilatore F # maturo (anche su Windows) è un po 'difficile.

Non è nemmeno rilasciato ufficialmente su Windows (CTP è ancora per VS 2008 e il 2010 è ancora Beta).

2

Io uso Aquamacs e alcuni ganci in modalità Tuareg. - No .Net completamento (c'è una modalità C# qui), ma dabrev modalità:

;; F# specific configs 
;; hooked ocaml tuareg mode. If you do ML with mono e. g. 
(add-to-list 'load-path "~/.elisp/tuareg-mode") 
    (autoload 'tuareg-mode "tuareg" "Major mode for editing Caml code" t) 
    (autoload 'camldebug "camldebug" "Run the Caml debugger" t) 
    (autoload 'tuareg-imenu-set-imenu "tuareg-imenu" 
     "Configuration of imenu for tuareg" t) 
    (add-hook 'tuareg-mode-hook 'tuareg-imenu-set-imenu) 
    (setq auto-mode-alist 
     (append '(("\\.ml[ily]?$" . tuareg-mode) 
       ("\\.topml$" . tuareg-mode)) 
        auto-mode-alist)) 

;; now we use *.fs files for this mode 
(setq auto-mode-alist (cons '("\\.fs\\w?" . tuareg-mode) auto-mode-alist)) 

(add-hook 'tuareg-mode-hook 
     '(lambda() 
     (set (make-local-variable 'compile-command) 
     (concat "fsc \"" 
      (file-name-nondirectory buffer-file-name) 
      "\"")))) 

(defun tuareg-find-alternate-file() 
    "Switch Implementation/Interface." 
    (interactive) 
    (let ((name (buffer-file-name))) 
    (if (string-match "\\`\\(.*\\)\\.fs\\(i\\)?\\'" name) 
    (find-file (concat (tuareg-match-string 1 name) 
       (if (match-beginning 2) ".fs" ".fsi")))))) 

Ottiene l'evidenziazione della sintassi da Ocaml (molto simile) e si occupa degli spazi bianchi. Ho avuto alcuni problemi a forgiare l'FSI da Shell, perché sembra che ci sia un ritardo durante la digitazione. Non ho investigato su questo problema e sono passato a VisualStudio.

In alternativa c'è un Textmate F# bundle. L'ho provato per mezzo minuto e funziona. Tuttavia non si ottiene l'opzione Alt + Invio da VS per valutare le parti marcate direttamente al prompt interattivo.

+0

Il bundle Textmate fornisce in realtà una semplice opzione Alt + Invio su una sessione fsi in corso in iTerm. –