Skip to content

Some obscurities #47

@p-b-west

Description

@p-b-west

This snippet on exceptions is obscure. How, exactly, does :default work as a catch-all here, and does it have wider application? I know it is used in multi-methods, but have not found any other references to it.

;; JavaScript unfortunately allows you to throw anything. You can handle
;; this in ClojureScript with the following.

(try
  (throw (js/Error. "Oops"))
  (catch :default e
    e))

I have had to track down the following syntax once before, and I think it deserves more explanation.

;; We can use property access with `set!` to change the fill color of a
;; a canvas rendering context.

(set! (.-fillColor ctxt) "#ffffff")

I'm talking about the .-fillColor.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions