News for hackers. Stuff that matters.
Re:Advice on learning Python efficiently by brudgers on Thursday December 15, 2016 @10:51AM (#13185365)
Pyret came out of the PLTgroup, the group of educators responsible for the Racket ecosystem and before that MzScheme. They have been studying and innovating on programming pedagogy for more than two decades.

What sets the PLTgroup apart, in my mind, is that it tends to row in the same direction at the low level. This has allowed it to create a robust platform upon which tools (particularly in the form of languages) can be built. Pyret is an example of this. Adding a language with the offside rule to the ecosystem doesn't cause anyone offense or raging flame wars or fuck-you forking. Imagine a PEP to add Lisp syntax to Python.

Instead, Pyret just gets rolled up into the pedagogy that is described in How To Design Programs because Pyret fits with the philosophy of building teaching languages for the purposes of teaching. Other PLTgroup languages range from Beginning Student Language (a simplified lisp) up through Racklog (a lisp implementation of Prolog's logic programming model) and pure insanity like Scribble which introduces a documentation phase to the compilation. Racket even ships with an Algol60 implementation.

At the core, the important philosophical idea is that learning programming is not learning a language. In the age of Googling into StackOverflow, that's even more the case as far as I can see.

Re:Advice on learning Python efficiently by Sean1708 on Thursday December 15, 2016 @12:44PM (#13186455)
What do you mean by the offside rule in this case? I presume you don't mean that Pyret can't shoot if it got the ball when it was behind all the other language's defenders.
Re:Advice on learning Python efficiently by brudgers on Thursday December 15, 2016 @12:54PM (#13186530)
Only if the Pyret was already in an offside position when the ball was last played by a team mate and it was not a goal kick, throw-in, or corner kick and Pyret was involved in active play (receiving the ball, interfering with a defender, or obstructing the goalkeeper's view)...but I digress.

Python's use of semantic white space in the form of indentation is sometimes referred to as the 'offside rule'.

Re:Advice on learning Python efficiently by sigzero on Thursday December 15, 2016 @04:20PM (#13188510)
Interesting, I have never heard that term used in relation to Python white space. TIL
Re:Advice on learning Python efficiently by brudgers on Thursday December 15, 2016 @05:40PM (#13189309)
Apparently, the term goes back 50 years. https://en.wikipedia.org/wiki/Off-side_rule