-
Notifications
You must be signed in to change notification settings - Fork 3
Jan 2023 Language Update ライブラリ案
Mado edited this page Jan 28, 2023
·
69 revisions
このページは誰でも編集できます。
- 2023年環境に要望するクレート
-
2020年環境のクレート
-
num
- num-bigint
- num-complex
- num-integer
- num-iter
- num-rational
- num-traits
- num-derive
- ndarray
-
nalgebra
- alga
- libm
-
rand
- getrandom
- rand_chacha
- rand_core
- rand_hc
- rand_pcg
- rand_distr
- petgraph
- indexmap
- regex
- lazy_static
- ordered-float
- ascii
- permutohedron
- superslice
- itertools
- itertools-num
- maplit
- either
- im-rc
- fixedbitset
- bitset-fixed
- proconio
- text_io
- whiteread
- rustc-hash
- smallvec
-
num
- ライセンスまとめ
Crates.ioにまだアップロードしていない
- ac-libraryのRust実装。 (@qryxip)
- このままでもライブラリとしては機能するとはいえ、Crates.ioへのアップロードを含めまだ色々やることがあるため、急いでやっていく。 (@qryxip)
- まあ一応提案するだけした方がいいかもしれない? (@qryxip)
- lazy_staticよりも今はこちらの方が使われているはず。また今標準ライブラリに入りかけている。 (@qryxip)
- @tanakh氏製の、競プロ用途に特化したメモ化ライブラリ。 (@qryxip)
- cachedがよくメンテされているようだが、上記のブログの通りAtCoderには向かないかもしれない。 (@qryxip)
- 実行時には何もしないライブラリであるためコンテスト中の利用用途が思い浮かびにくいが、まあ何かを確認したくなったときに手元ですぐに動くと便利かもしれない。 (@qryxip)
- @tanakh氏製の、競プロ用標準入出力ライブラリ。 (@qryxip)
- 今のRust Analyzerならproconioの補完も十分にできるため、相対的な重要性は下がっている気はする。 (@qryxip)
- fixedbitsetやbitset-fixedと比べてGitHubのStarが多く、機能も充実している。(@falrnd)
v0.2.1 → v0.4
- num-bigint v0.2.6 -> v0.4
- num-complex v0.2.4 -> v0.4
- num-integer v0.1.42 -> v0.1
- num-iter v0.1.40 -> v0.1
- num-rational v0.2.4 -> v0.4
- num-traits v0.2.11 -> v0.2
- なんだかんだでみんな使っていた印象。(@qryxip)
- 色々機能が追加されたと思うが未調査。(@qryxip)
v0.13.0 → v0.15
- 色々機能が追加されたと思うが未調査。(@qryxip)
v0.20.0 → v0.32
- 色々機能が追加されたと思うが未調査。(@qryxip)
v0.2.1 → v0.2
v0.7.3 → v0.8
- getrandom v0.1.14 → v0.2
- rand_chacha v0.2.2 → v0.3
- rand_core v0.5.1 → v0.6
- rand_hc v0.2.0 → v0.3
- rand_pcg v0.2.1 → v0.3
- 色々機能が追加されたと思うが未調査。(@qryxip)
v0.2.2 → 0.4
- 色々機能が追加されたと思うが未調査。(@qryxip)
v0.5.0 → v0.6
- 色々機能が追加されたと思うが未調査。(@qryxip)
v1.3.2 → v1
v1.3.6 → v1
v1.4.0 → v1
v1.0.2 → v3
- 色々機能が追加されたと思うが未調査。(@qryxip)
v1.0.0 → v1
- 個人的には使い道が見出せなかったが、そこそこ使われていた印象。(@qryxip)
v0.2.4 → v0.2
v1.0.0 → v1
v0.9.0 → v0.10
- 使い道は多分結構多い。使っていた人も多いのではないか。(@qryxip)
- 色々機能が追加されたと思うが未調査。(@qryxip)
v0.1.3 → v0.1
- 使っていた人はいるのか。(@qryxip)
v1.0.2 → v1
- 今のRustだと
HashSet::from([1, 2, 3])
のように書けるとはいえ、maplitの書き方に慣れている人も多いのではないか。(@qryxip)
v1.5.3 → v1
- itertoolsがこれを返すことがあるので、それで使っていた人もいるのではないか。(@qryxip)
v14.3.0 → v15
- なんか遅いらしいし、実用していた人はいるのか。(@qryxip)
v0.2.0 → v0.4
- まあまあ手軽に使えたはずだし、使っていた人もいたかも。(@qryxip)
v0.1.0 → v0.1
v0.3.6 → v0.4
- RustでAtCoderに参加している人にとっては、言わずと知れたライブラリ。 (@qryxip)
- v0.3からの変更として致命的なバグの修正と、APIの追加がある(後で書く)。 (@qryxip)
v0.1.8 → v0.1
-
The MIT non-military non-spy Licenseというライセンスだったのが純粋な
MIT OR Apache-2.0
に変わった。 (@qryxip) - その他の変更点は特に無いはず。
read!
時にstdoutをflushするようになったことくらい?(text_ioでやるべきことか?という気もする) (@qryxip)
v0.5.0 → v0.5
- つい最近気付いたが、ライセンスは
MIT
といいつつThe MIT non-military non-spy License。罠でしょこれは (@qryxip)
v1.1.0 → v1
v1.2.0 → v1
クレートの依存クレートや依存クレートの依存クレートなども含めると次のようになるらしい。
ライセンス | クレートの名前 |
---|---|
(MIT OR Apache-2.0) AND Unicode-DFS-2016 | unicode-ident |
0BSD | vec_mut_scan |
Apache-2.0 | alga, approx, approx, nalgebra-macros, simba, superslice |
Apache-2.0 OR Apache-2.0 WITH LLVM-exception OR MIT | wasi |
Apache-2.0 OR MIT | anyhow, arbitrary, ascii, autocfg, cfg-if, either, fixedbitset, getrandom, hashbrown, indexmap, itertools, itertools-num, itoa, lazy_static, leb128, libc, libm, log, maplit, matrixmultiply, ndarray, num, num-bigint, num-complex, num-complex, num-derive, num-integer, num-iter, num-rational, num-traits, once_cell, partial_ref, partial_ref_derive, paste, permutohedron, petgraph, ppv-lite86, proc-macro2, proconio, proconio-derive, quote, rand, rand_chacha, rand_core, rand_distr, rand_hc, rand_pcg, rand_xoshiro, rawpointer, regex, regex-syntax, rustc-hash, serde, serde_derive, smallvec, static_assertions, syn, text_io, thiserror, thiserror-impl, typenum, unicode-xid, varisat, varisat-checker, varisat-dimacs, varisat-formula, varisat-internal-macros, varisat-internal-proof, version_check |
Apache-2.0 OR MIT OR Zlib | bytemuck, safe_arch, wide |
BSD-3-Clause | memoise, nalgebra |
CC0-1.0 | ac-library-rs |
MIT | argio, argio-macro, bitset-fixed, bitvec, funty, ordered-float, ordered-float, radium, synstructure, tap, whiteread, wyz |
MIT OR Unlicense | aho-corasick, memchr |
MPL-2.0+ | bitmaps, im-rc, sized-chunks |
提案されているクレートをすべて含むプロジェクトを作って cargo-license を使うことで取得できます。
目次
- AtCoder Rust Uncyclo
- AtCoder言語アップデート (2019年7月)
- AtCoder言語アップデート (2023年1月)
- AtCoder言語アップデート (2024年11月)