Row types are poorly explained · Issue #374 · purescript/documentation · GitHub
Skip to content

Row types are poorly explained #374

Open

Description

@gdennie

The Row type description begins...

A row of types represents an unordered collection of named types, with duplicates.

That description is unclear. By process of elimination it appears the types are what is allowed to be duplicated while the labels, as keys, cannot be duplicated. Perhaps a more plain wording is as follows:

A row is an unordered list of labels with type identifiers: Set (Tuple Label Type)

Activity

  1. natefaubion commented on Feb 18, 2021

    @natefaubion
    Contributor

    Set (Tuple Label Type) is not quite correct. It's more like Map Label (NonEmptyList Type). Set (Tuple Label Type) implies the ordering relation between the types is undefined, but that's not the case; there is a cons ordering.

  2. natefaubion commented on Feb 18, 2021

    @natefaubion
    Contributor

    Probably more accurate, rows behave like scope.

  3. gdennie commented on Feb 18, 2021

    @gdennie
    Author

    I am still trying to find a succinct description... How about this?

    A row is an unordered list of labels each identifying a nonempty list of types.

    With respect to scope, are you saying that Rows provide a context with values as oppose to providing a schema for data storage?

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

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions