Master programming syntax, solve interactive challenges & run live code in Syntaxis Explore Arena →
menu_book Course Curriculum (Clojure Complete Course) expand_more
Clojure Complete Course / Polymorphism, Errors & Testing

extend-type

Learn extend-type in Clojure with a construct-specific explanation, a unique example, a practical boundary, and a mastery check.

12 min read • Advanced

extend-type is an atomic Clojure topic inside Polymorphism, Errors & Testing. The example below uses the actual construct named by the lesson rather than a generic placeholder.

Focus on what extend-type changes: the input, binding, control path, object state, collection, runtime effect, or language contract. Then alter one value and verify that the behavior changes for a reason specific to this feature.

Topic-specific example

clojure-08-02-extend-type.clj
clojure Try It Live
(defprotocol Labelled (label [x]))
(extend-type String Labelled (label [s] (str "#" s)))
(label "A")
Edge case / engineering note

Pay attention to the contract exposed by the type, which members belong to instances versus the type itself, and what dispatch occurs at runtime.

Content source & attribution
Original Syntaxis Content · Original Syntaxis Content