On Thu, Mar 19, 2015 at 7:38 AM, kirby urner <kirby.ur...@gmail.com> wrote:

>
> I'm not one of those who think you need to join warring Camp A (OOP) or
> warring Camp B (FP) and then express loyalty to one by dissing the other.
> Rather, play up the strengths of both paradigms (I know Shiriam disputes
> that OOP is really a "paradigm" but whatever).[3]
>

I followed your link [3], and that's not my take on what he's saying at
all.  My reading of the paper is that his central claim is that modern
real-world languages don't fall into neat little divisions like
"object-oriented" or "functional".  Therefore, he claims, the typical
"programming paradigms" course in college is out of date, and in need of a
renovation, so students can gain an appreciation for how these paradigms
blend, rather than thinking of them as separate entities.  (He then puts
forth his own textbook Programming Languages and Interpretation as a
proposed solution).

He even cites Python as an example of a language that blurs the lines
between paradigms (it has OO, but it doesn't force you to use it, it has
some functional constructs, but it's still not typically thought of as a
functional programming language, etc.)  I'd expect you to mostly agree with
that premise.



>
> For me, the thing that has made me lose some enthusiasm for Python was not
>> even mentioned in the article.  For me, the biggest downside is that the
>> language, with its Global Interpreter Lock, lacks a clean solution to
>> teaching concurrency.  IMHO, concurrency has become a vital issue, and
>> requires a somewhat different way of thinking about problems.  To create
>> the next generation of exceptional programmers, I believe we need to
>> introduce models of concurrent programming much earlier in the curriculum.
>> Almost every recent programming language places a huge emphasis on
>> concurrency (such as Clojure, Scala, Go, F#, Julia, and many others) but
>> none of those are particularly welcoming to beginner programmers.  So I'd
>> love to see more educational languages that feature concurrency.
>>
>>
> That sounds valid and interesting.  How well does Pyret fit that bill I
> wonder?
>

Sadly, I don't expect Pyret will address concurrency at all.  I learned
that Pyret is now strictly a compile-to-javascript language (presumably
they feel the language will have better educational reach if you can code
it entirely in a web-based IDE).  That may end up limiting Pyret's ability
to include concurrency features.

Thanks for the other interesting comments and links.
_______________________________________________
Edu-sig mailing list
Edu-sig@python.org
https://mail.python.org/mailman/listinfo/edu-sig

Reply via email to