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)