1997 - The first keynote Steve Jobs gave, upon returning to the Board of Directors, at Apple.
First-Class Citizens
The term “First-Class Citizens”, within the context of Computer Science, was coined by Christopher Strachey. This term represents the following principals:
The rights and privileges of first-class citizens
- To be named by variables.
- To be passed as arguments to procedures.
- To be returned as values of procedures.
- To be incorporated into data structures.
A common case, when a programming language refers to functions as “first-class citizens”, this equates the following principles to be true for them.
Noted, for historical reasons.
MIT 6.001 Structure and Interpretation of Computer Programs Course, 1986.
An metaphor. (credit)
"Being exceptional means knowing when to not do what you’re told to do."
Hello, Clojure.
I’ve recently finished reading my first book on Clojure, and I am pretty fascinated by this pure functional JVM programming language. I’ve been doing some FP in JavaScript over the past year, but Clojure is still quite eye opening.
So, what do I do with this new language? Fibonacci numbers of course.
My first (naive) approach to Fibonacci on Clojure was recursion (surprise, still sucks), then I tried my hand at a poorly implemented memoization version, and after speaking with some people in IRC, I landed on this approach:
Whats fascinating about this approach is that it utilizes one of the most interesting apsects of Clojure: lazy evaluation. This approach feels as close to linear as possible, even in large scale numbers (2000, 10000, 100000), and utilizes about 67 MB of constant memory, while distributing the computations across all available cores.
Yeah. Excited to be continuing my journey of FP, onward!
Also, excited to be attending the Clojure/West conference in March, I’ll see you there!
"If you’re going to devote the best years of your life to your work, have enough love for yourself and the world around you to work on something that matters to you deeply. Something that’s beating out of your chest and compels you to throw yourself at it completely. No one knows whether you and your teammates will realize your audacious visions, but in order to do great things, we must attempt great things."
Amon Tobin has a crazy stage presence.
Code Rush
60 min interview, recorded in 1998/99. Follows the engineers of Mozilla/Netscape fighting against Microsoft in the latest 90s.