/hopper-v0

a sound modern language for computation and transactional resource logic

Primary LanguageHaskellBSD 2-Clause "Simplified" LicenseBSD-2-Clause

status

This repo represents a lot of learning experience about runtime semantics and linear logical metatheory (much of which did not make it into this earlier iteration of hopper and thus this repo).

That said, theres a lot of cool design ideas in this early version of the code base both from an engineering perspective and in terms of language theory and semantics, by the lovely contributors.

where should i look now?

stay tuned for other interesting activity both on the Hopper-Lang org and in various places by the contributors. All open source open science goodness of course, but awesomer :)

Hopper: a sound modern language for computation and transactional resource logic

The aim of Hopper is to provide a logically-sound language for describing ownership, authorization, and transactional interactions thereof. Hopper will also be a nice language for programming and theorem proving.

Hopper is being designed to support both standalone execution and safe program execution embedded within a host application.

What's where

  1. src/ contains the Haskell implementation.
  2. models/ contains formalizations of semantics, and some design experiments that are currently not being used in the implementation.

Contributing

Awesome, lets talk! We can be found on the #hopper channel on freenode.

Good background reading

Build Guide

Read the Build Guide and if it doesn't work, please file a ticket that describes any issues you're facing.