Skip to content

Note wanted libraries

kud1ing edited this page Aug 19, 2013 · 54 revisions

Notes taken at rust work week, 2011/06/23

Things that standard libraries might want

  • collections (see Containers)
  • compression (external)
  • zip file format
  • tar file format
  • concurrency
  • task management, actor, OTP, Bikeshed mapreduce, pools
  • crypto
  • date and time
  • encoding
  • base64
  • CSV (external)
  • json
  • protobuf
  • thrift
  • Cap'n Proto (external)
  • tnetstring (external)
  • xml
  • IO
  • AIO, SIO, stdio
  • filesystem
  • path manipulation
  • <> or fileinput
  • timers
  • string manipulation
  • slicing w/o copy, stringref
  • regexp (external)
  • ropes
  • simple tokenizer
  • Localizability
  • one aspect of L10n is to map a key to a text, based on the current locale (eg Java's ResourceBundle or GNU gettext)
  • another aspect is to format a string based on the current locale (eg Java's MessageFormat)
  • See issue #4630
  • math
  • networking
  • HTTP (external)
  • URI/URL
  • UUID
  • GUID
  • random
  • Unicode
  • Convertions between text encodings. Ideally, with a customizable way of handling conversion errors.
  • Unicode normalization (NFD, NFC, NFKD, NFKC)
  • Collator (locale sensitive string comparison), with a configurable degree of strictness
  • low-level OS services
  • Simple search on a filesystem (eg Ruby's glob)
  • unit testing
  • FFI, ctypes
  • dlopen, os processes
  • standard predicates
  • text, numeric, sorted
  • error-trapping wrappers, in-place task?
  • Consistent error handling
  • reflection

Things that do not belong in std

  • Datbase access (sql, nosql)
  • GUI
  • Cocoa (external)
  • quotas, accounting
  • ZeroMQ (external)
  • How will libs like this be integrated with regular nonblocking io?
  • ZeroMQ sockets need to be used from a fixed thread, can we do this in rust?

Missing language features

  • big
  • any
  • claim
  • note

All Categories:

Clone this wiki locally