Carp/core/Interfaces.carp

33 lines
712 B
Plaintext
Raw Normal View History

2017-11-21 18:56:39 +03:00
(definterface = (λ [a a] Bool))
2017-11-24 19:17:49 +03:00
(definterface /= (λ [a a] Bool))
(definterface zero (λ [] a))
(definterface add-ref (λ [&a &a] a))
(definterface sub-ref (λ [&a &a] a))
(definterface mul-ref (λ [&a &a] a))
(definterface div-ref (λ [&a &a] a))
2017-11-27 23:55:52 +03:00
;; These interfaces would be desirable also? Produces errors in Vector module for now...
(definterface + (λ [a a] a))
(definterface - (λ [a a] a))
(definterface * (λ [a a] a))
(definterface / (λ [a a] a))
2017-11-27 23:55:52 +03:00
;; <
;; <=
;; >
;; >=
;; inc
;; dec
;; random
;; random-between
;; max
;; min
;; from-string
2017-12-13 01:13:05 +03:00
(definterface π a)
2017-11-24 19:17:49 +03:00
;; These interfaces are defined internally, don't override them:
;;(definterface copy (λ [&a] a))
;;(definterface str (λ [a] String))