Replies: 1 comment
-
I find that this topic might be too broad for a 3-hour-or-so discussion, maybe it should be split up into several discussions, if people find it interesting enough. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
I will start the thesis with a small example. Suppose you are designing a music streaming service. People can search for, listen to and add music to their playlist, as well as add playlists, rearrange music in their playlist and so on. When you approach such a problem, first you have to figure out the common tasks which are supposed to be easily achievable with your program make sure that each one is performable with relative ease. After that an implementation could take on two forms:
The core idea of the thesis is abstraction as a way to simplify problem into a set of few behaviours. The set of few behaviours emerges to give birth to new behaviours. Depending on the number of consequent operations one can achieve
n^p
different behaviours fromn
simple behaviours andp
consequent operations.This gives rise to my terminology. There are systems that were designed the first way -- those are non-emergent, because all of the codepaths and behaviours were already explored. The systems that were designed the second way are emergent -- the behaviours emerge from the set of primitive behaviours.
The possible topics for the discussion:
Beta Was this translation helpful? Give feedback.
All reactions