Permalink
Browse files

refactored project for approachability

  • Loading branch information...
1 parent 0026c21 commit b216ade66e141238ae60b7fa532e1218dd15a195 @joeldart committed Mar 5, 2013
Showing with 39 additions and 25 deletions.
  1. +6 −0 art_and_fear/README.md
  2. +3 −0 art_and_fear/art_and_fear.js
  3. +0 −3 ppd.js
  4. +8 −0 variation1/README.md
  5. +4 −4 { → variation1}/variation1.html
  6. +18 −18 { → variation1}/variation1.js
View
@@ -0,0 +1,6 @@
+#### Artist
+Joel Dart
+Indianapolis, IN USA
+
+#### Artist Statement
+Originally, I wrote this poem about a very personal struggle. My wife and I were struggling to come to terms with the inevitability of a certain surgery for our infant daughter. From all the miriad friends we have in the medical community, this was no big deal. We were overreacting to what was a very safe and common surgery. But the problem with probability in the human mind is that it's never just a number and math but it's instead a likelihood of something that is a very understandable story. Looking at our program, we have what is very clearly infinite recursion. This is a really bad state and can lead only to either an infinite loop or a stackoverflow exception. Either case is a broken program. But if you look past the potential, you see this program has nothing to fear. In fact, a deferred parsing optimization in a js engine won't even take the time necessary to look at the contents of whenItHappens. What a wonderful optimization to see the code for what it is.
@@ -0,0 +1,3 @@
+function whenItHappens() {
+ whenItHappens();
+}
View
3 ppd.js
@@ -1,3 +0,0 @@
-function gTube() {
- gTube();
-}
View
@@ -0,0 +1,8 @@
+#### Artist
+Joel Dart
+Indianapolis, IN USA
+
+#### Artist Statement
+This was my first poem in JavaScript. This one was created to explore human/personal potential, imperfection, and redemption through the concept of the prototype and own properties. Following the execution of the poem, you can see that we quickly end up in an infinite loop on line 6, forever approaching "healing" on line 7, but never able to achieve it. After all, we have entered into the loop and there's nothing within the loop affecting the state variables.
+
+The tragedy of this scenario, though, is going back to root causes. Tracing backwards, the condition for the loop is an existential check of take which was initially copied over, just before moving into the function, from my.hate. This is the heart of the poem. As a normal Object, my contains a very standard prototype. But its defining feature, in this scenario, is its lack of a hate property. Restoration back to the prototype, the Platonic form, the ideal potential is something as simple as a delete operation, but instead we move to line 6, check, and loop.
@@ -1,5 +1,5 @@
-<html>
-<body>
-<script src="variation1.js" type="text/javascript"></script>
-</body>
+<html>
+<body>
+<script src="variation1.js" type="text/javascript"></script>
+</body>
</html>
@@ -1,19 +1,19 @@
-(function (a, lity) {
- var iation = 1,
- i = {}, know, my = { fate: undefined, hate: "destroys" },
- vileBetrayals = {}, to, regret, heart = (i["prayThe"] = vileBetrayals["are"] = function (few) { }),
- butDare = function (i) {
- while (i.take) { continue; }
- healing;},
-
- Lord = function () { };
-
- for (this,
-!!i; know
- && heart;
- doesBreak) {
- what = vileBetrayals.are(my.fate);
- }
- i.prayThe(Lord, my.soul, "toTake");
- butDare({ yeNot: to, take: my.hate });
+(function (a, lity) {
+ var iation = 1,
+ i = {}, know, my = { fate: undefined, hate: "destroys" },
+ vileBetrayals = {}, to, regret, heart = (i["prayThe"] = vileBetrayals["are"] = function (few) { }),
+ butDare = function (i) {
+ while (i.take) { continue; }
+ healing;},
+
+ Lord = function () { };
+
+ for (this,
+!!i; know
+ && heart;
+ doesBreak) {
+ what = vileBetrayals.are(my.fate);
+ }
+ i.prayThe(Lord, my.soul, "toTake");
+ butDare({ yeNot: to, take: my.hate });
} ());

0 comments on commit b216ade

Please sign in to comment.