Hi folks,
I suspect I'm the Gary that Tim thought he was referring to since I've
posted on several of his other LP-related threads (though not this one
until now). I'm reading along and enjoying the back and forth as usual, but
I'm sorry to say that I don't have much to add to this philosophical
swordfight.
As I've stated on other threads, I find LP quite useful to me, both in
helping me remember later what my old code does (and WHY I wrote it that
way in the first place) as well as helping me to write clearer and more
parsimonious code in the first place (since I don't want to document a
crazy web of unnecessary complexity if I can avoid it). All in all, my
personal LP journey has been an interesting and reasonably productive one.
And of course, using an expressive functional language like Clojure does
allow me to keep my code snippets shorter and more isolated from one
another. All good things for LP as well.
I know that Tim likes to poke the mailing list occasionally and remind
people that LP is the bee's knees and that they should really get on board
with it. I also know that without fail one or more folks will quickly
respond that LP doesn't provide enough value above docstrings, inline
comments, autogenerated API docs, and the occasional blog post to invest
the necessary time in developing new LP-mindful workflows. And, of course,
someone will inevitably chime in with the rally cry "clear code doesn't
need documentation".
I understand that really embracing LP does require relearning how to
program in several fundamental respects, AND it makes it quite difficult to
use many of the developer tools many folks in the Clojure community have
come to rely on. This makes the task appear somewhere between challenging
and onerous to many programmers (or so I would imagine from following Tim's
threads over the past year). However, (speaking only for myself here) I
think the maintenance benefits often outweigh the upfront investment for
any piece of software I intend to keep around for more than a few months.
So for me, it's a net good. For some folks it's not. I get that. Enough
said.
But really, at the end of the day, I'm just getting tired of listening to
people razzing on LP for the reasons listed above. There ARE good tools out
there for doing this kind of programming. People just have to invest time
and energy into learning them. I regularly cite Emacs' Org-mode as
providing most everything you might need to comfortably create LP programs
without even writing one line of LaTeX or XML (if you're allergic to those
languages). Obviously, as Tim points out, it's an almost trivial assignment
to roll your own tangle and weave scripts in whatever language you like
(and I've tried that route too). So guys, if you don't like the ideas
behind LP or just feel like it is too much of a hassle to use, then I
completely understand that you don't want to use it. But could we maybe
call a truce on this mailing list on the topic?
Perhaps instead of constantly being pulled into philosophical arguments,
those of us who actually do enjoy exploring LP could then use this forum to
discuss amongst ourselves what tools or references we are finding useful in
our journey. Clearly some folks (Gregg included) are churning out some
pretty neat looking tools to make LP easier to do in the Clojure world. I
for one would love to see more lively discussion around that and not feel
like we're just bear-baiting whenever we mention the forbidden paradigm of
Literate Programming.
My 2c,
~ (the actual) Gary
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to [email protected]
Note that posts from new members are moderated - please be patient with your
first post.
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
---
You received this message because you are subscribed to the Google Groups
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.