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

[WIP] Enhance interop of generics, roles, and classes, Raku or nqp #808

Draft
wants to merge 4 commits into
base: master
Choose a base branch
from

Commits on May 24, 2022

  1. Specify behaviour of generics + return types in signatures

    - In general, a generic on the RHS can accept anything on the LHS...
    - ...but a non-generic type on the RHS cannot accept a generic on the
      LHS...
    - ...buf if either carry a type signature, we should take advantage of it...
    - ...mapping type capture to type capture until we find any non-generic
      type (or Mu).
    - A return type must not exist on the LHS if one does not exist on the
      RHS, otherwise it should defer to ACCEPTS as with parameters.
    Kaiepi committed May 24, 2022
    Configuration menu
    Copy the full SHA
    93420ad View commit details
    Browse the repository at this point in the history
  2. Reintroduce S14-roles/generic-subtyping.t

    Unlike before:
    
    - Spare any unnecessary &EVAL nonsense.
    - Ensure that generic doees, parents, and a complicated blend of the two
      can typecheck.
    - Ensure we can access the doees list before composition (as
      typechecks may depend on it).
    Kaiepi committed May 24, 2022
    Configuration menu
    Copy the full SHA
    ced4b31 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    9384deb View commit details
    Browse the repository at this point in the history

Commits on Jun 20, 2022

  1. ^parents(:tree) isa List:D

    Because the cons of picking Array for type objects (need to decont for
    `=:=`. not a normal array otherwise) outweigh the pros of mutability
    here.
    Kaiepi committed Jun 20, 2022
    Configuration menu
    Copy the full SHA
    9bcc38d View commit details
    Browse the repository at this point in the history