on 657b415 help sign in
58 lines 866 B history raw
1### `++con`
3Binary OR
5Computes the bit-wise logical OR of two [atom]()s, `a` and `b`, producing an
6atom.
8Accepts
9-------
11`a` is an atom
13`b` is an atom
15Produces
16--------
18An atom.
20Source
21------
23 ++ con :: binary or
24 ~/ %con
25 |= {a/@ b/@}
26 =+ [c=0 d=0]
27 |- ^- @
28 ?: ?&(=(0 a) =(0 b)) d
29 %= $
30 a (rsh 0 1 a)
31 b (rsh 0 1 b)
32 c +(c)
33 d %+ add d
34 %^ lsh 0 c
35 ?& =(0 (end 0 1 a))
36 =(0 (end 0 1 b))
37 ==
38 ==
40Examples
41--------
43 ~zod/try=> (con 0b0 0b1)
44 1
45 ~zod/try=> (con 0 1)
46 1
47 ~zod/try=> (con 0 0)
48 0
49 ~zod/try=> `@ub`(con 0b1111.0000 0b1.0011)
50 0b1111.0011
51 ~zod/try=> (con 4 4)
52 4
53 ~zod/try=> (con 10.000 234)
54 10.234
58***