📖The value of values

Hickey, Rich
  • We use Place-Oriented Programming (PLOP): we know location of data in memory or database and use that to update it.

    • This paradigm comes from the times we had really limited RAM and we had no other way to program. This was the only way to do programming.

    • Since that times, the capacity grew million times bigger.

    • When a thing grows a million times bigger, almost none of its characteristics remain. But we are still clinging to the Place-Oriented Programming.

  • If we look at memory and records before computers, we see that they do not work by rewriting information.

    • Memory does not work by replacing the old information.

    • Records are usually append-only. If you make a mistake, you add a corrective entry (e.g., you don’t alter old records in double-entry accounting)

  • Values are immutable

  • Value Propositions

    • values can be shared (because they are immutable, this is safe to do)

    • reproducible results

    • easy to fabricate (in the sense of meta-programming. you can produce the strings, lists and maps in every language. i.e., generate)

    • language-independent

      • generic

    • values aggregate values