leostera/caramel

Standard Library Ideas

Open

#49 opened on 2021年1月25日

GitHub で見る
 (8 comments) (3 reactions) (0 assignees)OCaml (26 forks)github user discovery
enhancementhelp wantedquestionstdlibtracking

Repository metrics

Stars
 (1,106 stars)
PR merge metrics
 (PR metrics pending)

説明

In this issue I'm collecting thoughts of the structure of a standard library. This may seem a lot larger than you'd have in OCaml/Reason to begin with, but Erlang's is actually pretty big, and includes tons of IETF RFC languages used in networking and dist. sys, so we're not actually being that crazy here.

This also doesn't mean we need to build all of these, as in most cases there exists a single canonical library in the Erlang/Elixir world that we can use for it already, so we just need to provide good bindings to it.

Libraries

  • Ops: tools for operations
    • Tracer
    • Log
    • Perf
  • Core: common datatypes
    • Format
    • Strings
    • Dates
    • RegExp
    • Result
    • Option
    • Bool
    • Fun
    • Atom
  • Async
    • Future
    • Timers
  • Collections
    • HashMap / HashSet
    • Map / Set
    • Queue/DeQue
    • List / Vector
  • Num: working with numbers
    • Int / Float
    • BigInt / BigDecimal
  • FileSystem: working with the file system directly
    • File
    • Path
  • OS: working with the OS directly
    • Env
  • Net: common networking datatypes / specs
    • HTTP
    • URI/URL
    • MIME
  • CoDecs: common encoders/decoders
    • MIME
    • Base
    • CSV, XML
    • TOML / YAML
    • JSON
  • Crypto / Rand
    • UUID
    • SHA
    • ...
  • Typed OTP
    • Supervisor

Feel free to drop below your ideas for the standard library and if you can drop a link to where it came from 🙌🏼

コントリビューターガイド