• Stars
    star
    158
  • Rank 237,131 (Top 5 %)
  • Language
    F#
  • License
    MIT License
  • Created almost 7 years ago
  • Updated over 3 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Different type inference algorithms implemented in F#

Write you an inference in F#

This repo is inspired by other great resources in this area but targeted at idiomatic and easy to follow F# code. Saying that, type inference algorithms are not the easiest to get your head round but this will be a place to describe different types and methods of doing type inference.

The algorithms are split into pure and mutable Hindley-Milner type inference, and row polymorphism extension to it.

Hindley-Milner inference

Hindley-Milner inference with row polymorphism

This repo grew out of a small language that I was tinkering with to test out various ideas around type systems, while reading one of the papers on rank n types I came across the following which is quite true:

Considering how many papers there are on type systems, there is surprising little literature on type inference that is aimed unambiguously at implementors.

If you have any suggestions or want to make any contributions please submit a PR, I would be happy to include new versions or improvements!

More Repositories

1

edge-fs

F# compiler for edge.js
F#
23
star
2

FSharpDataflow

F#
18
star
3

ReQuetzal

An experimental ML style language
F#
13
star
4

FSharp-iOS-Samples

SingleView is a F# Hello World application for MonoTouch
F#
11
star
5

Atari-St-Emulator

Building Emulators inF#
F#
11
star
6

fable-fuse

F#
9
star
7

soothsayer

A tool to display information about dll references i F# signature format
F#
8
star
8

SpriteKit-Fsharp-Samples

F#
8
star
9

pipelets

F# pipeline implementation
F#
7
star
10

busy_bee

Atari ST emulator in Rust
Rust
6
star
11

FSharp-Android-Samples

A collection of F# Android Samples
F#
5
star
12

PlatonicSolids

An example of using MonoGame in F#
F#
5
star
13

MonoGame-006

F#
5
star
14

fable-vscode-twitch-chatbot

A fable based twitch chatbot that allows you to request hover information from vscode
F#
4
star
15

flack

F# high performance sockets
F#
4
star
16

fable-fuse-samples

F#
4
star
17

MonoGame-005

F#
4
star
18

MonoGame-001

Repo for the YouTube video: https://www.youtube.com/watch?v=5m28WwJN91U
F#
3
star
19

AMA

Ask me anything
3
star
20

generator-fable-fuse

JavaScript
3
star
21

XamarinFormsPCL

Test bed for Xamarin.Forms PCL on F#
F#
3
star
22

SchedulerAgent

An Agent based scheduler
F#
3
star
23

ObjectPool

F#
2
star
24

BlackScholesTasteTest

Black Scholes Taste Test from the same names blog post
C#
2
star
25

MonoGame-003

F#
2
star
26

sequence_perf

rust experiment
Rust
1
star
27

TheLurkingHorror

Code from the blog post The Lurking Horror
F#
1
star
28

RustyCode

Rust for Visual Studio Code
TypeScript
1
star
29

Back-To-The-Primitive

Code for the series: Back To The Primitive
F#
1
star
30

MonoGame-002

Repo for my YouTube video:
F#
1
star
31

6502-Fable

6502 CPU Emulator with Fable
F#
1
star
32

FractionalOctave

An F# library for calculating fractional octave bands
1
star