core icon indicating copy to clipboard operation
core copied to clipboard

TODO list

Open bobzhang opened this issue 1 year ago • 11 comments

  • [x] xxhash for primitive types ref https://github.com/jungomi/xxhash-wasm
  • [x] linked hashmap which preserve insertion order when iteration
  • [x] immut/ordered_map
  • [x] immut/hashset
  • [x] add as_iter for each data structure
  • [ ] coverage > 95%
  • [x] map
  • [x] set
  • [x] hashmap
  • [x] hashset
  • [x] efficient hash function for built in type
  • [x] json
  • [x] json5 // this may be a good example to showcase moonbit's perf over handwritten js
  • [x] mutable map // mutable map
  • [x] mutable set
  • [x] array missing method
    • [x] sort
    • [x] stable sort
  • [ ] README.md for each package
  • [x] random
  • [x] strconv
  • [ ] move most builtin utilities to its belonged package
    • [x] float ryu
    • [x] buffer
  • [x] rational
  • [x] bigint
  • [x] persistent vector

bobzhang avatar Mar 13 '24 12:03 bobzhang

How about adding BinaryHeap👀

DiamondMofeng avatar Mar 15 '24 00:03 DiamondMofeng

@DiamondMofeng contributions are welcome

bobzhang avatar Mar 15 '24 06:03 bobzhang

Just created a PR for sort https://github.com/moonbitlang/core/pull/72

zxch3n avatar Mar 17 '24 11:03 zxch3n

#53 implemented some basic operations for the tree-based map. Some methods are still missing:

  • [ ] filter, map, map_with_key, fold, iteri
  • [ ] Extraction methods like elems, keys, to_vec, to_array
  • [ ] (Map,Map) -> Map methods like union, difference, intersection

Yoorkin avatar Mar 18 '24 06:03 Yoorkin

  • [x] reserve_capacity and shrink_to_fit for vector/deque

peter-jerry-ye avatar Mar 27 '24 09:03 peter-jerry-ye

  • [x] time api (may be an API similar to Java with LocalDate LocalTime LocalDateTime and ZonedDateTime

peter-jerry-ye avatar Apr 07 '24 10:04 peter-jerry-ye

stable sort #225

He1pa avatar Apr 11 '24 03:04 He1pa

Another reference for the time API: https://docs.edgedb.com/database/stdlib/datetime

fantix avatar Apr 13 '24 13:04 fantix

If I want to claim a task you listed above, I need to read all the PRs and judge which task is been reviewing now. Also, I don't know which task has been already started by someone locally. So I suggest that all the tasks should have their own issues (so that the developers can assign them clearly) and link them in this issue. For example ( json and json5)

  • [ ] json Its issue Its PR
  • [ ] json5 Its issue Its PR

lgxbslgx avatar Apr 17 '24 18:04 lgxbslgx

For full coverage, we need to resolve an issue mentioned in #223, i.e., unreachable statements for exhaustiveness of pattern matching shouldn't be counted towards missing coverage.

jialunzhang-psu avatar Apr 26 '24 23:04 jialunzhang-psu

好像并没有如何debug源码的介绍?感觉这个功能还是蛮重要的 😀

schizobulia avatar Jun 13 '24 14:06 schizobulia