Skip to content

Counting tag types #24

@kevinb9n

Description

@kevinb9n

Here's the idea

The meaning established for the expression Foo(HAS Bar) is:

  • a subtype SubFoo reifies that iff the requirement Bar<SubFoo> is met.

Example 1: Area(HAS Tile) is reified by ConcreteArea1 so long as requirement Tile<ConcreteArea1> is met
Example 2: Class<StandardResource>(HAS 2 Production<Player2>) is reified by Class<Heat> so long as requirement 2 Production<Player2, Class<Heat>> is met

So what if we also have Foo(OF Bar) with the reverse meaning?

  • a subtype SubFoo reifies that iff the requirement SubFoo<Bar> is met

(Note the subtype doesn't have to extend SubFoo<Bar> itself.)

Example 1: Tag(OF Player2) is reified by SpaceTag so long as requirement SpaceTag<Player2> is met
Example 2: Class<Tag(OF Player2)> is reified by Class<SpaceTag> so long as requirement SpaceTag<Player2> is met

That sounds like something we could use on Interplanetary Trade, Diversifier, and Diversity. With a bit of hooliganism, Aridor as well.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions