7 Stimmen

Gibt es eine F#-IDE, die über Mono funktioniert?

Ich benutze F# auf einem Mac und ich frage mich, ob es eine F#-IDE gibt, die über Mono funktioniert (nicht ein Allzweck-Editor). Es scheint, dass es eine Zusatzprogramm für MonoDelvelop aber ich denke, es ist vielleicht noch nicht reif genug. Haben Sie einen Vorschlag?

0 Stimmen

Ist F# nicht selbst noch nicht ganz ausgereift, ist es nicht eine Forschungssprache?

0 Stimmen

Wenn ich mich recht erinnere, hat das Visual Studio-Produktteam in dieser Phase die Vormundschaft für die Sprache übernommen, und sie wird in der nächsten Version von Visual Studio gleichberechtigt neben C# und VB erscheinen. Es handelt sich also nicht um eine Forschungssprache, sondern um die Beta-Phase ihrer ersten Veröffentlichung als echtes Produkt.

7voto

Piotr Zurek Punkte 2692

aussagekräftiger Text Ich habe tatsächlich begonnen, an einer neuen F#-Anbindung für MonoDevelop zu arbeiten. Ich werde die Neuigkeiten posten, sobald ich etwas erzählenswertes habe.

Seltsam, es scheint, dass ich keinen Kommentar zu meiner Antwort hinzufügen kann... Wie auch immer, ich möchte mit einer grundlegenden Funktionalität beginnen, die das Erstellen und Kompilieren von F#-Projekten ermöglicht. Wenn das erledigt ist, werde ich mich mit der Implementierung von Dingen wie Autovervollständigung und dergleichen beschäftigen.

Aktualisierung: Aufgrund des jüngsten Familienzuwachses war ich nicht in der Lage, meine Arbeit zu beenden. Glücklicherweise hat jemand anderes die Arbeit übernommen, und die Ergebnisse seiner Arbeit sind hier zu sehen: http://github.com/vasili/FSharpBinding

4voto

Reed Copsey Punkte 536986

Ich denke, dass das MonoDevelop Addon die beste Lösung ist. Leider ist es zum jetzigen Zeitpunkt ein bisschen weit hergeholt, einen ausgereiften F#-Compiler zu verlangen (sogar unter Windows).

Es ist noch nicht einmal offiziell für Windows freigegeben (CTP noch für VS 2008, und 2010 ist noch Beta).

2voto

wishi Punkte 6766

Ich verwende Aquamacs und einige Hooks im Tuareg-Modus. - Keine .Net Vervollständigung (es gibt einen C#-Modus hier), aber dabrev-Modus:

;; 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"))))))
  • Kompilieren aus dem Editorfenster mit FSC
  • eine interaktive Sitzung mit Syntaxhervorhebung mit dem Mono-Backend erhalten alt text
    (Quelle: <a href="http://666kb.com/i/bduirh0atdecj96dv.jpg" rel="nofollow noreferrer">666kb.com </a>)

Sie erhalten Syntax-Hervorhebung von Ocaml (sehr ähnlich) und es kümmert sich um die Leerzeichen. Ich hatte einige Probleme beim Forken der FSI von Shell, weil es eine Verzögerung bei der Eingabe zu geben scheint. Ich habe nicht untersuchen dieses Problem und wechselte zu VisualStudio.

Alternativ dazu gibt es eine Textmate F#-Bündel . Ich habe das eine halbe Minute lang getestet und es funktioniert. Allerdings gibt es nicht die Alt+Enter-Option von VS, um die markierten Teile direkt an der interaktiven Eingabeaufforderung auszuwerten.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X