   (message "Launching completion process")
   (setq ac-fsharp-completion-process
         (let ((process-connection-type nil))
-          (start-process "fsharp-complete"
-                         "*fsharp-complete*"
-                         ac-fsharp-complete-executable)))
+          (case system-type
+            (windows-nt
+             (start-process "fsharp-complete"
+                            "*fsharp-complete*"
+                            ac-fsharp-complete-executable))
+            (otherwise
+             (start-process "fsharp-complete"
+                            "*fsharp-complete*"
+                            "mono" ac-fsharp-complete-executable)))))
 
   (set-process-filter ac-fsharp-completion-process 'ac-fsharp-filter-output)
   (set-process-query-on-exit-flag ac-fsharp-completion-process nil)

             (setq ac-fsharp-status 'idle)
             ))))
    (otherwise
     message "filter output called and found <<EOF>> while not waiting")
    ))

;;; intellisense-sync.el ends here

;(set (make-local-variable 'gud-gdb-completion-function) 'gud-gdb-completions)

;(local-set-key "\C-i" 'completion-at-point)
;(local-set-key "\C-i" 'indent-for-tab-command)

(defun ac-fsharp-stash-partial (str)
  (setq ac-fsharp-partial-data (concat ac-fsharp-partial-data str)))


; str function is called whenever fsintellisense.exe writes something on stdout
