[Python-ideas] Statements vs Expressions... why?

Cliff Wells cliff at develix.com
Thu Sep 11 20:41:11 CEST 2008


On Thu, 2008-09-11 at 10:41 -0700, Josiah Carlson wrote:
> On Thu, Sep 11, 2008 at 2:05 AM, Cliff Wells <cliff at develix.com> wrote:
> > Overall, I'm left with the nagging suspicion that because of my language
> > choice, I'm missing an important paradigm that would elevate my
> > programming to the next level.
> 
> Then what the hell are you waiting around here for?  If you are
> feeling constrained by Python (as a general-purpose language), try
> some others!  You may want to add Haskell, Caml, or even Lua to your
> list of languages to check out.  Maybe your Python will get better, or
> maybe you'll move on from Python.  Who knows?

Hey, I said I was lazy! ;-)  Anyway, my biggest hurdle to most of the
languages I've considered boils down to:

1) Lua - not expression based
2) Haskell - too ugly
3) Io - no libraries
4) Lisp - I find it borderline unreadable, plus I'd have to talk to
other Lispers
5) Boo - I'd have to learn .NET and deal with the fact that 95% of the
community is on Windows
6) Erlang - too ugly, too fast
7) Ruby - Too ugly, too slow, plus I'd probably have to make a cutesy
website with cartoon animals and robots to show my fandom

Two other options:

1) Logix - I could attempt to revive it.  This is actually fairly
appealing if a bit daunting to dive into.
2) Fork Python - I've considered making a proof-of-concept with a Python
fork that does what I want, but it would be disappointing to discard it
when it was inevitably rejected, and I have no intention of becoming a
language maintainer. 

I think I'm going to play with Io for a bit in spite its shortcomings as
it is explicitly a multiparadigm language and seems to look the
cleanest.

> > In any case, I expect I'll stew in my current situation for a while
> > longer at least.  The unfortunate fact remains that most of the
> > languages that speak to me (e.g. Boo and Io) don't have the broad range
> > of libraries and frameworks available that Python does and ultimately
> > this tends to outweigh my esoteric desires.
> 
> 
> One thing that you need to remember about Python is that it's a
> general language.  It's syntax and semantics are such that it works in
> a fairly large variety of situations.  Because it's a general
> language, it sometimes doesn't do the things that would be convenient
> in a domain specific language.  In particular, it doesn't have a lot
> of those things that would make functional programming more convenient
> (a shorter way of spelling 'lambda', everything is an expression,
> etc.), but no one language can be perfect for everyone.

But it's so damn close =)

> I wish you luck in your adventures with alternate languages.

Thanks for all your time and thoughts.

Regards,
Cliff




More information about the Python-ideas mailing list