Define a primitive data type: Difference between revisions

Line 1,175:
NB. create a restricted object from an appropriate integer
create_restrict_ =: monad define
'Value error. expected integer on [1,10]' assert 0 -.@e. , (1 0 -: 1 11 le ])&> y
'Value error, non integral' assert (-: <.) y
value=: <. y
)
 
Line 1,191:
 
<pre>
A=: (>:i.2 3)conew 'restrict'
value__A
 
1 2 3
add__A 8
4 5 6
|value unavailable: signalError
B =:6 1 4 conew 'restrict'
| 'value unavailable' signalError 21
 
B=:6 conew'restrict'
 
C=: add__A B
value__C
2 3 4
8 9 10
 
D=: 1 conew'restrict'
value__C
add__D C
8
add__C B
|Value error. expected integer on [1,10]: assert
| 'Value error. expected integer on [1,10]' assert 0-.@e.,(1 0-:1 11 le ])&>y
</pre>
 
Anonymous user