Een string interpoleren

Clojure:
Een string interpoleren

Hoe te:

;; Basis met `str` en `format`
(def name "World")
(str "Hallo, " name "!")  ; => "Hallo, World!"

;; Gebruikmakend van `format`, vergelijkbaar met printf-stijl formatting
(format "Vaarwel, %s!" name)  ; => "Vaarwel, World!"

;; Clojure heeft geen ingebouwde stringinterpolatie zoals andere talen,
;; maar we kunnen creatief zijn met `str` en `format`.

Diepe Duik:

Clojure is een beetje een asceet: geen ingebouwde stringinterpolatie. Echter, str en format zijn de go-to voor dynamische strings. Ontstaansgeschiedenis? Het simplisme ethos van Clojure. Het vertrouwt erop dat we zelf wel uit de voeten kunnen met stringconstructie.

Voor alternatieven, betreed de wereld van templating: clostache (een Clojure-implementatie van Mustache) of hiccup voor HTML-contexten. Ze komen van pas wanneer str en format te primitief aanvoelen.

Onder de motorkap delegeren format aan Java’s String.format, een feit dat Clojure’s superkracht in Java-interoperabiliteit illustreert. Dus, hoewel je de zoetigheid niet krijgt, heb je de spierkracht van Java wanneer je het nodig hebt.

Zie Ook: