Bỏ qua để đến nội dung

Tra cứu nhanh

Trang này là câu trả lời cho ba câu hỏi: chín effect gồm những gì, chúng quản lý những builtin nào, và thư viện chuẩn có gì.

Mọi bảng dưới đây được sinh tự động từ mã nguồn trình biên dịch, không gõ tay: danh sách effect và ánh xạ builtin đến từ src/hlc/parser.hls và src/hlc/checker.hls, danh sách module đến từ cây std/ và core/, và các con số snapshot đến từ snapshot/MANIFEST.json. Khi trình biên dịch thay đổi, trang này thay đổi theo — và CI sẽ fail nếu bản commit trong repo lệch.

Effect Builtin Trong bí danh trùm uses IO?
| `IO` | 6 builtins | Có | | `Fs` | 8 builtins | Có | | `Clock` | 4 builtins | Có | | `Args` | 2 builtins | Có | | `Exit` | 1 builtins | Có | | `Net` | 11 builtins | **Không** | | `Rand` | 3 builtins | **Không** | | `Proc` | 16 builtins | **Không** | | `Conc` | 31 builtins | **Không** |
Tất cả builtin, theo effect**`IO`** — `eprint`, `eprintln`, `isatty`, `print`, `println`, `read_line` **`Fs`** — `file_exists`, `fs_is_dir`, `fs_read_dir`, `fs_set_perms`, `fs_size`, `read_file`, `read_file_tainted`, `write_file` **`Clock`** — `clock_ms`, `instant_now_ns`, `system_time_now_ms`, `thread_sleep_ms` **`Args`** — `args`, `tainted_args` **`Exit`** — `exit` **`Net`** — `net_close`, `net_lookup`, `net_read`, `net_tcp_accept`, `net_tcp_connect`, `net_tcp_listen`, `net_tls_get`, `net_udp_open`, `net_udp_recv_from`, `net_udp_send_to`, `net_write` **`Rand`** — `rand_float`, `rand_int`, `rand_seed` **`Proc`** — `args_os`, `cwd_get`, `cwd_set`, `env_get`, `env_has`, `env_set`, `env_unset`, `proc_child_close`, `proc_child_read`, `proc_child_write`, `proc_exec`, `proc_kill`, `proc_pid`, `proc_spawn`, `proc_wait`, `sys_hostname` **`Conc`** — `async_spawn`, `await`, `chan.len`, `chan.recv`, `chan.recv_or`, `chan.send`, `chan.try_send`, `chan_new`, `chan_new_bounded`, `future_poll`, `future_ready`, `future_select`, `gen_spawn`, `select`, `spawn`, `stream_close`, `stream_filter_int`, `stream_flat_map_int`, `stream_fold_int`, `stream_len`, `stream_map_int`, `stream_merge_int`, `stream_new`, `stream_recv`, `stream_send`, `stream_take_int`, `stream_try_recv`, `task.join`, `thread_current_id`, `thread_sleep_ms`, `thread_yield`
Backend Triple Ghi chú
Native C x86_64 / aarch64 / riscv64 — Linux, macOS, Windows, FreeBSD Đường mặc định: AOT qua cc
LLVM IR bất kỳ đích LLVM nào hlc --emit llvm prog.hls out.ll
WebAssembly wasm32 std.jsffi / std.dom; đóng gói bởi hls-wasm-pack
Bare metal x86_64 / aarch64 / riscv64 -unknown-none Multiboot2/Limine, IDT/GDT, MMIO, buffer an toàn DMA, script liên kết tuỳ biến, DWARF 5

64 module trong std/ và 18 module trong core/ — tổng cộng 82.

**core** (13) — `str`, `math`, `fmt`, `list`, `set`, `collections`, `bits`, `option`, `result`, `hash`, `regex`, `template`, `log` **system** (12) — `io`, `fs`, `env`, `process`, `thread`, `sync`, `time`, `stream`, `async`, `archive`, `uuid`, `net` **web** (16) — `http`, `http2`, `http_router`, `http_server`, `websocket`, `sse`, `cookie`, `session`, `csrf`, `graphql`, `openapi`, `dom`, `jsffi`, `jsffi_callback`, `url`, `html` **data** (10) — `json`, `json_stream`, `csv`, `config`, `crypto`, `sha1`, `sha256`, `base64`, `hex`, `simd` **cli** (8) — `cli`, `tui`, `color`, `progress`, `complete`, `man`, `hlsdoc`, `hlscli` **security** (2) — `taint`, `sanitize` **testing** (3) — `test`, `quickcheck`, `bench` **bare** (18) — `core.alloc`, `core.asm`, `core.atomics`, `core.boot`, `core.clone`, `core.dma`, `core.eq`, `core.interrupt`, `core.iter`, `core.mem`, `core.mmio`, `core.option`, `core.panic`, `core.port`, `core.result`, `core.rt`, `core.section`, `core.stack`

30 công cụ native trong tools/, cộng language server, debug adapter và REPL:

`hlaarch64`, `hlbindgen`, `hlboot`, `hlcov`, `hlemit`, `hlfmt`, `hlfront`, `hllint`, `hlpgo`, `hlriscv`, `hls-ctime`, `hls-det`, `hls-fuzz`, `hls-lts`, `hls-mem`, `hls-perf`, `hls-pkg`, `hls-rc`, `hls-repro`, `hls-rss`, `hls-rt`, `hls-sbom`, `hls-sign`, `hls-size`, `hls-snap`, `hls-spec-check`, `hls-tlog`, `hls-xdiff`, `hltest`, `ll_validate`

15 dòng, mỗi dòng có cơ chế thực thi, điểm neo trong cây mã nguồn và các probe âm tính phải thất bại đúng như mong đợi:

`G-MEM-01`, `G-MEM-02`, `G-TYPE-01`, `G-ARITH-01`, `G-EFF-01`, `G-TAINT-01`, `G-CONC-01`, `G-MATCH-01`, `G-CAP-01`, `G-SBX-01`, `G-CT-01`, `G-FFI-01`, `G-SPEC-01`, `G-DET-01`, `G-CORPUS-01`
Trường Giá trị
Phiên bản {bootstrap.version}
Số dòng 43,610
Số byte 3,075,424
SHA-256 {bootstrap.sha256}
Closure digest {bootstrap.closureDigest}
Số file trong closure 20