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

Lie Ryan lie.1296 at gmail.com
Sun Apr 8 16:47:14 EDT 2012


On 03/30/2012 06:25 AM, Steve Howell wrote:
> On Mar 29, 11:53 am, Devin Jeanpierre<jeanpierr... at 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

which is where most people get it wrong; the SQL SELECTs statement did 
not specify how the machine is going to get its answer, while the 
Python's list comprehension explicitly specify that the machine is going 
to loop over foo. In most implementation of SQL with the proper indexes 
set up, the SELECT statement above will most likely just use its index 
to avoid looping over the whole foo, and the most smartest ones might 
notice that the result query only ever contains 3 and so just use the 
count of the index (I don't know if any existing SQL engine is *that* 
smart though).




More information about the Python-list mailing list