diff options
| author | eunhhu <[email protected]> | 2026-10-04 11:57:04 +0100 |
|---|---|---|
| committer | eunhhu <[email protected]> | 2026-10-04 11:57:04 +0100 |
| commit | 57804c158610996433dc57b31b6d05938a292ec7 (patch) | |
| tree | a5815c398a4cee63ed9028611f24fc0e36e29ef7 | |
| parent | 31e4f8aab2d4bac7daaa4c849244f9789ded73d4 (diff) | |
| download | aup-57804c158610996433dc57b31b6d05938a292ec7.tar.gz aup-57804c158610996433dc57b31b6d05938a292ec7.zip | |
Say the libraries' record limit, and that rows of a library's record arrive (002)
| -rw-r--r-- | docs/design/002-dsl-direction.md | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/docs/design/002-dsl-direction.md b/docs/design/002-dsl-direction.md index 2cbe914..f59019f 100644 --- a/docs/design/002-dsl-direction.md +++ b/docs/design/002-dsl-direction.md @@ -290,9 +290,12 @@ view golds = count(u in users where store.rank(u.points) == "gold") 검증(`tests/check.py`의 `library_records`): 레코드를 라이브러리로 옮긴 할 일 앱이 옮기기 전과 같은 모듈(2,509바이트)을 만든다. 레코드 셋을 가진 라이브러리에서 하나를 쓰는 앱의 모듈에는 레코드가 하나다. 앱이 `pure-run --store`로 사용자 셋을 -넣고, 같은 라이브러리를 쓰는 옮기기 모듈이 같은 저장소에서 사용자마다 점수 10을 더하고, 앱이 다시 열어 30을 본다. 메시지의 행 -필드가 라이브러리의 레코드를 받는다. 위의 진단 여섯과 함께 같은 이름의 레코드가 두 라이브러리에서 올 때, 다른 레코드의 값, -라이브러리 안의 이름 겹침 진단을 더했다(11건). +넣고, 같은 라이브러리를 쓰는 옮기기 모듈이 같은 저장소에서 사용자마다 점수 10을 더하고, 앱이 다시 열어 30을 본다. 라이브러리 +레코드의 행 필드를 가진 메시지를 `pure-serve`에 JSON으로 보내면 행이 들어온다. 위의 진단 여섯과 함께 같은 이름의 레코드가 두 +라이브러리에서 올 때, 다른 레코드의 값, 라이브러리 안의 이름 겹침, 키 있는 리스트의 힌트(`users.add(store.User { ... })`처럼 +라이브러리 이름을 붙여 알린다) 진단을 더했다(12건). + +한도: 라이브러리들이 선언하는 레코드는 모두 합쳐 64개다(모듈에는 그 가운데 쓰는 것만, 앱의 것과 합쳐 16개까지). - 레코드 이름을 모듈에서 앞에 붙이지 않는 까닭은 Pure다. 모듈의 레코드 이름은 점이 없는 식별자이고 상태와 한 이름공간이다. `store.User`를 `store_User` 같은 이름으로 바꿔 넣으면 레코드를 옮길 때 모듈이 바뀌고, 같은 저장소를 읽는 질의(이름까지 같아야 |
