是否有任何F#IDE可以在Mono上运行?

问题描述:

我在Mac上使用F#,并且我怀疑kbow是否有任何F#IDE在单声道(而非通用编辑器)上工作。似乎有一个addon for MonoDelvelop,但我认为它可能不够成熟。任何建议?是否有任何F#IDE可以在Mono上运行?

+0

不是F#本身没有完全成熟,是不是一种研究语言? – Dykam 2009-08-01 21:45:31

+0

IIRC,Visual Studio产品团队已经在此阶段对其进行了保管,并且在下一版Visual Studio中它将与C#和VB保持一致。所以不,它不是一种研究语言,它作为一个适当的产品正处于其第一个发行版的测试阶段。 – harms 2009-08-03 13:40:33

strong text实际上我开始为MonoDevelop创建一个新的F#绑定。只要我有一些值得分享的东西,我会尽快发布消息。

奇怪的是,好像我不能给我的答案添加评论... 无论如何,我想从基本功能开始,允许创建和编译F#项目。当完成这些工作时,我会考虑实现诸如自动完成之类的事情。

更新:由于最近加入我们的家人,我还没有能够完成我的工作。幸运的是,其他人拿起他的工作努力和成果在这里:http://github.com/vasili/FSharpBinding

+0

这是个好消息!你打算支持自动完成吗? – 2009-08-02 16:53:13

我认为MonoDevelop插件将是您最好的选择。不幸的是,在这一点上,寻求一个成熟的F#编译器(即使在Windows上)也有一点延伸。它甚至没有在Windows上正式发布(CTP仍然适用于VS 2008,而2010年仍然是Beta版)。

我使用Aquamacs和一些挂钩到图阿雷格模式。 - 无净完成(还有这里是一个C#模式),但dabrev模式:

;; 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")))))) 

您从Ocaml(非常相似)获得语法高亮显示,并且需要照顾空格。我从壳牌公司获得FSI的一些问题,因为它似乎在打字时会有延迟。我没有调查此问题并切换到VisualStudio。

另外还有一个Textmate F# bundle。我确实测试了半分钟,它的工作原理。但是,您不会从VS中获得Alt + Enter选项,直接在交互式提示下评估标记的零件。