Skip to content

spec: debugger() 恒为暂停;补 ndarray / duration 用例(3 条钉住实现缺口) - #350

Merged
miaobyte merged 3 commits into
masterfrom
feat/spec-debugger-pause-and-tutorials
Sep 21, 2026
Merged

miaobyte merged 3 commits into
masterfrom
feat/spec-debugger-pause-and-tutorials

Conversation

@miaobyte

Copy link
Copy Markdown
Contributor

三组独立改动,按主题分三个 commit。

1. spec:debugger() 恒为暂停

原文说「非调试模式下为 no-op」,但 runtime 根本没有调试模式这个概念:debugger() 就是源码内联暂停点,恒置 ‥status=paused。留着 no-op 那条分支等于留了一条「同一个内建有两种行为」的路,而 runtime 里没有对应开关 —— 按规范驱动原则删掉。

  • 02-kvspace模型/10-系统变量:§debugger() 去掉模式之分,只说恒 ≡ vthread·setstatus("paused")
  • 附录/07-内建函数:builtin 注释同步
  • 05-runtime语义/02-执行模型-续:锚例列表去掉已不存在的 fib.kv
  • tutorial/09-debugger/pauses.kv:锁住该语义(debugger() 之后的指令不运行)✅

2 & 3. 新增用例(当前 FAIL,钉住实现缺口

用例 期望 实际 缺口
04-ndarray/array_append.kv 4 0 规范 02-kvspace模型/07-数组两种物理形态 明写「compact 数组必须能直接 append」→ 实现未先 scatter
04-ndarray/array_slice.kv 2 0 同上(slice)
13-stdlib/duration/sub.kv 2 8 5h-3h 打出 5+3sub 走到加法分支,未按 opcode 区分

三条都没有 // wip / // extern 标记,是当活用例写的,故预期 CI 双后端皆红(shm 另有既存的列举分歧两条,与本 PR 无关)。

🤖 Generated with Claude Code

miaobyte and others added 3 commits September 21, 2026 14:44
原文说「非调试模式下为 no-op」,但 runtime 根本没有调试模式这个概念:`debugger()`
就是源码内联暂停点,恒置 ‥status=paused。把 no-op 那条分支从规范里删掉——留着它
就等于留了一条「同一个内建有两种行为」的路,而 runtime 里没有对应的开关。

- 02-kvspace模型/10-系统变量:§debugger() 去掉模式之分,只说恒 ≡ vthread·setstatus("paused")
- 附录/07-内建函数:builtin 注释同步
- 05-runtime语义/02-执行模型-续:锚例列表去掉已不存在的 fib.kv
- tutorial/09-debugger/pauses.kv:锁住该语义(debugger() 之后的指令不运行)

Co-Authored-By: Claude Code <noreply@anthropic.com>
规范依据 02-kvspace模型/07-数组两种物理形态:array·append / array·slice 作用于
compact 数组时要先自动 scatter,即 compact 必须能直接 append / slice,调用方不必
先手动散开。

两个用例当前 FAIL(numel 返 0 而非 4 / 2),钉住的正是这条规范与实现之间的缺口。

Co-Authored-By: Claude Code <noreply@anthropic.com>
time/duration·sub 与 add 是同族对称算子,实现必须按 opcode 区分。用例当前 FAIL:
5h - 3h 打出 8(= 5 + 3),说明 sub 走到了加法分支。

Co-Authored-By: Claude Code <noreply@anthropic.com>
@miaobyte
miaobyte merged commit c15673e into master Sep 21, 2026
2 of 6 checks passed
@miaobyte
miaobyte deleted the feat/spec-debugger-pause-and-tutorials branch September 21, 2026 06:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant