Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #22357 > unrolled thread

Re: Number of languages known [was Re: Python is readable] - somewhat OT

Started byDevin Jeanpierre <jeanpierreda@gmail.com>
First post2012-03-29 14:53 -0400
Last post2012-03-29 12:25 -0700
Articles 2 — 2 participants

Back to article view | Back to comp.lang.python

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  Re: Number of languages known [was Re: Python is readable] - somewhat OT Devin Jeanpierre <jeanpierreda@gmail.com> - 2012-03-29 14:53 -0400
    Re: Number of languages known [was Re: Python is readable] - somewhat OT Steve Howell <showell30@yahoo.com> - 2012-03-29 12:25 -0700

#22357 — Re: Number of languages known [was Re: Python is readable] - somewhat OT

FromDevin Jeanpierre <jeanpierreda@gmail.com>
Date2012-03-29 14:53 -0400
SubjectRe: Number of languages known [was Re: Python is readable] - somewhat OT
Message-ID<mailman.1132.1333047279.3037.python-list@python.org>
Agreed with your entire first chunk 100%. Woohoo! High five. :)

On Thu, Mar 29, 2012 at 1:48 PM, Nathan Rice
<nathan.alexander.rice@gmail.com> wrote:
> transformations on lists of data are natural in Lisp, but graph
> transformations are not, making some things awkward.

Eh, earlier you make some argument towards lisp being a universal
metalanguage. If it can simulate prolog, it can certainly grow a graph
manipulation form. You'd just need to code it up as a macro or
function :p

> Additionally,
> because Lisp tries to nudge you towards programming in a functional
> style, it can be un-intuitive to learn.

I think you're thinking of Scheme here. Common Lisp isn't any more
functional than Python, AFAIK (other than having syntactic heritage
from the lambda calculus?)

Common-Lisp does very much embrace state as you later describe, Scheme
much less so (in that it makes mutating operations more obvious and
more ugly. Many schemes even outlaw some entirely. And quoted lists
default to immutable (aaaargh)).

> I'm all for diversity of language at the level of minor notation and
> vocabulary, but to draw an analogy to the real world, English and
> Mandarin are redundant, and the fact that they both creates a
> communication barrier for BILLIONS of people.  That doesn't mean that
> biologists shouldn't be able to define words to describe biological
> things, if you want to talk about biology you just need to learn the
> vocabulary.  That also doesn't mean or that mathematicians shouldn't
> be able to use notation to structure complex statements, if you want
> to do math you need to man up and learn the notation (of course, I
> have issues with some mathematical notation, but there is no reason
> you should cry about things like set builder).

Well, what sort of language differences make for English vs Mandarin?
Relational algebraic-style programming is useful, but definitely a
large language barrier to people that don't know any SQL. I think this
is reasonable. (It would not matter even if you gave SQL python-like
syntax, the mode of thinking is different, and for a good reason.)

-- Devin

[toc] | [next] | [standalone]


#22498

FromSteve Howell <showell30@yahoo.com>
Date2012-03-29 12:25 -0700
Message-ID<6e4bc54d-7080-4434-b441-93e0e4930ccf@t2g2000pbg.googlegroups.com>
In reply to#22357
On Mar 29, 11:53 am, Devin Jeanpierre <jeanpierr...@gmail.com> wrote:

> Well, what sort of language differences make for English vs Mandarin?
> Relational algebraic-style programming is useful, but definitely a
> large language barrier to people that don't know any SQL. I think this
> is reasonable. (It would not matter even if you gave SQL python-like
> syntax, the mode of thinking is different, and for a good reason.)
>

I don't see any fundamental disconnect between SQL thinking and Python
thinking.

List comprehensions are very close to SQL SELECTs semantically, and
not that far off syntactically.

  [row.x for row in foo if x == 3]

  select x from foo where x = 3

Many people can grok the basics of relational algebraic style
programming quite easily, which is why SQL is so popular.  It just
happens that many "programming" languages up until now have obscured
the idea.

SQL is so strongly associated with RDBMS implementations that people
tend to forget that it makes sense as an abstract language--people
tend to view SQL as a very concrete mechanism for pulling data out of
storage, instead of as a notation for describing the relating and
transforming of sets.

[toc] | [prev] | [standalone]


Back to top | Article view | comp.lang.python


csiph-web