Multiple items
type ReflectedDefinitionAttribute =
  inherit Attribute
  new : unit -> ReflectedDefinitionAttribute
  new : includeValue:bool -> ReflectedDefinitionAttribute
  member IncludeValue : bool

Full name: Microsoft.FSharp.Core.ReflectedDefinitionAttribute

--------------------
new : unit -> ReflectedDefinitionAttribute
new : includeValue:bool -> ReflectedDefinitionAttribute
namespace Microsoft.FSharp
val min : e1:'T -> e2:'T -> 'T (requires comparison)

Full name: Microsoft.FSharp.Core.Operators.min
module Array

from Microsoft.FSharp.Collections
val init : count:int -> initializer:(int -> 'T) -> 'T []

Full name: Microsoft.FSharp.Collections.Array.init
val id : x:'T -> 'T

Full name: Microsoft.FSharp.Core.Operators.id
val create : count:int -> value:'T -> 'T []

Full name: Microsoft.FSharp.Collections.Array.create
val blit : source:'T [] -> sourceIndex:int -> target:'T [] -> targetIndex:int -> count:int -> unit

Full name: Microsoft.FSharp.Collections.Array.blit
Multiple items
val string : value:'T -> string

Full name: Microsoft.FSharp.Core.Operators.string

--------------------
type string = System.String

Full name: Microsoft.FSharp.Core.string

Ionide and the State of F# OSS

Ionide

Jared Hester

cloudRoutine

https://github.com/cloudRoutine

@cloudRoutine

Maintainer

FSharp.Control.Reactive

Ionide

VisualFSharpPowertools

Contributor

Paket

VisualFSharpPowertools

What is Ionide?

Atom

vscode

Atom

FSharp

Vscode

Syntax Highlighting

Highlighting

Intellisense Tooltips

Tooltips

Autocomplete

Autocomplete

Glyph Completion

Glyphs

Ionide FSI

FSI

Ionide Paket

Paket

Ionide FAKE

FAKE

Code Snippets

Snippets

Yeoman Generator

Yeoman

Ionide Internals

Electron

Funscript

 1: 
 2: 
 3: 
 4: 
 5: 
 6: 
 7: 
 8: 
 9: 
10: 
11: 
12: 
13: 
14: 
15: 
16: 
17: 
18: 
19: 
[<ReflectedDefinition>]
module Atom.FSharp.CompletionHelpers

/// Find the minimum of three three terms that support comparison
let inline min3(a, b, c) = min a (min b c)

let inline distanceCalc (m, u) (n, v) =
    let d1 = Array.init n id
    let d0 = Array.create n 0
    for i=1 to m-1 do
        d0.[0] <- i
        let ui = u i
        for j=1 to n-1 do
            d0.[j] <- 1 + min3(d1.[j], d0.[j-1], d1.[j-1] + if ui = v j then -1 else 0)
        Array.blit d0 0 d1 0 n
    d0.[n-1]

let editDistance (s: string) (t: string) =
    distanceCalc (s.Length, fun i -> s.[i]) (t.Length, fun i -> t.[i])

OSS for F# Success

This Presentation was brought to you by

FSharp.Formatting

Suave

FsReveal

FSharp.Formatting

Suave

FsReveal

VFPT OSS Dependencies

  • FSharp.Viewmodule
  • FsXaml
  • FsCheck
  • FSharpLint
  • Fantomas
  • FsPickler
  • FParsec

The F# OSS Community

Explore Projects

F# Community Incubation Space

http://fsprojects.github.io/

fsprojects

Meet the Devs

FPChat - Functional Programming Slack Team #fsharp

Slack

https://gitter.im/ionide/ionide-project

Gitter

The Future of Ionide & VFPT

Ionide Roadmap

  • FSharpLint Integration
  • FsLab Integration
  • Fix Integration
  • More Code Snippets
  • Path Completion

VisualFSharpPowertools

->

FSharpPowertools

Links to Projects mentioned in this presentation