blob: 45746b42703637e433c25efb083c4a78a10f74f7 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
(.require
[library
[lux (.except)
["[0]" meta]
[abstract
[monad (.only do)]]
[data
["[0]" text (.use "[1]#[0]" hash)
["%" \\format (.only format)]]]
[macro
[syntax (.only syntax)]]
[meta
["[0]" code]
[type
[primitive (.except)]]]]])
(primitive .public ID
Text
(def .public id
(-> ID Text)
(|>> representation))
(def .public custom
(-> Text ID)
(|>> abstraction))
(def .public generic
(syntax (_ [])
(do meta.monad
[module meta.current_module_name
id meta.seed]
(in (list (` (..custom (, (code.text (format "i" (%.nat_16 id)
"_" (%.nat_16 (text#hash module))))))))))))
)
|