Giter Site home page Giter Site logo

zx's Introduction

zx

A collection of experimental ZZ modules.

Installation

In your project's zz.toml file:

[repos]
zx = "git://github.com/zx-project/zx.git"

Modules

zargv

Parse command line arguments supporting a variety of flag formats.

See the documentation for more information.

Usage

[dependencies]
zargv = "*"
using zargv

utils

Various utility functions, like memory management, etc.

See the documentation for more information.

Usage

[dependencies]
utils = "*"
using zxutils

curl

A ZZ binding to libcurl that makes working with curl in ZZ much easier.

See the documentation for more information.

Usage

[dependencies]
curl = "*"
using zxcurl

list

A doubly-linked list implementation.

See the documentation for more information.

Usage

[dependencies]
list = "*"
using list

http

A simple HTTP request library based on the [curl][curl] module.

See the documentation for more information.

Usage

[dependencies]
http = "*"
using zxhttp

See Also

License

MIT

zx's People

Contributors

jwerle avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

zx's Issues

ZZ Standard Library Upstream

Starting a discussion on modules created here or elsewhere that stand a chance to be upstreamed into the mainline ZZ standard module library

some comments on list

unfortunately there's no inline review option unless you open a PR, so i'll comment this way

export inline fn max(u32 x, u32 y) -> u32 {

these should really be upstreamed

https://github.com/zx-project/zx/blob/master/modules/list/src/node.zz#L79

this exists

https://github.com/zetzit/zz/blob/master/modules/std/src/lib.zz#L10

but memory::zero sounds better than std::memset. should probably rename upstream

https://github.com/zx-project/zx/blob/master/modules/list/src/list.zz#L36

this probably meaningless. theories are very expensive (slow compilation) so don't use them excessively.

https://github.com/zx-project/zx/blob/master/modules/list/src/list.zz#L54

i like this struct, but for clarity head and tail should be marked unsafe, because they might be null.

https://github.com/zx-project/zx/blob/master/modules/list/src/list.zz#L115

(opinion) i think default() makes sense as function name here because you're filling in default values for the callbacks

https://github.com/zx-project/zx/blob/master/modules/list/src/list.zz#L106

does that mean this list can only store borrowed pointers? i mean, thats's actually a good idea.
i'm just scared of it because lifetimes aren't well defined in zetz yet. you could store a pointer to something that later gets deleted. anyway, that's an issue i need to work on, just be prepared for breaking changes in that direction :)

https://github.com/zx-project/zx/blob/master/modules/list/src/list.zz#L89

does that really have to be in a separate module? i'd rather have clean single file thingies with as little code as possible (more code = harder to read & more bugs)

https://github.com/zx-project/zx/blob/master/modules/list/src/iterator.zz#L58

dont return self pointers. that's confusing and currently makes both the prover explode as well as the nodejs export do very wrong things.

sorry that these things aren't useful compile errors. things are still moving around alot :)

https://github.com/zx-project/zx/blob/master/modules/list/src/iterator.zz#L140

i dont understand why this exists. why not just break?

https://github.com/zx-project/zx/blob/master/modules/list/src/iterator.zz#L174

destructors should be called drop(). like C++, drop() functions are called automatically when the lifetime ends (which is currently really broken, bear with me)

i'm not entirely sure what this does tho. generally structures that need no destructor are easier to manage

https://github.com/zx-project/zx/blob/master/modules/list/src/node.zz#L87

what does this do? deref usually refers to looking at a value refferenced by a pointer.

does the function remove a node from a list?

comments on curl

first of all this is super useful.
probably a reason for me to make sure we have a website with disoverable modules soon.

https://github.com/zx-project/zx/blob/master/modules/curl/zz.toml#L3

i mean, why not just "curl". you're the first one to make a curl module, so just grab the name ;)

https://github.com/zx-project/zx/blob/master/modules/curl/tests/curl.zz#L15

any chance to use the err module here? In general let me know how you think errors can be improved.

https://github.com/zx-project/zx/blob/master/modules/curl/src/easy.zz#L30

why are these nessesary? this looks like something that needs improving in zz?

https://github.com/zx-project/zx/blob/master/modules/curl/src/easy.zz#L68

this should require

where buffer_lenght <= len(buffer)

for safety.

https://github.com/zx-project/zx/blob/master/modules/curl/src/easy.zz#L110

should require where nullterm(string)

etc

https://github.com/zx-project/zx/blob/master/modules/curl/src/options.zz#L3

this looks tedious. why are these necessary?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.