Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Concrete type parameters for types as type members #116

Merged
merged 4 commits into from
Jan 30, 2017

Commits on Jan 29, 2017

  1. Concrete types in types as type members

    Not applied to module-qualified types yet.  This lets the following
    actually work:
    
        type opt 'a = Some 'a | None
        type int_opt = opt int
    
    Up until this commit any attempt to use `int_opt` would cause a
    unification failure because we weren't capturing `int` as an actual
    parameter and associated variable name.  Now for each parameter that is
    a concrete type we synthesize a variable name for it.
    j14159 committed Jan 29, 2017
    Configuration menu
    Copy the full SHA
    49f92db View commit details
    Browse the repository at this point in the history
  2. Concrete type members for type, module-qualified

    Refering to module.type_name with concrete type parameters now works.
    j14159 committed Jan 29, 2017
    Configuration menu
    Copy the full SHA
    74f34db View commit details
    Browse the repository at this point in the history
  3. Factored out some duplicated code in the parser

    The exact same block to link concrete types to synthetic type variables
    occurred twice, now it's a single function.
    j14159 committed Jan 29, 2017
    Configuration menu
    Copy the full SHA
    14d29a1 View commit details
    Browse the repository at this point in the history

Commits on Jan 30, 2017

  1. Bug fix for issue @danabr raised in PR alpaca-lang#116

    Unifying two different ADTs when one is a member of the other called
    unify/4 with the incorrect order of arguments.
    j14159 committed Jan 30, 2017
    Configuration menu
    Copy the full SHA
    bc29876 View commit details
    Browse the repository at this point in the history