@cella-lang/cpp 0.1.202610101958 → 0.1.202610102010
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/CHANGES.md +8 -1
- package/cpp.cell +0 -0
- package/index.json +37 -1
- package/package.json +2 -2
package/CHANGES.md
CHANGED
|
@@ -5,9 +5,16 @@
|
|
|
5
5
|
|
|
6
6
|
## 未發佈
|
|
7
7
|
|
|
8
|
-
###
|
|
8
|
+
### 排序
|
|
9
|
+
|
|
10
|
+
- 自訂比較函式(lambda):`sortBy`、`stableSortBy`(`sortByOkB`、`stableSortByOkB`、`strictWeakB`)。
|
|
11
|
+
|
|
12
|
+
### 控制流
|
|
9
13
|
|
|
10
14
|
- `goto` 與標籤:`Jump`、`gotoS`、`retJ`、`withLabels`(`@cella-lang/c` 的 `c.withLabels` 等改成它們的別名)。
|
|
15
|
+
|
|
16
|
+
### 記憶體與 C 字串
|
|
17
|
+
|
|
11
18
|
- **⚠️ 不相容**:記憶體對元素型別是泛型的:`cpp.GMem A`、`cpp.GAlloc A`、`cpp.GAllocated A`(整數的 `cpp.Mem t`、`cpp.Alloc t`、`cpp.Allocated t` 是 `GMem (Val t)` 等的別名,照舊可用)。配置、解參照的判斷、寫(`cpp.store`)、指標加減、`delete`、離開作用域對任意 `A`;另加泛型的讀 `cpp.loadD`、`cpp.gmemNew`。前置條件的資料型別 `cpp.DerefOkD`、`StoreOkD`、`PtrAddOkD`、`DeleteOkD` 的第一個索引從 `IType` 改成元素型別:寫 `cpp.DerefOkD (cpp.Val t) m p`(用 `cpp.derefOk refl` 的不受影響)。
|
|
12
19
|
|
|
13
20
|
- **⚠️ 不相容**:配置 `cpp.Alloc` 多一個欄位 `ro`(唯讀):`cpp.alloc cells alive heap ro`,投影 `cpp.allocRo`。寫入的判斷(`cpp.derefB m p false`,即 `cpp.storeOk` 的條件)與 C 字串的 `cpp.cRoomB` 要求不是唯讀。自己建 `cpp.alloc` 的程式要補上最後一個引數(一般的配置是 `false`)。
|
package/cpp.cell
CHANGED
|
Binary file
|
package/index.json
CHANGED
|
@@ -602,6 +602,18 @@
|
|
|
602
602
|
"merkle": "2560bc00592bccdef1450853c77668948b254b71fff546e4aa218782956c02f2",
|
|
603
603
|
"own": "8a6a225045c57a5bcb022f5a73a9132c208f408a3702f3d23cecd14786b18695"
|
|
604
604
|
},
|
|
605
|
+
"cpp.cpp.allL2": {
|
|
606
|
+
"merkle": "8bc2c15e4a640d133ea721dc65c8bbfb3cf2b85ba2ac83c32788ec7899b5740e",
|
|
607
|
+
"own": "bc83b1257b7d725a8c55ec56b29737be6da543daf0287c19de31ff2d0899395c"
|
|
608
|
+
},
|
|
609
|
+
"cpp.cpp.allL3": {
|
|
610
|
+
"merkle": "f2bf2fc15fcbd8279b90e71708e5878f09fa8639893b474bbc90d5315b2fc968",
|
|
611
|
+
"own": "2768151387ccf37c06169f322bb658abfa164b42649fb7829aa70f9cffc9c6bc"
|
|
612
|
+
},
|
|
613
|
+
"cpp.cpp.allTrue": {
|
|
614
|
+
"merkle": "76a4e55f54c7746b1593598d73141ffb34805d4ccfb0cd476ccad4981769f215",
|
|
615
|
+
"own": "c5baa9d15fc79e34a696845e4554a47c0c246092fd899fe5805a6df7c2c0ab2f"
|
|
616
|
+
},
|
|
605
617
|
"cpp.cpp.allocAlive": {
|
|
606
618
|
"merkle": "e9ca02509f9a56bcb04162f6e6ac0e353b567295f0dbb8be07c50cfce7903566",
|
|
607
619
|
"own": "d57c84ed6c1ef66cda9b93f206b4d99e7e7941d6d30dfaf5de2f77cdf25337d5"
|
|
@@ -1438,6 +1450,10 @@
|
|
|
1438
1450
|
"merkle": "257e373d38cabfda92486a0908160975fd30e74e4ff468e6e643a43b6c688db6",
|
|
1439
1451
|
"own": "526669331ca6d0966d6753c41eb39ffec4fede6766d23b6d3b2585f550b29ff2"
|
|
1440
1452
|
},
|
|
1453
|
+
"cpp.cpp.equivB": {
|
|
1454
|
+
"merkle": "58e5d6b52798af6799abc0880950b962a25868e44bc4d988ed45652c9825d029",
|
|
1455
|
+
"own": "b886fb3f577d37df8725eb63cb38ca672ff94d44d6aa7bb80e80a7e75a726add"
|
|
1456
|
+
},
|
|
1441
1457
|
"cpp.cpp.eraseA": {
|
|
1442
1458
|
"merkle": "0bda1a09915290e32ccd0cd8a9707dd177ddc899a6443454a82d0d63e27ab247",
|
|
1443
1459
|
"own": "af3640ba556d55f4c9d498a25b2436b25f5bc5e90de4fcbeedb62cedb369cd2e"
|
|
@@ -3738,6 +3754,14 @@
|
|
|
3738
3754
|
"merkle": "2f7b531846aba6eb709a5b86c756cb8a93cb98ac321fa057f4c8c566b8a0a2d6",
|
|
3739
3755
|
"own": "ff2f776982a0fac3b19599b252918e92daae69f6e5bf18dfa5d1873ba6d1b137"
|
|
3740
3756
|
},
|
|
3757
|
+
"cpp.cpp.sortBy": {
|
|
3758
|
+
"merkle": "65fbe8573b177407995486e10c40ff477415d79782abadc912dc13e1d66991cb",
|
|
3759
|
+
"own": "550282ec01468942ff63cb06299daa20789169771658ce725247c3e798d35ca7"
|
|
3760
|
+
},
|
|
3761
|
+
"cpp.cpp.sortByOkB": {
|
|
3762
|
+
"merkle": "694e948d7957da335959214b21770b4724ed355a06667825b7a47802209c5ec3",
|
|
3763
|
+
"own": "021602c6da929ad3f2e6631df3a53b1fb03d81f8022f5bfe4d8748e9801cd45e"
|
|
3764
|
+
},
|
|
3741
3765
|
"cpp.cpp.sortLe": {
|
|
3742
3766
|
"merkle": "2b9b1d421f37a7fb3661a48cfd00bae8338ee44748a1effaa32d25d123643bc6",
|
|
3743
3767
|
"own": "cfd31d2f8657dbde89acd32584f09a98ae32f6da0d6f2755e6fcd1553b45cb99"
|
|
@@ -3762,6 +3786,14 @@
|
|
|
3762
3786
|
"merkle": "ada668bbd18d584252f656188577dc8d1718984f570472b07330760d6eb647fa",
|
|
3763
3787
|
"own": "c69674c14e2c43e0a1eb14464e1f8ee6546ba4b50e2bc47cfdb5d544d35601e7"
|
|
3764
3788
|
},
|
|
3789
|
+
"cpp.cpp.stableSortBy": {
|
|
3790
|
+
"merkle": "87cfb655e2087eeaddb26e2331ca54e20e931f5334b918b02bac17c992640d4c",
|
|
3791
|
+
"own": "596b7a197eb60060e66222219d1d82acef0f63d809992ac1a87edec321fe8f94"
|
|
3792
|
+
},
|
|
3793
|
+
"cpp.cpp.stableSortByOkB": {
|
|
3794
|
+
"merkle": "4eeda82d301f7dc60a59d04e26200e782eaa0bbca2a99c623e851db496b4563a",
|
|
3795
|
+
"own": "ec7c0cd324a2e68861bc1f99340cabe9186fbc0cc76f50c1fdd4e2f21a822a17"
|
|
3796
|
+
},
|
|
3765
3797
|
"cpp.cpp.startsL": {
|
|
3766
3798
|
"merkle": "335af703ac91a793ee9b1d2b2e7ced11d7f0b8eef5fa5ac9f6b699aac494a090",
|
|
3767
3799
|
"own": "e6c2a186c357e44e29cbe67415fa03c782c1df8efc6278b183737379fedf9445"
|
|
@@ -4054,6 +4086,10 @@
|
|
|
4054
4086
|
"merkle": "e6c0b5bd7639ae087a7978759961bca59784c1a95918978af218b4c89af75b4b",
|
|
4055
4087
|
"own": "002ab78a9f1645847223afb76e9294016e3ededc447539007febe7f103fdae2b"
|
|
4056
4088
|
},
|
|
4089
|
+
"cpp.cpp.strictWeakB": {
|
|
4090
|
+
"merkle": "37f34cca305a96198e00d27f62bc048415672e92db2e816f6fbc644fb5bf1e4f",
|
|
4091
|
+
"own": "d994fdedc339936f0b1d6d0d9b913dcb8baa479f4dbee141bf4132e81952b0aa"
|
|
4092
|
+
},
|
|
4057
4093
|
"cpp.cpp.strlenC": {
|
|
4058
4094
|
"merkle": "69cb76690602dd3c6f7b2d02d70170f2a09434865d0e4a3767cb54094fe125be",
|
|
4059
4095
|
"own": "994f9370ea43850dcf4462465d7e3a30d63266edb39a0ec5bf1c258c47bcd3f1"
|
|
@@ -4522,7 +4558,7 @@
|
|
|
4522
4558
|
"format": 1,
|
|
4523
4559
|
"modules": {
|
|
4524
4560
|
"cpp": {
|
|
4525
|
-
"bytes":
|
|
4561
|
+
"bytes": 2530652,
|
|
4526
4562
|
"deps": [
|
|
4527
4563
|
"cpp"
|
|
4528
4564
|
]
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cella-lang/cpp",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.202610102010",
|
|
4
4
|
"description": "A formally verified C++ subset for the Cella proof checker: integer types with C++ promotions and conversions (LP64 / AVR), control flow with small-step semantics, iostream, arrays, vector, sort, and standard containers — compiled module pack.",
|
|
5
5
|
"files": [
|
|
6
6
|
"cpp.cell",
|
|
@@ -28,6 +28,6 @@
|
|
|
28
28
|
"modules": [
|
|
29
29
|
"cpp"
|
|
30
30
|
],
|
|
31
|
-
"packHash": "
|
|
31
|
+
"packHash": "89906f3917c76c45"
|
|
32
32
|
}
|
|
33
33
|
}
|