Skip to content

Support Pluggable, 3rd-party Type Systems #2944

Closed
@jednano

Description

@jednano

There's a library written by @gcanti called tcomb-ats, which is a 3rd-party assertion library for AtScript. Now that AtScript has been replaced with TypeScript, does that change the TypeScript Design Non-Goals in any way? Would support for 3rd-party assertion libraries like tcomb-ats be possible?

If configured the same way, it would go in the tsconfig.json file as such:

{
  "typeAssertionModule": "path/to/tcomb-ts"
}

Activity

danquirk

danquirk commented on Apr 28, 2015

@danquirk
Member

As far as I can tell this is basically asking for a pluggable type system, which essentially no languages do (well). This doesn't look like an assertion library (in the sense of common uses of the term like chai, should, etc), it looks like an entirely new set of primitive types and assignability rules. This isn't something we'd support.

added
SuggestionAn idea for TypeScript
DeclinedThe issue was declined as something which matches the TypeScript vision
Too ComplexAn issue which adding support for may be too complex for the value it adds
on Apr 28, 2015
changed the title [-]Support 3rd-party Assertion Libraries[/-] [+]Support Pluggable, 3rd-party Type Systems[/+] on Apr 28, 2015
locked and limited conversation to collaborators on Jun 18, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    DeclinedThe issue was declined as something which matches the TypeScript visionSuggestionAn idea for TypeScriptToo ComplexAn issue which adding support for may be too complex for the value it adds

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

      Development

      No branches or pull requests

        Participants

        @jednano@danquirk

        Issue actions

          Support Pluggable, 3rd-party Type Systems · Issue #2944 · microsoft/TypeScript