Skip to content

Commit

Permalink
Re-spelling.
Browse files Browse the repository at this point in the history
  • Loading branch information
S11001001 committed Dec 30, 2011
1 parent 531642c commit 68ff91d
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 8 deletions.
12 changes: 6 additions & 6 deletions README
Expand Up @@ -35,7 +35,7 @@ In my experience, the size of such applications seems to grow linearly
with time, as product managers dream up more features to add and more
complex ways for them to interact. Such as, "Hey, now that you've
added a reward points system, can we hook it into the product
recomendation system, so that the products with eligible bonuses
recommendation system, so that the products with eligible bonuses
appear higher?"

The list of product demands will go on. The complexity of the
Expand All @@ -56,23 +56,23 @@ Here are some specific complexity issues that I've found:
visible because it is created and consumed elsewhere.

3. What you need to compute tends to not change much, but how you
compute it often does. That is, new bits of data become relavent,
reqiring ever-growing argument lists (or worse, the heavy dependance
compute it often does. That is, new bits of data become relevant,
requiring ever-growing argument lists (or worse, the heavy dependence
of dynamic scope).

* The classic problem, "I need this here, but I have to thread it
through a dozen functions to get it," becomes legion. Dynamic
binding can help, but it creates its own maintainance nightmare.
binding can help, but it creates its own maintenance nightmare.

* Business logic gets mixed up with security, logging, analytics,
etc. Aspect oriented programming can help, but creates its own
maintainance headaches as a never-ending stream of new "aspect"
maintenance headaches as a never-ending stream of new "aspect"
types gizmos are added to the application to handle the needed
control.

* Control flow gets really tricky and non-obvious.

In theory lots of stong engineering vision, constant refactoring, and
In theory lots of strong engineering vision, constant refactoring, and
an unearthly level of insight at the start can avoid many of these
problems. However, in the real world, I've never been that lucky. For
me, real-world, fast-changing, competitive applications become a big
Expand Down
2 changes: 1 addition & 1 deletion src/kiln/kiln.clj
@@ -1,5 +1,5 @@
(ns
^{:doc "A new evuation strategy for complex computations."
^{:doc "A new evaluation strategy for complex computations."
:author "Jeffrey Straszheim"}
kiln.kiln
(use slingshot.slingshot)
Expand Down
2 changes: 1 addition & 1 deletion test/kiln/kiln_test.clj
Expand Up @@ -106,7 +106,7 @@
(defcoal qqq)
(defclay yyy)

(deftest test-id-persistant
(deftest test-id-persistent
(let [qqq-id (:id qqq)
yyy-id (:id yyy)]
(defcoal qqq)
Expand Down

0 comments on commit 68ff91d

Please sign in to comment.