Skip to content

Proposals for naming and package structure #24

Open
@NthPortal

Description

@NthPortal

Proposals:

  1. Only names that are planned to exist in a future Scala release can be outside of a next (sub-)package. Names that will not exist in a future Scala release MUST be in a next (sub-)package.
    a. Corollary: Extension methods MUST go in next (sub-)packages.
    b. Possible extension: All names that are planned to exist in a future Scala release MUST be outside of next (sub-)packages.
  2. Extension method value classes SHOULD be named Next<Name>Extensions, where <Name> is the name of the type.
    a. For example, extension methods for LazyList would go in value class named NextLazyListExtensions.
    b. Extension method value classes for an object that is a companion SHOULD be named Next<Name>CompanionExtensions.
    c. Extension method value classes for general collection types (e.g. Map, Set) should have have a prefix to <Name> that is the first letter of each package segment (e.g. NextSCISetExtensions for scala.collection.immutable.Set)

Something something RFC 2119

Metadata

Metadata

Assignees

No one assigned

    Labels

    metameta-discussions about the nature and scope of this repo

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions