Re: New Python implementation

2021-02-16 Thread Tarjei Bærland via Python-list

Christian Gollwitzer writes:

> I agree to all the rest of your post, but this:
>
> Am 16.02.21 um 09:57 schrieb Tarjei Bærland:
>> I am not sure I agree that a language like Scheme or Logo or Brainfuck, with
>> their small number of building blocks, would be harder to learn.
>
>
> is strange. I'm not sure, have you actually looked at Brainfuck? Maybe 
> there is also confusion what means "learning" a programming language. 
> For me, learning a language does not mean to remember the rules and 
> keywords, but to be able to write useful programs. Indeed, Brainfuck 
> with its 8 commands is easy to remember, but it comes at a very high 
> price: you can't do anything useful with it with reasonable effort. It 
> is unusable even for pure computer science stuff. It is easy to see that 
> BF is Turing complete, so please write a BF program to compute the 
> ackermann function. Should be easy, just three rules ;) I'd definitely 
> choose Python to do it here.
>
> In that sense, Scheme also appears to be the Brainfuck of functional 
> programming to me. It is not much more than the pure untyped lambda 
> calculus, and by definition this allows you to compute anything, just 
> like Brainfuck is a Turing machine. Actually it is impressive that you 
> can write actual useful code with such a minimalist language (infix 
> math? Pure bloat!). OTOH it feels like "assembly" compared to more 
> evolved functional languages like, e.g. Haskell.
>
>Christian

To me, it depends on what you want out of including programming in
mathematics education.

Sure, Brainfuck is two steps too far, but Scheme or Logo I'd wager be
excellent languages to get the students into computational
thinking. Haskell might be a good choice as well, I do not have enough
experience with it to say.

If the aim is to quickly get the students to "be creative" with
programming by themselves, my feeling is that Python is too unwieldy for
a beginner.

In a programming course I am teaching, one of the goals is for the
students to distinguish "high level" and "low level" languages. I've
used Brainfuck as an example of a programming language at a low level of
abstraction. That session is often the most engaging throughout the
year. The students are sitting writing their own code after a few
minutes. They get the feeling of designing their own computational
procedure much quicker than in Python. (Yes, of course, the introductory
excercises in Python are a bit more advanced than "add two numbers".)

I am honestly not sure what quite what my feelings are regarding this,
perhaps Python is the best of all possible options.

- Tarjei

Note, I am emphatically saying this in the context of a maths class.
-- 
https://mail.python.org/mailman/listinfo/python-list


Re: New Python implementation

2021-02-16 Thread Tarjei Bærland via Python-list

David Lowry-Duda writes:

>> In Norway, where I try to teach mathematics to highschoolers, 
>> programming has recently entered the teaching of stem subjects.
>> 
>> Even if Python is my choice language for personal projects, I am not 
>> certain it is the right language to use in a classroom context.
>> ...
>> I am not sure I agree that a language like Scheme or Logo or 
>> Brainfuck, with their small number of building blocks, would be harder 
>> to learn.
>
> Does this mean that you also try to teach programming to highschoolers, 
> or is there a different (maybe dedicated) teacher to that? What language 
> do they use? And does it influence math education at all? (Coming from 
> someone who sometimes tries to teach undergraduates about math).
>
> - David Lowry-Duda

Yes, that also means that mathematics teachers are teaching programming
as well. For my part, it's a welcome change, and I've already been
teaching another programming course for a couple of years, but a lot of
teachers are having to start programming alongside their students.

I don't have any numbers for this, but I'd be surprised if less than 95%
of all teachers used Python for this. (I know of no exception.)

I think it's too soon to tell whether it affects the education. However,
I would have liked to better know the motivation for including
it. Python seems like one of several good choices if you want to
manipulate mathematical objects, perhaps mixing in som symbolic algebra
via Sympy, and other "high level concepts". However, if the aim is for
the students to quickly experience what it's like to design their own
simple algorithm without excessive guidance, Python might not then be the
optimal choice.

- Tarjei Bærland

PS: I can't remember in what context I visited it, but thanks for an
inspiring site.
-- 
https://mail.python.org/mailman/listinfo/python-list


Re: New Python implementation

2021-02-16 Thread Tarjei Bærland via Python-list


Christian Gollwitzer writes:

> Am 16.02.21 um 06:36 schrieb dn:
>> Pascal's value as a teaching language was that it embodied many aspects
>> of structured programming, and like Python, consisted of a limited range
>> of items which could be learned very quickly (in contrast to PL/I's many
>> 'bells and whistles'). 
>
> ROFL. Maybe that was true for Python when it was first invented. Today 
> it is not "a few simple things". Even just the core language, anything 
> that's built into the interpreter if you leave out any standard 
> function, is enormous. To name a few: List comprehension, format 
> strings, iterator protocol, asynchronous programming, everything called 
> __dunderland. A minimal language with only very few basic rules, that 
> would be Scheme e.g. Of course, it doesn't mean that Scheme is easier to 
> program, but it is easier to write a compiler for it than for Python.
>
> That is a misundestanding often presented - a language that is simple in 
> the sense of having a few simple rules, is usually hard to use. (e.g. 
> Brainfuck). A language which is easy to use, often comes with a large 
> variety of building blocks, to give you the right tool to choose for the 
> job at hands (e.g. Python), and therefore is "complex".
>
>   Christian

In Norway, where I try to teach mathematics to highschoolers, programming has
recently entered the teaching of stem subjects.

Even if Python is my choice language for personal projects, I am not certain it
is the right language to use in a classroom context. My feeling is that Python
comes with way too much packed in, making it very hard for the students to get
to a level where they can sit down and be creative with their own
programming. You either guide them very, very deliberately, exposing piece by
piece of the language ... or you let them loose, having to explain the
difference in scoping between list comprehensions and for loops after three
weeks.

I am exaggerating ... a little.

I am not sure I agree that a language like Scheme or Logo or Brainfuck, with
their small number of building blocks, would be harder to learn.

To me, Python is the lego boxes from the early 2000s, where there were so many
specialized pieces that you felt that the original design might as well be the
only design.

Regards,
Tarjei
-- 
https://mail.python.org/mailman/listinfo/python-list


Re: ERROR GENERATED AFTER INSTALLING PYTHON 3.5.2 64-BIT

2020-04-15 Thread Tarjei Bærland via Python-list
ogunleye ayobami  writes:

> Dear Python Team,
>
> After downloading and installing python on my system, error generated on
> command prompt is
> C:\Users\Olakunle Johnson>python
>
> *'python' is not recognized as an internal or external command,operable
> program or batch file.*

Given that the installation went as it should, this probably means that
python is not in your path. This,
https://geek-university.com/python/add-python-to-the-windows-path/,
seems to explain fully how to add your python install directory to the
path.

Regards,
Tarjei



>
> Kindly assist.
> Regards
>
> 
> Virus-free.
> www.avg.com
> 
> <#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>
-- 
https://mail.python.org/mailman/listinfo/python-list