0/ Bitcoin’s UTXO model is like functional programming. The elegance of the functional programming paradigm can bring:

1. Ultimate Transaparency
2. Timeless Computation
3. Infinite scalability

Here's how:
1/ The important trait of functional programming is it avoids side effects (through pure functions) which are used in imperative programming (procedures) to implement state and I/O. Pure functional programming completely prevents side-effects and provides referential transparency
2/ In contrast, object oriented programs create a huge dependency hell as a result of adding abstraction on top of abstraction to modularize complex systems. When the submodules try to access the global state simultaneously, complexity arises and nobody knows what’s going on
3/ This complexity may be ok for machines, but NOT for the humans who build programs for the machine. If you can’t easily reason about and predict what will happen, then you create something you don’t understand, causing disaster, especially if it's immutable and deals with money
4/ Functional programming has no side effect for running computations. Tasks are very close to the notion of functions in mathematics. In math, A(B(C(x))) always returns the same result regardless of how, when, and who executes it. Math functions are stateless therefore timeless
5/ Stateless and timeless means it can be parallelized. Pure functions are easily parallelizable since they encourage immutable data structures which reduce the side-effects that make code hard to run on multiple processors. This is how Bitcoin will reach its infinite scalability
6/ In fact, even outside of Bitcoin, every mission critical computing scheme is moving towards adopting the functional programming paradigm as their systems become more and more complex and the cost to run parallel computing goes down. Some examples below:
7/ Centralized distributed computing: Apache Kafka https://kafka.apache.org  and Apache Spark https://spark.apache.org  are great examples, as they parallelize tasks to be run on multiple distributed machines.
8/ Microservices: AWS Lambda. Lambda is literally is a functional programming infrastructure. It lets programmers build microservices without maintaining their own server https://aws.amazon.com/lambda/ 
9/ Artificial Intelligence: @TensorFlow uses the functional programming paradigm of lazy evaluation. A tensor flow graph exists separately to the computation of that graph.

* Bitcoin can and will be used to create true artificial intelligence.
10/ Coming back to Bitcoin's UTXO system, UTXO is a "pure function" since it doesn't create any side effects. It's just a simple linked list of transactions. It is timeless. But this simple structure can be utilized to create infinite possibilities https://twitter.com/_unwriter/status/1025023768262074369
11/ The functional programming paradigm of Bitcoin UTXO will be crucial in achieving infinitely scalable, ultimately transparent, and timeless global computing machine. [The End]
You can follow @_unwriter.
Tip: mention @twtextapp on a Twitter thread with the keyword “unroll” to get a link to it.

Latest Threads Unrolled: