[tahoe-dev] v1.5 here we come!

David Abrahams dave at boostpro.com
Fri Jun 19 03:02:37 UTC 2009


on Wed Jun 17 2009, Andrej Falout <andrej-QWtQUNGlrBodnm+yROfE0A-AT-public.gmane.org> wrote:

> (Warning: crude end-user logic ahead...)

Sorry, I had no intention to start a flamewar here; I was just curious
about your rationale.

>> why not Python?
>
>
> why not Bash? :-)
>
> Anyhow, I am a big fan of the right tool for the job & KISS approach. Python
> would be a complete overkill.

In what sense?

>>  You're probably way better than I am at shell scripting,
>> but I find that once a shell script gets that big, it's really easy to
>> end up with something that fails to report errors or clean up state
>> properly.
>
>
> That's why I dont like 3GLs; they do things like "cleaning up the
> state",

In general, programs do that, if so instructed.  Bash has some inbuilt
state-cleanup, as does Python, but it's not the built-in stuff I worry
about.

> and my head just wants to "handle the error". Even my grandmodher will
> understand what I'm doing when I handle the error.... what the hell does
> "cleaning up the state" mean? 

It means "restoring the invariants of the system."  For example, it
might mean removing lock files, releasing resources, rolling back
partially-completed operations, etc.

It's interesting that you make this objection, since as far as I can
tell, "handle the error" essentially means "respond somehow" --- which
could amount just about anything depending on the circumstances, whereas
"clean up state" actually has some specific meaning.

> I find this kind of jargon highly anoying, but more importantly, very
> unproductive and a great obsticle to wider adoption, understanding and
> therefore sharing. Of not only Python... (Hint: try reading this list
> with jargon detector on)

I have no clue why you view "handle the error" to be less jargon-y than
"clean up state."  

>>   The only reason not to use Python in those cases is a desire to
>> avoid dependencies... but tahoe already depends on Python.
>
> For people that would benefit the most from my script, I suspect it is far
> greater likelihood of knowing (or being able to adapt a line or two for
> there need) Bash, then Python. 

I guess I'm not one of those people who would benefit most, then.

> I'm sure Python is great, but it is just not needed in this case.

Nor is bash, right?  One could do the same thing with any number of
programming languages, from assembly language to Haskell.  If the fact
is that you're just more comfortable programming in bash than in Python,
please just say so.  That's a good enough reason for me.  I happen to be
the opposite, and I tend to assume everyone who can program knows python
(which is probably true at some level even if they've never seen a line
of it before).  So if that's not the case, my bad.

> The fact that nobody from the Python experts pool congregating here
> found the need to write similar front-end, also shows that they
> probably dont even need one - this is going to be of greatest use to
> beginners and end-users, like me.

I'm both a Tahoe beginner and an end-user, for what it's worth to you.

-- 
Dave Abrahams
BoostPro Computing
http://www.boostpro.com




More information about the tahoe-dev mailing list