fsharp

A module for calling out to the F# Interactive command capturing stdin and stdout as a duplex stream

Usage no npm install needed!

<script type="module">
  import fsharp from 'https://cdn.skypack.dev/fsharp';
</script>

README

node-fsharp NPM version Build Status Dependency Status

A module for calling out to the F# Interactive command capturing stdin and stdout as a duplex stream

Usage

This module creates a Duplex stream from the F# Interactive command. Writing to stdin and reading from stdout. Also emitting stderr if the command exits non-0.

This module requires F# to be installed on the system to be useful. Installation guides for F# can be found at fsharp.org.

Example:

var fsharp = require('fsharp');

var script = fsharp('./script.fsx');
script.pipe(process.stdout);

API

fsharp(options)

options.path

Type: String

Required

Path to the script you want to execute.

options.executable

Type: String

Default: A function that looks for fsharpi in your path on Linux/Mac or fsi on Windows. Will fall back to looking in default install directory on Windows.

The path to the F# Interactive executable.

options.args

Type: Array[String]

Default: undefined

Array of arguments you want to supply to your script

options.*

fsharp inherits from Stream.Duplex, the options are passed to the parent constructor so you can use it's options too.

fsharp(String)

Sugar for fsharp({path: String});

License

MIT License