nim-works/nimskull

stdlib: organize the standard library modules (`lib`)

Open

#1,200 opened on Feb 19, 2024

 (4 comments) (1 reaction) (0 assignees)Nim (39 forks)auto 404
good first issuehelp wantedtest

Repository metrics

Stars
 (346 stars)
PR merge metrics
 (PR metrics pending)

Description

The lib directory, which contains the standard library, is a mess. it's difficult to find the module you're looking for without a "go to definition", or resorting to grepping file names. Instead the top level lib directory should strive to expose all public modules in a flat fashion, with private and implementation specific bits hidden behind sub-directories.

This ties in with the issue where the tests/stdlib use yet another "organization" scheme, see: https://github.com/nim-works/nimskull/issues/537.

This should be done either:

  1. piece by piece in conjunction with tests/stdlib organizing
  2. after tests/stdlib mirrors the current lib directory structure

As part of working through this issue, please note any observations useful for future projects (e.g.: many implementations of atomics).

Contributor guide