Define a primitive data type: Difference between revisions

Adds Clojure solution
(Add Nimrod)
(Adds Clojure solution)
Line 286:
unsigned char value; // we don't need more space
};</lang>
=={{header|Clojure}}==
 
Use proxy on java.lang.Number so it can be used in Clojure's math operations.
 
<lang clojure>(defn tinyint [^long value]
(if (<= 1 value 10)
(proxy [Number] []
(doubleValue [] value)
(longValue [] value))
(throw (ArithmeticException. "integer overflow"))))</lang>
 
=={{header|Common Lisp}}==
The built-in integer type specifier provides range parameters. <code>deftype</code> may be used to define an alias for it.
Line 317 ⟶ 328:
 
Note, however, that the standard does not specify what happens in the event that a declaration is false (though [[SBCL]], for example, does perform type checks on any declaration except when <code>safety</code> is 0); use <code>check-type</code> for portable bounds checks.
 
=={{header|D}}==
 
Anonymous user