- when window is narrower than a certain width, certain features appear inaccessible (e.g. edit button does not appear visible)
0:44 What Happened Across Ten Years
Ten years ago, Clojure was released, and there's no possible way I could have imagined this. >
- Design, Composition, and Performance - Rich Hickey - not down on "iterative" (though in 2023's "Design in Practice" talk, seemed different)
- What if data is a really bad idea? - Eric Normand
- History section of Information History Wikipedia page
- Why you shouldn't hide your data - Eric Normand
- https://docs.racket-lang.org/rackjure/index.html#(part._dict-init) - data literals for dictionaries in rackjure
- Simple Made Easy - Rich Hickey - on pattern matching dislike
https://jvns.ca/blog/2025/02/13/how-to-add-a-directory-to-your-path/ | |
https://blog.flowblok.id.au/2013-02/shell-startup-scripts.html |
#lang typed/racket
(struct pt ([x : Real] [y : Real]))
;; the form on the next line is a type annotation
(: distance (-> pt pt Real))
(define (distance p1 p2)
(sqrt (+ (sqr (- (pt-x p2) (pt-x p1)))
(sqr (- (pt-y p2) (pt-y p1))))))
-
Why getters and setters are terrible - Eric Normand - 2019-07
-
Why you shouldn't hide your data - Eric Normand - 2019-04-15 / 2019-09-20
-
The Expression Problem and its solutions - Eli Bendersky - 2016
> Imagine that we have a set of data types and a set of operations that act on these types. Sometimes we need to add more operations and make sure they work properly on all types; sometimes we need to add more types and make sure all operations work properly on them. Sometimes, however, we need to add both - and herein lies the problem. Most of the mainstream programming languages don't provide good tools to add both new types and new operations to an existing system without having to change existing code. This is called the "expression problem". Studying the problem and its possible sol