Skip to content

Linus's myriad bug list #3

Description

@thesephist

Language & CLI

  • std.{is, constantly} for more fluent code, as in Klisp
  • std.{exclude, separate} to complement std.filter and enable more fluent code, as in Klisp
  • path.resolve does not fully resolve /./ and /../ patterns (collapse those paths down) if the input path is absolute.
  • str.{rindex, rfind} for searching a string from the right, similar to Python's rfind and friends.
  • A function in the http library to parse, construct, and manipulate query parameter strings, e.g. { a: true, b: 23 } <=> a=true&b=23. Note this should take into account http.percentEncode. It should omit null values and JSON-serialize any composite values.
  • str.space? (and therefore 1-adic forms of str.trim and friends) are broken on --web for the \r character.
  • Variants of std.loop that I can use with async loop bodies for an async loop (e.g. reading a file into a fixed-size buffer, concurrent jobs working from a list of file paths). This will come in three versions, an aloop for unbounded async looping as well as a serial and a parallel variant which facilitate serial and parallel processing respectively.
  • str.rindexOf to match std.rindexOf
  • Add random.normal or something of the kind (sampling from a standard normal distribution, a la torch.randn). Implementation: fn normal { u := 1 - rand(), v := 2 * math.Pi * rand(), math.sqrt(-2 * log(math.E, u)) * cos(v) }
  • TypeScript-style static typing with type inference (https://github.com/Ahnfelt/type-inference-by-example), perhaps in a built-in CLI tool like oak check. Teal (https://github.com/teal-language/tl) is another effective inspiration.

Website

  • Download link on the website uses a relative url #start instead of an absolute /#start, so is broken on any page that isn't the main page.
  • Highlight proxy is broken for URLs with query parameters, like links to private GitHub repo source files, because the query parameters aren't encoded properly in the proxy <form> and therefore fed to the proxy as query params to the proxy, not the original proxied URL.
  • Write some quick blog about the codecols utility

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions