-
-
Notifications
You must be signed in to change notification settings - Fork 2.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
audit the standard library API and implementations #1629
Comments
* add reserved field to match musl struct definition so that it will work with musl libc. * add libc getrusage so that it will work with libc what's not done in this branch is: * test coverage. See #1629, which should also aim to provide general test coverage for the std lib. * rusage struct bits for non-linux operating systems
Does naming consistency fall under this issue? It seems like there's a mix of long versus shortened names (e.g. |
tl;dr: use code generation for data structures then we only need to audit the code generation part Maybe we should name standard library functions based on some established library standard like Progsbase. We don't need to write test cases ourselves since it's provided by the standard library standard. Non-IO functions can be easily generated from existing code in another language. It's possible to use code generation to make entire Progsbase library available in Zig, so how big a standard library do we want Zig to have? We should have a discussion on this. On code generation, aside from Progsbase, it's easy to generate code from any language with similar memory model (no RC or GC). We may also implement a new back-end for Haxe and generate standard library that way. |
There are so many issues about the standard library. I want to create a project at https://github.com/ziglang/zig/projects?type=beta but I don't have permission. @andrewrk can you do it? We probably also need a code review solution for (crowd-sourcing) reviewing standard library. |
`TailQueue` was implemented as a doubly-linked list, but named after an abstract data type. This was inconsistent with `SinglyLinkedList`, which can be used to implement an abstract data type, but is still named after the implementation. Renaming `TailQueue` to `DoublyLinkedList` improves consistency between the two type names, and should help discoverability. `TailQueue` is now a deprecated alias of `DoublyLinkedList`. Related to issues #1629 and #8233.
Currently some namespaces like
|
The text was updated successfully, but these errors were encountered: