@shd101wyy/yo 0.0.28 → 0.0.30
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +20 -1
- package/out/cjs/index.cjs +7554 -7826
- package/out/cjs/yo-cli.cjs +7604 -7876
- package/out/esm/index.mjs +7453 -7725
- package/out/types/src/codegen/async/runtime-core.d.ts +2 -1
- package/out/types/src/codegen/async/runtime-io-common.d.ts +3 -1
- package/out/types/src/codegen/async/runtime-io-linux.d.ts +1 -0
- package/out/types/src/codegen/async/runtime-io-macos.d.ts +1 -0
- package/out/types/src/codegen/async/runtime-io-windows.d.ts +1 -0
- package/out/types/src/codegen/async/runtime.d.ts +2 -1
- package/out/types/src/codegen/async/state-machine.d.ts +18 -2
- package/out/types/src/codegen/functions/context.d.ts +5 -0
- package/out/types/src/codegen/parallelism/runtime.d.ts +2 -1
- package/out/types/src/codegen/utils/index.d.ts +2 -0
- package/out/types/src/target.d.ts +1 -0
- package/out/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/std/cli/arg_parser.yo +365 -0
- package/std/collections/array_list.yo +108 -0
- package/std/collections/hash_map.yo +1 -1
- package/std/collections/hash_set.yo +7 -7
- package/std/collections/linked_list.yo +1 -1
- package/std/encoding/base64.yo +73 -0
- package/std/fs/file.yo +113 -6
- package/std/fs/types.yo +21 -0
- package/std/glob/glob.yo +206 -0
- package/std/http/http.yo +196 -0
- package/std/io/reader.yo +17 -0
- package/std/io/writer.yo +19 -0
- package/std/net/tcp.yo +1 -1
- package/std/prelude.yo +69 -0
- package/std/regex/compiler.yo +355 -0
- package/std/regex/flags.yo +104 -0
- package/std/regex/match.yo +83 -0
- package/std/regex/node.yo +283 -0
- package/std/regex/parser.yo +847 -0
- package/std/regex/regex.yo +714 -0
- package/std/regex/unicode.yo +365 -0
- package/std/regex/vm.yo +737 -0
- package/std/string/string.yo +398 -4
- package/std/sync/cond.yo +19 -19
- package/std/sync/mutex.yo +16 -16
- package/std/sys/bufio/buf_reader.yo +2 -2
- package/std/sys/future.yo +3 -3
- package/std/time/sleep.yo +18 -0
- package/std/toml/toml.yo +179 -0
- package/std/testing/assert.yo +0 -173
- package/std/time.yo +0 -13
package/README.md
CHANGED
|
@@ -17,7 +17,7 @@ Below is a non-exhaustive list of features that Yo supports:
|
|
|
17
17
|
|
|
18
18
|
- First-class types.
|
|
19
19
|
- Compile-time evaluation.
|
|
20
|
-
- Homoiconicity and metaprogramming (**Yo** syntax is inspired by the **Lisp** S expression).
|
|
20
|
+
- Homoiconicity and metaprogramming (**Yo** syntax is inspired by the **Lisp** S expression. Simple syntax rule, Human & AI friendly).
|
|
21
21
|
- Closure.
|
|
22
22
|
- [Algebraic Effects and Handlers](./docs/en-US/ALGEBRAIC_EFFECTS.md) (One-shot delimited continuation. Tail-Resumptive. Implicit parameters via `using`/`given`, effect handlers with `return`/`escape`, by [Evidence Passing](https://xnning.github.io/papers/multip.pdf)).
|
|
23
23
|
- [Async/await](./docs/en-US/ASYNC_AWAIT.md) (Builtin `IO` effect. Stackless coroutine & Cooperative multi-tasking. Lazy Futures, multi-await, single-threaded concurrency via state machine transformation).
|
|
@@ -109,6 +109,25 @@ $ sudo dnf install liburing-devel
|
|
|
109
109
|
$ sudo pacman -S liburing
|
|
110
110
|
```
|
|
111
111
|
|
|
112
|
+
## Standard Library
|
|
113
|
+
|
|
114
|
+
Yo ships with a comprehensive standard library covering strings, collections, file I/O, networking, encoding, regex, crypto, and more. For the full module reference, see **[Standard Library Modules](./docs/STD_LIBRARY_MODULES.md)**.
|
|
115
|
+
|
|
116
|
+
Key modules include:
|
|
117
|
+
|
|
118
|
+
| Module | Import | Description |
|
|
119
|
+
| ----------- | ------------------------------------------------------------ | ----------------------------------------------------------- |
|
|
120
|
+
| String | `open import "std/string"` | UTF-8 strings with parsing, search, transform |
|
|
121
|
+
| Collections | `"std/collections/array_list"`, `hash_map`, `hash_set`, etc. | ArrayList, HashMap, HashSet, BTreeMap, Deque, PriorityQueue |
|
|
122
|
+
| File System | `open import "std/fs/file"` | Async file I/O, directories, metadata |
|
|
123
|
+
| Networking | `open import "std/net/tcp"` | TCP/UDP sockets, DNS resolution |
|
|
124
|
+
| JSON | `open import "std/encoding/json"` | Full JSON parser/stringifier |
|
|
125
|
+
| TOML | `"std/toml/toml"` | TOML config file parser |
|
|
126
|
+
| HTTP | `"std/http/http"` | HTTP request builder, response parser |
|
|
127
|
+
| Regex | `open import "std/regex/regex"` | Regular expression engine |
|
|
128
|
+
| Crypto | `open import "std/crypto/sha256"` | SHA-256, MD5, random |
|
|
129
|
+
| Formatting | `open import "std/fmt"` | `print`, `println` for any `ToString` type |
|
|
130
|
+
|
|
112
131
|
## Code examples
|
|
113
132
|
|
|
114
133
|
Check the [./tests](./tests/) and [./std](./std/) folders for code examples.
|