Can All Computer Code be Reduced to Pure Logic?

As we move from the "low" level to the "high", say from the domain of machine code all the way up to, for instance, a rich, expressive Ruby DSL, the question arises, as it does for all language: have we acquired a surplus of content that cannot be simply reduced to core rules? At this point things get less Wittgensteinian and a little more late-Heideggerian, i.e., less analytic and more eidetic/phenomenological.

To remove the fuzziness from this notion, think of how, for instance, a first-person shooter creates the illusion of a smooth, analog reality from a rigid, frame-by-frame progression (as cinema does as well -- and this question has been explored at length in that world). As humans interacting with the result of the code, we infer content between the frames -- we make up the difference and experience the virtual world presented to our senses as continuous analogical rather than chopped-up and merely logical. Code never exists in a vacuum -- it is experienced by humans and humans bring meaning to it, as much as it brings meaning to them.

There's a similar phenomena in OOP, where the meaning of the code is not merely the sum of its final binary product ("true" or "false") in the world of machine instructions, but in the metaphor it presents as a model of an object or event in the world. This code is constantly changing (literally) as it intends towards richer analogies with the world, and we as coders (and users) make up the difference by bringing real-world experience to it when we "read" the code. In other words, code is never "true" or "false" as a function of its binary reduction, but is a constantly-changing artifact of some human being's attempt to analogize the world, read by other human beings attempting to understand and refine that analogy.

Notes:

Everything in a computer program is built on low-level binary operations, but at the higher levels we deal with fuzzy objects. Does the fact that those fuzzy objects are built on concrete logic mean they can be understood concretely?

Folksonomies: computer science philosophy

Taxonomies:
/technology and computing/hardware/computer (0.481905)
/science/mathematics/geometry (0.443709)
/technology and computing/programming languages/javascript (0.259078)

Keywords:
fuzzy objects (0.982810 (neutral:0.000000)), low-level binary operations (0.966300 (negative:-0.244516)), expressive Ruby DSL (0.885945 (positive:0.385454)), code (0.848947 (negative:-0.436438)), final binary product (0.839880 (neutral:0.000000)), world (0.650044 (positive:0.078382)), higher levels (0.644481 (neutral:0.000000)), Pure Logic (0.633121 (negative:-0.552585)), first-person shooter (0.625607 (positive:0.417406)), richer analogies (0.624476 (positive:0.243303)), concrete logic (0.613537 (neutral:0.000000)), frame-by-frame progression (0.612350 (neutral:0.000000)), machine code (0.604270 (neutral:0.000000)), analog reality (0.601384 (negative:-0.247619)), binary reduction (0.601237 (neutral:0.000000)), constantly-changing artifact (0.598168 (negative:-0.236665)), virtual world (0.589858 (positive:0.435641)), real-world experience (0.589405 (positive:0.362047)), similar phenomena (0.588839 (neutral:0.000000)), human beings (0.579351 (neutral:0.000000)), machine instructions (0.575067 (neutral:0.000000)), humans (0.489956 (positive:0.276555)), instance (0.461019 (neutral:0.000000)), difference (0.429724 (positive:0.398844)), question (0.425312 (neutral:0.000000)), content (0.417122 (negative:-0.403262)), fuzziness (0.384784 (negative:-0.574860)), Reduced (0.378416 (negative:-0.552585)), meaning (0.366004 (neutral:0.000000)), notion (0.365705 (negative:-0.574860))

Entities:
virtual world:FieldTerminology (0.778880 (positive:0.039191)), Wittgensteinian:Person (0.382207 (negative:-0.436976))

Concepts:
Analogy (0.976280): dbpedia | freebase
Computer program (0.952880): dbpedia | freebase
Meaning of life (0.921358): dbpedia | freebase | yago
Programming language (0.892240): dbpedia | freebase
Human (0.885238): dbpedia | freebase | opencyc
Logic (0.873673): dbpedia | freebase | opencyc
Computer (0.845406): dbpedia | freebase | opencyc
Africa (0.644281): dbpedia | freebase | yago

 A Philosophy of Programming Languages
Electronic/World Wide Web>Message Posted to Online Forum/Discussion Group:  davesims, (05/09/2013), A Philosophy of Programming Languages, Hacker News, Retrieved on 2013-05-09
  • Source Material [news.ycombinator.com]
  • Folksonomies: computer science philosophy


    Schemas

    30 NOV -0001

     Modeling the World

    Much of science and programming involve creating models of systems within our world.
    Folksonomies: modeling simulation
    Folksonomies: modeling simulation
     8