5.4
另见名扩展库:
5.4.1 例程命名规则
规则 | 指示 | 含义 | 举例 |
囗/古/舌/亻 + | “”中“键值对”唯一性的确立方式 | ||
山/氵 + | “”中“键值对”是否可变 | 是不可或可被增加、删除或修改的 | |
⺮/艹 + | “”中“键值对”之“键”的存储方式 | 是刚性或柔性的 | |
亻 | 相似集(类型相同且元素相似) | 出参数据与进参数据相比,类型相同且内容类似 | |
阝 | 连续集(类型相同且元素连续相同) | 出参数据与进参数据相比,类型相同且前者是后者的一部分 | |
刂 | 缺失集(删除、移走、去掉部分元素之后的集合) | 出参数据与进参数据相比,类型相同且前者是后者的子集 | |
扌/!结尾 | 修改警示 | 会直接修改原始数据而非另造新数据作输出 | |
^结尾 | 入参 | 入参数据是类数据 | |
+结尾 | 入参 | 入参数据以相同方式多次出现 |
5.4.2 、、、、
为新造字、、、为新造字、、、、为新造字为新造字
穴:简写,通空。
另见:
- 是否可以增加、修改、删除“键值对”,即“”的内容是否可以被改变:
:内容不可改变的“”,也称“固”;
:内容可改变的“”,也称“易”(扌偏旁相关的例程或以!结尾的例程只能作用在“易”上)。
- 不能有重复的“键值对”,即“键值对”的唯一性要如何被确立(通过各个“键值对”之间“键”的相互比较来确立):
- 对于“键值对”,其“键”的存储可以是:
:刚性的;
:柔性的;
:类的。
5.4.3 ^、^、^、^,^、^、^、^,^、^、^、^,^、^、^、^,化
> (^ '((1 . 2) (3 . 4))) '#hash((1 . 2) (3 . 4))
> (? (^ '((1 . 2) (3 . 4)))) #t
> (^ '((1 . 2) (3 . 4))) '#hash((1 . 2) (3 . 4))
> (? (^ '((1 . 2) (3 . 4)))) #f
> (^ '((1 . 2) (3 . 4))) '#hashalw((1 . 2) (3 . 4))
> (? (^ '((1 . 2) (3 . 4)))) #t
> (化 ( 1 2 3 4)) '((1 . 2) (3 . 4))
> (化 ( 1 2 3 4)) '((1 . 2) (3 . 4))
> (化 ( 1 2 3 4)) '((1 . 2) (3 . 4))
5.4.4 ?,?、?、?、?,?、?、?,?
> (? ( 1 2 3 4)) #t
> (? ( 1 2 3 4)) #t
> (? ( 1 2 3 4)) #t
> (? ( 1 2 3 4)) #t
> (? ( 1 2 3 4)) #t
> (^ '((1 . 2) (3 . 4))) '#hash((1 . 2) (3 . 4))
> (? (^ '((1 . 2) (3 . 4)))) #t
> (? (^ '((1 . 2) (3 . 4)))) #t
> (? (^ '((1 . 2) (3 . 4)))) #t
> (? (^ '((1 . 2) (3 . 4)))) #t
> (? (^ '((1 . 2) (3 . 4)))) #f
> (? (^ '((1 . 2) (3 . 4)))) #t
> (? ( 'a "aa" 'b "bb")) #f
> (? ()) #t
5.4.5 、,日?
5.4.6 弔、𫼛,,、
> (弔 ( 'a "apple" 'b "banana") 'b) "banana"
> (弔 ( 'a "apple" 'b "banana") 'b "cat") "banana"
> (弔 ( 'a "apple" 'b "banana") 'c "cat") "cat"
> ( ( 'a "apple" 'b "banana") 'b) 'b
> ( ( 'a "apple" 'b "banana") 'b "cat") 'b
> ( ( 'a "apple" 'b "banana") 'c "cat") "cat"
> ( ( 'a "apple" 'b "banana") 'a) '#hash((b . "banana"))
> (名 h ( 'a "apple" 'b "banana")) > (𫼛 h 'b "cat") "banana"
> h '#hash((a . "apple") (b . "banana"))
> (𫼛 h 'c "cat") "cat"
> h '#hash((a . "apple") (b . "banana") (c . "cat"))
> ( h 'a) > h '#hash((b . "banana") (c . "cat"))
5.4.7 攸、攸+,、+,攸/入、/入
参见:攸
> (攸 ( 'a "apple" 'b "banana") 'b "ba") '#hash((a . "apple") (b . "ba"))
> (攸+ ( 'a "apple" 'b "banana") 'a "ap" 'b "ba") '#hash((a . "ap") (b . "ba"))
> (攸/入 ( 'a "apple" 'b "banana" 'c 1) 'c ) '#hash((a . "apple") (b . "banana") (c . 2))
> (名 h ( 'a "apple" 'b "banana")) > (+ h 'a "ap" 'b "ba") > h '#hash((a . "ap") (b . "ba"))
5.4.8 𠛮、,𠛮
𠛮为古活字
刂:删除;
5.4.9 各、、佫
为新造字
又:的缩写;
参见:佫
5.4.10 仔?
5.4.11 巨
5.4.12 化
5.4.13 基础例程
(require ming/racket/base) | package: ming |
5.4.14 额外例程
(require ming/racket/hash) | package: ming |