Real Vim ninjas count every keystroke - do you?

Pick a challenge, fire up Vim, and show us what you got.

Changelog, Rules & FAQ, updates: @vimgolf, RSS.

Your VimGolf key: please sign in

$ gem install vimgolf
$ vimgolf setup
$ vimgolf put 5ed25358070f0e0006193c04

C# function to F#

Converting from C# to F# is not hard, but requires some manual labor. Here you should convert a C# function using a C# class to a F# function using a C# class.

Start file
private static string GetData(Environment environment, string name)
{
  var options = new DefaultOptions();
  if (environment.IsDevelopment())
  {
    options.LocalCredentials = true;
    options.Path = "/stuff";
  }
  else
  {
    options.LocalCredentials = false;
  }
  var uri = new Uri("https://example.com/" + name);
  var client = new GetClient(uri, options);
  return client.GetStuff(name);
}
End file
let getData (environment: Environment) (name: string) : string =
  let options = DefaultOptions()
  if environment.IsDevelopment() then
    options.LocalCredentials <- true
    options.Path <- "/stuff"
  else
    options.LocalCredentials <- false
  let uri = Uri("https://example.com/" + name)
  let client = GetClient(uri, options)
  client.GetStuff(name)

View Diff

1,8c1,5
< private static string GetData(Environment environment, string name)
< {
<   var options = new DefaultOptions();
<   if (environment.IsDevelopment())
<   {
<     options.LocalCredentials = true;
<     options.Path = "/stuff";
<   }
---
> let getData (environment: Environment) (name: string) : string =
>   let options = DefaultOptions()
>   if environment.IsDevelopment() then
>     options.LocalCredentials <- true
>     options.Path <- "/stuff"
10,16c7,10
<   {
<     options.LocalCredentials = false;
<   }
<   var uri = new Uri("https://example.com/" + name);
<   var client = new GetClient(uri, options);
<   return client.GetStuff(name);
< }
\ No newline at end of file
---
>     options.LocalCredentials <- false
>   let uri = Uri("https://example.com/" + name)
>   let client = GetClient(uri, options)
>   client.GetStuff(name)
\ No newline at end of file

Solutions by @rqAbrahamsson:

Unlock 2 remaining solutions by signing in and submitting your own entry
Created by: @rqAbrahamsson

4 active golfers, 7 entries

Solutions by @rqAbrahamsson:
128
#3 - Robin Abrahamsson / @rqAbrahamsson

05/31/2020 at 08:09AM

177
#>4 - Robin Abrahamsson / @rqAbrahamsson

05/30/2020 at 12:57PM