Euler 使用 “数学符号”字符集中的自定义运算符,以使用传统的数学符号来实现函数。
请记住,这不适用于或不推荐用于生产环境。 任何类型的自定义运算符都容易被滥用,应像对待方法替换 (method swizzling) 或复杂宏一样谨慎使用。
Euler 更适合在 Playground 中使用,在那里它可以用于以更通俗的符号教授和学习逻辑与数学。
Euler 以 莱昂哈德·欧拉 命名,这位瑞士数学家因推广现代数学符号而闻名,例如用于求和的希腊字母
Σ
和用于表示圆的周长与直径之比的π
,字母e
用于表示自然对数的底数,i
用于表示虚数单位,sin
和cos
用于表示三角函数,以及f(x)
用于表示带参数x
的函数f
。
import Foundation
import Euler
import PlaygroundSupport
𝑒 // 2.718281828459045
¬true // false
3 × 4 // 12
let prime = [2, 3, 5, 7, 11]
let fibonacci = [1, 1, 2, 3, 5, 8, 13]
prime ∩ fibonacci // {2, 3, 5}
∑[1, 2, 3, 4, 5] // 15
[1, 2] ⋅ [3, 4] // 11
7 ≠ 9 // true
var f: (Double) -> Double = sin
let g: (Double) -> Double = cos
for x in stride(from: 0, to: 4 * π, by: π / 8) {
(f ∘ g)(x) // ∿∿∿
}
(f′)(π) // -1
∈
- 集合成员∉
- 非集合成员∋
- 逆集合成员∌
- 逆非集合成员∩
- 集合交集∪
- 集合并集⊆
- 子集⊂
- 真子集⊄
- 不是子集⊇
- 超集⊃
- 真超集⊅
- 不是超集∘
- 复合MIT
Mattt (@mattt)