Giulio Canti
Giulio Canti
The new version (v0.3) of this plugin will require a definition file in order to exploit refinements and runtime type introspection. I'm working on a first draft but I'm not...
Example ``` js let bar: bool = foo; bar = true; ``` compiles to ``` js let bar = _assert(foo, _t.Boolean, "bar"); bar = _assert(true, _t.Boolean, "bar"); ``` @christophehurpeau let...
Adapted from "Supercharged Types" (http://rtpg.co/2016/07/20/supercharged-types.html) by @rtpg Flow has _Row Polymorphism_, an important feature if you want to encode invariants into types. For people with Haskell experience, `Eff` is kinda...
Note. The term "FlowScript" here means JavaScript + Flow type annotations (+ PureScript idioms). # Functions ## A basic example PureScript ``` purs add :: Int -> Int -> Int...
Flow treats every function as variadic: ``` js function foo(x: string) {} foo('a', 1) //
## Goal The goal of this series of posts is to show how you can add type safety, both statically and at runtime, to your untyped codebase **gradually** and with...
If you define some interfaces: ``` js export interface MyInterface { ... } ``` eslint might raise an error: ``` MyInterface is not defined ``` This eslint plugin is helpful...
Proof of concept (borrowed from [fp-ts](https://github.com/gcanti/fp-ts)) ```js // @flow interface HKT { __hkt: F, __hkta: A } interface Functor { map(f: (a: A) => B, fa: HKT): HKT } type...
For consistency with the other files
https://github.com/rpominov/static-land/blob/master/docs/spec.md#plus