HigherOrderCO/HVM4

C

120

182 commits

updated May 30, 2026

See the code

README

HVM

HVM is a high-performance runtime for the Interaction Calculus.

NOTE: you're here before launch. Use at your own risk.

Building and Running

# Build
clang -O2 -o src/hvm src/hvm.c

# Run a file (use collapse mode by default)
hvm devs/test/file.hvm -s -C10

# Run all tests
./devs/test/_all_.sh

# Run a benchmark file
hvm devs/bench/u32_fib.hvm -s

Flags:

  • -s shows performance stats
  • -D prints each intermediate reduction step with interaction labels
  • -C10 collapses and flattens superpositions (limit to 10 lines)

Examples

@main = ((@add 1) 2)
//3
@main = (&{1, 2} + 10)
//11
//12
@main = (! x &A= 3; (x₀ + x₁))
//6

Documentation

Contributors

nicolas-abril

87 commits

VictorTaelin

66 commits

pjcavalcanti

3 commits

HigherOrderCO/HVM4

C

120

182 commits

updated May 30, 2026

See the code

README

HVM

HVM is a high-performance runtime for the Interaction Calculus.

NOTE: you're here before launch. Use at your own risk.

Building and Running

# Build
clang -O2 -o src/hvm src/hvm.c

# Run a file (use collapse mode by default)
hvm devs/test/file.hvm -s -C10

# Run all tests
./devs/test/_all_.sh

# Run a benchmark file
hvm devs/bench/u32_fib.hvm -s

Flags:

  • -s shows performance stats
  • -D prints each intermediate reduction step with interaction labels
  • -C10 collapses and flattens superpositions (limit to 10 lines)

Examples

@main = ((@add 1) 2)
//3
@main = (&{1, 2} + 10)
//11
//12
@main = (! x &A= 3; (x₀ + x₁))
//6

Documentation

Contributors

nicolas-abril

87 commits

VictorTaelin

66 commits

pjcavalcanti

3 commits

Languages

C

93.8%

Shell

3.9%

TypeScript

2.3%