Hacker News new | ask | show | jobs
by ukj 1612 days ago
Practically nothing.

By virtue of all programming being resource-bounded computations can be interpreted in Linear logic [1]. Linear logic is paraconsistent [2] not consistent.

Untyped Lambda calculus is essentially an assembly language and Assembly languages treat their own code as data [3]. Contradictions arrise when a system can mutate its own state. That is the power and pitfall of reflection [4]

[1] https://en.wikipedia.org/wiki/Linear_logic

[2] http://nlab-pages.s3.us-east-2.amazonaws.com/nlab/show/parac...

[3] https://en.wikipedia.org/wiki/Metaprogramming

[4] https://en.wikipedia.org/wiki/Reflective_programming