GithubHelp home page GithubHelp logo

isabella232 / leveling-up Goto Github PK

View Code? Open in Web Editor NEW

This project forked from larrytheliquid/leveling-up

0.0 0.0 0.0 172 KB

Source code accompanying the paper "Leveling Up Dependent Types"

Home Page: http://dl.acm.org/citation.cfm?id=2502414

leveling-up's Introduction

Leveling Up Dependent Types

Agda source code accompanying the paper (DTP 2013):

Leveling Up Dependent Types - Generic programming over a predicative hierarchy of universes. (Draft)

Code from the paper

The underlying type system

Extra examples of generic functions over indexed types

  • Extras.FixedHierarchy
    • A fixed dependently typed universe with some indexed types in it.
    • Contains examples of applying a generic double over indexed types. Applying generic functions to dependent types changes the result type, prefixing them by Π's that act as "preconditions" that are used to preserve type correctness.
    • Generically double the dependent function `fun and get results out by satisfying its generated preconditions.
    • Generically double the dependent pair `pair and get results out by satisfying its generated preconditions.
  • Extras.FixedHierarchyEverywhere WARNING: CONTAINS OMGBBQ AWESOME!
    • Mostly the same as Extras.FixedHierarchy.
    • Defines the fully-generic mapping combinator every.
    • Apply every to a simple double function, and the double function will be applied to nested values on your behalf!
    • The same fun and pair examples are given, but using the new every combinator.

leveling-up's People

Contributors

larrytheliquid avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.