The Vine Programming Language

Vine is an experimental new programming language based on interaction nets (Wikipedia; Illustrated Guide).

Vine is a multi-paradigm language, featuring seamless interop between functional and imperative patterns.

See vine/examples/ for examples of Vine.

cargo run -r --bin vine run vine/examples/$NAME.vi

If you’re curious to learn more, join the Vine Discord server.

  1. Getting Started

    1. Installation

      1. Hello, world!

      2. Vine Language Features

        1. The Usual

          1. Modules

            1. Variables

              1. Control Flow

                1. Blocks

                  1. Conditionals

                    1. Loops

                    2. Types

                      1. Primitive Types

                        1. Standard Types

                          1. Composite Types

                            1. Structs

                              1. Enums

                              2. Patterns

                                1. Conditions

                                  1. Methods

                                    1. Traits

                                      1. Using Traits

                                        1. Standard Traits

                                          1. Fork and Drop

                                          2. IO

                                            1. Values, Spaces, and Places

                                              1. References

                                                1. The Inverse

                                                2. Tooling

                                                  1. Editor Configuration

                                                    1. Using the CLI

                                                      1. The REPL

                                                        1. Debug Mode

                                                        2. The Vine Compiler

                                                          1. Architecture

                                                            1. Stacked Flow Graphs

                                                            2. Ivy and the IVM

                                                              1. Ivy Overview

                                                                1. Ivy’s Interaction System

                                                                  1. IVM Overview

                                                                    1. Extrinsics

                                                                      1. Statistics