Author Topic: Yet another icon stepping away - Guido van Rossum, Python  (Read 12332 times)

0 Members and 1 Guest are viewing this topic.

Online RoGeorgeTopic starter

  • Super Contributor
  • ***
  • Posts: 6625
  • Country: ro
Yet another icon stepping away - Guido van Rossum, Python
« on: July 28, 2020, 05:02:49 pm »
- Remember Richard Stallman, the father of GNU stepping away?
- Remeber Linus Torvalds, the father of Linux taking crap like banning the use of 'master/slave'?
- Remeber Guido van Rossum, the father of Python stepping away?

Wait, what?!  Yes, him too.

The most controversial Python feature | Walrus operator


Quote
The walrus operator := and assignment expressions, PEP 572, was opposed by majority of Python core developers, and led Guido van Rossum to step down from BDFL role.

LINKS:
PEP 572: https://www.python.org/dev/peps/pep-0...
Zen of Python: https://www.python.org/dev/peps/pep-0...
Vote against PEP 572: https://www.mail-archive.com/python-c...

OUTLINE:
0:00 - Walrus operator
1:26 - Use cases
3:33 - Criticisms
5:59 - Guido van Rossum
« Last Edit: July 28, 2020, 05:08:18 pm by RoGeorge »
 

Offline CatalinaWOW

  • Super Contributor
  • ***
  • Posts: 5403
  • Country: us
Re: Yet another icon stepping away - Guido van Rossum, Python
« Reply #1 on: July 28, 2020, 05:41:22 pm »
Strange.  While I started on Fortran, I grew up on Algol and Pascal, two languages that use the "Walrus" operator for assignment.  I like it as used in those languages.  But in spite of this background and affinity I found all of the examples of Walrus use in Python 6.8 obscure and gave opportunity to generate hard to maintain code.  I can see why there were intense arguments and hard feelings over this decision.
« Last Edit: July 28, 2020, 11:00:51 pm by CatalinaWOW »
 

Online ebastler

  • Super Contributor
  • ***
  • Posts: 6845
  • Country: de
Re: Yet another icon stepping away - Guido van Rossum, Python
« Reply #2 on: July 28, 2020, 06:55:18 pm »
I can only hope that van Rossum's decision to step down was driven by larger underlying reasons, and that the argument over this operator was just the final straw. Throwing in the towel over a syntax dispute seems a bit childish, to be frank.
 

Offline free_electron

  • Super Contributor
  • ***
  • Posts: 8545
  • Country: us
    • SiliconValleyGarage
Re: Yet another icon stepping away - Guido van Rossum, Python
« Reply #3 on: July 28, 2020, 07:04:59 pm »
Create a new language.
One that isn't boneheaded and does not bank on whitespace for flow control.
One that does has a parser that understands when = is an assignment and when it is a comparison.
One that doesn't need every line to be ended in a semicolon, but uses a continuation character when needed.
One that doesn't smell like C, C++ or c# or Java or quiche-eaters pascal and its derivatives.
One that doesn't look like a bunch of cryptical mathematical equations
One that is easy to understand, uses simple english keywords.

something along these lines

a = 12
b= 14
c= b-a
for x = a to b
   c = c^x
  print a,b,x,c
next x


- simple english with a small vocabulary of keywords
- smart compiler that understands syntax and knows when to assign and when to compare. no need for walrus operators or == and other shenanigans
- smart code environment that uses autocompleteand puts the closing quotes around strings and fixes many speeelling errors
- interactive debugger that lets you singlestep through a program , examine data , add or remove instructions and rerun sections of code. No continuous code, attempt to compile, fix typing errors , missing brackets and semicolons , run , crash and not know where or why or even able to see or save the data. Fire up the program. if a mistake is encountered the program stops without loss of data. the debugger tells yu the most likely cause, lets you fix the source and then attempt to continue the run with the fix in place. while in debug you can execute code interactively , examine and alter data contents and even dump the current state of program and data to disk so it can be examined later without having to rerun the entire shebang. the entire machine state, data and all, can be saved.

I'm thinking to call it something along the lines of 'Ultima' or maybe something simple and basic... like 'Basic'.

Professional Electron Wrangler.
Any comments, or points of view expressed, are my own and not endorsed , induced or compensated by my employer(s).
 
The following users thanked this post: Dataforensics, neil555, KE5FX, SilverSolder, Chris_Walch, jmh

Offline dave j

  • Regular Contributor
  • *
  • Posts: 135
  • Country: gb
Re: Yet another icon stepping away - Guido van Rossum, Python
« Reply #4 on: July 28, 2020, 07:57:39 pm »
This isn't exactly news. He announcement he was stepping back from being benevolent dictator for life over two years ago. Whilst PEP 572 might have been the trigger for him stepping back, it's not the sole reason why. As that article linked to mentions:
Quote
He’s left behind no governing principles or a successor, but said a debate on those issues was coming anyway, citing the potential for him to be hit by a bus and the fact that “I'm not getting younger... (I'll spare you the list of medical issues.)”

All open source projects need to deal with the fact that their creator isn't going to be around forever. It's probably better that they do so whilst they are still around.
I'm not David L Jones. Apparently I actually do have to point this out.
 
The following users thanked this post: ebastler, newbrain

Online RoGeorgeTopic starter

  • Super Contributor
  • ***
  • Posts: 6625
  • Country: ro
Re: Yet another icon stepping away - Guido van Rossum, Python
« Reply #5 on: July 28, 2020, 09:42:22 pm »
My bad for not double checking the sources for that video, sorry, I didn't know it happened 2 years ago.

Still, my sorrow for his stepping down remains.

Offline CatalinaWOW

  • Super Contributor
  • ***
  • Posts: 5403
  • Country: us
Re: Yet another icon stepping away - Guido van Rossum, Python
« Reply #6 on: July 28, 2020, 11:07:09 pm »
Create a new language.
One that isn't boneheaded and does not bank on whitespace for flow control.
One that does has a parser that understands when = is an assignment and when it is a comparison.
One that doesn't need every line to be ended in a semicolon, but uses a continuation character when needed.
One that doesn't smell like C, C++ or c# or Java or quiche-eaters pascal and its derivatives.
One that doesn't look like a bunch of cryptical mathematical equations
One that is easy to understand, uses simple english keywords.

something along these lines

a = 12
b= 14
c= b-a
for x = a to b
   c = c^x
  print a,b,x,c
next x


- simple english with a small vocabulary of keywords
- smart compiler that understands syntax and knows when to assign and when to compare. no need for walrus operators or == and other shenanigans
- smart code environment that uses autocompleteand puts the closing quotes around strings and fixes many speeelling errors
- interactive debugger that lets you singlestep through a program , examine data , add or remove instructions and rerun sections of code. No continuous code, attempt to compile, fix typing errors , missing brackets and semicolons , run , crash and not know where or why or even able to see or save the data. Fire up the program. if a mistake is encountered the program stops without loss of data. the debugger tells yu the most likely cause, lets you fix the source and then attempt to continue the run with the fix in place. while in debug you can execute code interactively , examine and alter data contents and even dump the current state of program and data to disk so it can be examined later without having to rerun the entire shebang. the entire machine state, data and all, can be saved.

I'm thinking to call it something along the lines of 'Ultima' or maybe something simple and basic... like 'Basic'.

Here is one of the reasons there have been so many languages over the years.  Free electron is speaking as a user - someone who just wants to get something done.

Strongly typed languages, variable declarations, semicolon line endings, walrus operators and the like are the desires of someone who wants to make the compiler easier to write, easier (perhaps possible) to prove that the generated output represents the commands of the input.

A perfect language for one group will never be the perfect language for the other. 
 
The following users thanked this post: free_electron, SilverSolder

Online ebastler

  • Super Contributor
  • ***
  • Posts: 6845
  • Country: de
Re: Yet another icon stepping away - Guido van Rossum, Python
« Reply #7 on: July 29, 2020, 05:19:47 am »
Strongly typed languages, variable declarations, semicolon line endings, walrus operators and the like are the desires of someone who wants to make the compiler easier to write, easier (perhaps possible) to prove that the generated output represents the commands of the input.

I think you are missing the point there. All the redundancies you mention -- syntax, declarations, strong typing -- are not meant to make writing the compiler easier, or to help catch compiler bugs. They are meant to make it easier to catch user (programmer) errors.

Whether they are an effective way to reach that goal is, of course, a matter of debate. "Wordy" languages with redundancy, and writing lots of comments besides the actual program, certainly works for me. (Probably because I am sloppy and forgetful...) Others feel that "terse" languages allow them to focus on the essentials when reading and writing code, and argue that this reduces their error rate. You can watch the occasional "VHDL vs. Verilog" debates in another part of this forum for a taste.  ;)

There certainly is a pain threshold for me where I feel terseness in programming languages becomes counter-productive and error-prone. The way C and its offspring allow you to write "if (a=b) {...}", where the "=" operator is an assignment and the value of b is quietly converted into a boolean, is my favorite example. And yes, I have fallen into that trap more than once when I sporadically programmed in C or C++...
 
The following users thanked this post: nctnico, Siwastaja

Offline CatalinaWOW

  • Super Contributor
  • ***
  • Posts: 5403
  • Country: us
Re: Yet another icon stepping away - Guido van Rossum, Python
« Reply #8 on: July 29, 2020, 12:53:12 pm »
Strongly typed languages, variable declarations, semicolon line endings, walrus operators and the like are the desires of someone who wants to make the compiler easier to write, easier (perhaps possible) to prove that the generated output represents the commands of the input.

I think you are missing the point there. All the redundancies you mention -- syntax, declarations, strong typing -- are not meant to make writing the compiler easier, or to help catch compiler bugs. They are meant to make it easier to catch user (programmer) errors.

Whether they are an effective way to reach that goal is, of course, a matter of debate. "Wordy" languages with redundancy, and writing lots of comments besides the actual program, certainly works for me. (Probably because I am sloppy and forgetful...) Others feel that "terse" languages allow them to focus on the essentials when reading and writing code, and argue that this reduces their error rate. You can watch the occasional "VHDL vs. Verilog" debates in another part of this forum for a taste.  ;)

There certainly is a pain threshold for me where I feel terseness in programming languages becomes counter-productive and error-prone. The way C and its offspring allow you to write "if (a=b) {...}", where the "=" operator is an assignment and the value of b is quietly converted into a boolean, is my favorite example. And yes, I have fallen into that trap more than once when I sporadically programmed in C or C++...

I will concede that they are dual purpose.  Whether they help depends on the type of errors that the programmer is likely to make, and they are more effective for some than for others.  They are most effective on errors that result from variations in number representation.  Humans doing math don't separate integers of various sizes, floating point numbers of various sizes and complex numbers into different and incompatible classes, so it is easy to make mistakes of understanding in how the machine responds to multiplying 2 times 2.0.  Particularly when sending the result to a DAC.
 

Offline free_electron

  • Super Contributor
  • ***
  • Posts: 8545
  • Country: us
    • SiliconValleyGarage
Re: Yet another icon stepping away - Guido van Rossum, Python
« Reply #9 on: July 29, 2020, 01:31:05 pm »
Create a new language.
One that isn't boneheaded and does not bank on whitespace for flow control.
One that does has a parser that understands when = is an assignment and when it is a comparison.
One that doesn't need every line to be ended in a semicolon, but uses a continuation character when needed.
One that doesn't smell like C, C++ or c# or Java or quiche-eaters pascal and its derivatives.
One that doesn't look like a bunch of cryptical mathematical equations
One that is easy to understand, uses simple english keywords.

something along these lines

a = 12
b= 14
c= b-a
for x = a to b
   c = c^x
  print a,b,x,c
next x


- simple english with a small vocabulary of keywords
- smart compiler that understands syntax and knows when to assign and when to compare. no need for walrus operators or == and other shenanigans
- smart code environment that uses autocompleteand puts the closing quotes around strings and fixes many speeelling errors
- interactive debugger that lets you singlestep through a program , examine data , add or remove instructions and rerun sections of code. No continuous code, attempt to compile, fix typing errors , missing brackets and semicolons , run , crash and not know where or why or even able to see or save the data. Fire up the program. if a mistake is encountered the program stops without loss of data. the debugger tells yu the most likely cause, lets you fix the source and then attempt to continue the run with the fix in place. while in debug you can execute code interactively , examine and alter data contents and even dump the current state of program and data to disk so it can be examined later without having to rerun the entire shebang. the entire machine state, data and all, can be saved.

I'm thinking to call it something along the lines of 'Ultima' or maybe something simple and basic... like 'Basic'.

Here is one of the reasons there have been so many languages over the years.  Free electron is speaking as a user - someone who just wants to get something done.

Strongly typed languages, variable declarations, semicolon line endings, walrus operators and the like are the desires of someone who wants to make the compiler easier to write, easier (perhaps possible) to prove that the generated output represents the commands of the input.

A perfect language for one group will never be the perfect language for the other.

finally someone who understands my point of view. ( as opposed to bashing a language like 'basic' )


Why is it so hard to discriminate when  = means 'assign' and when it means 'compare' ?
When used in conjunction with an 'if' clause : comparison , anything else : assignment. is it really that hard to figure out for a compiler ?
The same thing with semicolons. At the end of the line of code there is a CR/LF ( or LF if you are on oonix ) in the source file. There is your bloody line ending and end of statement. if, and only if, it is so long  you really must spread it over multiple lines , use a continuation character. The number of times a command needs to be split over mulitple lines is far less than single line , so it saves keyboard hammering. besides, if your statement realyl is that long : maybe split it in a few simpler statements ? A book is made from many sentences. Not just one long sentence. If you want to keep it simple and approach a wide audience : use short sentences.

Basic used to have the 'LET' keyword to make assignments. Then they figured out there was no need for it because the compiler can figure it out. (historical note : BASIC is several years OLDER than C. If it could already do that that makes C a piss-poor compiler.
Same thing with creating variables. Why do i need to create a variable ?
a=4
tells the compiler create something called 'a' and stuff the number 5 in it
since computers discriminate between integers and floats we can use a modifier to 'cast' , but even then there should be no need.

a=5  ' a is integer
b = 5.0 ' a is float
c = a+b ' since the compiler knows the type of a and b it will resolve to float
d = int(c)   ' the int operator always returns an integer so cast d as integer.
d = 5.0 ' throw an error . i goofed up .
b = b and &hff ' throw an error b is a float
d = int(b) and &hff ' works

for all i care you can have two operators : toint and tofloat

It is 2020 . The compilers should be able to figure these things out without us humans needing to spoonfeed them each and every time.



« Last Edit: July 29, 2020, 01:34:26 pm by free_electron »
Professional Electron Wrangler.
Any comments, or points of view expressed, are my own and not endorsed , induced or compensated by my employer(s).
 

Offline Doctorandus_P

  • Super Contributor
  • ***
  • Posts: 3754
  • Country: nl
Re: Yet another icon stepping away - Guido van Rossum, Python
« Reply #10 on: August 13, 2020, 07:00:19 am »
They're fighting over something like this, while failing to adress the horrible whitespace dependency of python?

Sigh.

>>> 3+3
6
>>>  4+5
  File "<stdin>", line 1
    4+5
    ^
IndentationError: unexpected indent



Oh gosh, I had the guts to place a space before "4+5".
 

Offline free_electron

  • Super Contributor
  • ***
  • Posts: 8545
  • Country: us
    • SiliconValleyGarage
Re: Yet another icon stepping away - Guido van Rossum, Python
« Reply #11 on: August 13, 2020, 06:09:07 pm »
They're fighting over something like this, while failing to adress the horrible whitespace dependency of python?

Sigh.

>>> 3+3
6
>>>  4+5
  File "<stdin>", line 1
    4+5
    ^
IndentationError: unexpected indent



Oh gosh, I had the guts to place a space before "4+5".
don;t get me started. They should reduce the twat that came up with that to whitespace ...
Professional Electron Wrangler.
Any comments, or points of view expressed, are my own and not endorsed , induced or compensated by my employer(s).
 

Online ebastler

  • Super Contributor
  • ***
  • Posts: 6845
  • Country: de
Re: Yet another icon stepping away - Guido van Rossum, Python
« Reply #12 on: August 13, 2020, 08:59:07 pm »
They should reduce the twat that came up with that to whitespace ...

That would be Guido von Rossum himself, presumably?

Like it or not, but the idea to encode nesting depth via indentation seems pretty central to the Python syntax.
So if you don't like it, or can at least tolerate it, better find yourself another programming language.  :P
 
The following users thanked this post: gmb42, Jacon

Offline Bassman59

  • Super Contributor
  • ***
  • Posts: 2501
  • Country: us
  • Yes, I do this for a living
Re: Yet another icon stepping away - Guido van Rossum, Python
« Reply #13 on: August 13, 2020, 09:04:47 pm »
They should reduce the twat that came up with that to whitespace ...

That would be Guido von Rossum himself, presumably?

Like it or not, but the idea to encode nesting depth via indentation seems pretty central to the Python syntax.
So if you don't like it, or can at least tolerate it, better find yourself another programming language.  :P

I don't really care about how Python requires indentation for nesting depth.

I hate how it allows you to override a variable's definition in mid-stream. First, let's declare that foo is an integer and use it as such! OK, now, five lines later, let's declare foo to be a dictionary!
 

Offline Bud

  • Super Contributor
  • ***
  • Posts: 7061
  • Country: ca
Re: Yet another icon stepping away - Guido van Rossum, Python
« Reply #14 on: August 13, 2020, 10:47:48 pm »
That is the consequence of using a language named after the clown TV show.
Facebook-free life and Rigol-free shack.
 

Offline RenThraysk

  • Regular Contributor
  • *
  • Posts: 107
  • Country: gb
Re: Yet another icon stepping away - Guido van Rossum, Python
« Reply #15 on: August 14, 2020, 12:08:08 am »
Basic used to have the 'LET' keyword to make assignments. Then they figured out there was no need for it because the compiler can figure it out. (historical note : BASIC is several years OLDER than C. If it could already do that that makes C a piss-poor compiler.
Same thing with creating variables. Why do i need to create a variable ?
a=4
tells the compiler create something called 'a' and stuff the number 5 in it
since computers discriminate between integers and floats we can use a modifier to 'cast' , but even then there should be no need.

a=5  ' a is integer
b = 5.0 ' a is float
c = a+b ' since the compiler knows the type of a and b it will resolve to float
d = int(c)   ' the int operator always returns an integer so cast d as integer.
d = 5.0 ' throw an error . i goofed up .
b = b and &hff ' throw an error b is a float
d = int(b) and &hff ' works

for all i care you can have two operators : toint and tofloat

It is 2020 . The compilers should be able to figure these things out without us humans needing to spoonfeed them each and every time.

As soon as add blocks and scope, the compiler cannot determine if you are reusing a variable from an outer scope, or creating a new variable in the inner scope, unless you specifically prohibit variable shadowing in the language.

Before 2015 JavaScript/ECMAScript just had var keyword to declare either function scoped or globally scoped variable. And it seemed to create a lot of confusion. So much so the ECMAScript 6 standard added let and const keywords to the language in 2015, to create block scoped variables or constants. Since then I think var usage has virtual stopped.
 

Offline gmb42

  • Frequent Contributor
  • **
  • Posts: 298
  • Country: gb
Re: Yet another icon stepping away - Guido van Rossum, Python
« Reply #16 on: August 14, 2020, 09:37:37 am »
I don't really care about how Python requires indentation for nesting depth.

I hate how it allows you to override a variable's definition in mid-stream. First, let's declare that foo is an integer and use it as such! OK, now, five lines later, let's declare foo to be a dictionary!

That's another fundamental part of the Python language, it's dynamically (but strongly) typed.
https://wiki.python.org/moin/Why%20is%20Python%20a%20dynamic%20language%20and%20also%20a%20strongly%20typed%20language
 

Offline AntiProtonBoy

  • Frequent Contributor
  • **
  • Posts: 988
  • Country: au
  • I think I passed the Voight-Kampff test.
Re: Yet another icon stepping away - Guido van Rossum, Python
« Reply #17 on: August 14, 2020, 05:01:54 pm »
I'm gonna go against the trend and say i don't mind Python's strict indentation requirements. And this is coming from a C++ developer. Yes, it forces you into  writing code in very particular way, but that's the beauty of it: everyone else has to do it, too. The end result is that coding style becomes consistently similar across different authors. Programming communities for other languages have to endure the never ending bike-shedding over code formatting, which gets tiresome sometimes.
 
The following users thanked this post: Tepe, newbrain, Jacon

Offline free_electron

  • Super Contributor
  • ***
  • Posts: 8545
  • Country: us
    • SiliconValleyGarage
Re: Yet another icon stepping away - Guido van Rossum, Python
« Reply #18 on: August 14, 2020, 06:23:55 pm »
I'm gonna go against the trend and say i don't mind Python's strict indentation requirements. And this is coming from a C++ developer. Yes, it forces you into  writing code in very particular way, but that's the beauty of it: everyone else has to do it, too. The end result is that coding style becomes consistently similar across different authors. Programming communities for other languages have to endure the never ending bike-shedding over code formatting, which gets tiresome sometimes.
ok. but here is the problem : how many spaces is a tab ? and do all operating systems / editors use the same convention ? THAT is the misery with using whitespace for code flow. the CR / CR/LF problem is already bad enough , now we have that shit too.
Professional Electron Wrangler.
Any comments, or points of view expressed, are my own and not endorsed , induced or compensated by my employer(s).
 

Offline Bassman59

  • Super Contributor
  • ***
  • Posts: 2501
  • Country: us
  • Yes, I do this for a living
Re: Yet another icon stepping away - Guido van Rossum, Python
« Reply #19 on: August 14, 2020, 07:11:20 pm »
I don't really care about how Python requires indentation for nesting depth.

I hate how it allows you to override a variable's definition in mid-stream. First, let's declare that foo is an integer and use it as such! OK, now, five lines later, let's declare foo to be a dictionary!

That's another fundamental part of the Python language, it's dynamically (but strongly) typed.
https://wiki.python.org/moin/Why%20is%20Python%20a%20dynamic%20language%20and%20also%20a%20strongly%20typed%20language

I understand that, but it doesn't mean that it's not fucking stupid.

Of course, any rational person won't write code that takes advantage of that "feature," right? Right?
 

Offline RenThraysk

  • Regular Contributor
  • *
  • Posts: 107
  • Country: gb
Re: Yet another icon stepping away - Guido van Rossum, Python
« Reply #20 on: August 14, 2020, 07:13:29 pm »
I'm gonna go against the trend and say i don't mind Python's strict indentation requirements. And this is coming from a C++ developer. Yes, it forces you into  writing code in very particular way, but that's the beauty of it: everyone else has to do it, too. The end result is that coding style becomes consistently similar across different authors. Programming communities for other languages have to endure the never ending bike-shedding over code formatting, which gets tiresome sometimes.

I don't like Python's white space indentation, though I do like go's approach...

Quote
Formatting issues are the most contentious but the least consequential. People can adapt to different formatting styles but it's better if they don't have to, and less time is devoted to the topic if everyone adheres to the same style. The problem is how to approach this Utopia without a long prescriptive style guide.

With Go we take an unusual approach and let the machine take care of most formatting issues. The gofmt program (also available as go fmt, which operates at the package level rather than source file level) reads a Go program and emits the source in a standard style of indentation and vertical alignment, retaining and if necessary reformatting comments.

Taken from https://golang.org/doc/effective_go.html#formatting

Most IDEs or advanced text editors with go extensions/plugins run gofmt on saving. Means don't have to spend time pfaffing with white space.
 

Offline Marco

  • Super Contributor
  • ***
  • Posts: 6903
  • Country: nl
Re: Yet another icon stepping away - Guido van Rossum, Python
« Reply #21 on: August 14, 2020, 09:14:14 pm »
One that does has a parser that understands when = is an assignment and when it is a comparison.

But how are you going to develop a human which can do so with an useful level of consistency? They have trouble when it's two operators, making an extensive set of contextual rules for when it means one or the other seems utter folley to me.
« Last Edit: August 14, 2020, 09:16:07 pm by Marco »
 
The following users thanked this post: newbrain

Offline Marco

  • Super Contributor
  • ***
  • Posts: 6903
  • Country: nl
Re: Yet another icon stepping away - Guido van Rossum, Python
« Reply #22 on: August 14, 2020, 09:22:19 pm »
ok. but here is the problem : how many spaces is a tab ? and do all operating systems / editors use the same convention ? THAT is the misery with using whitespace for code flow. the CR / CR/LF problem is already bad enough , now we have that shit too.

Can't mix spaces and tabs for leading white space in 3, so it's entirely irrelevant.
 
The following users thanked this post: newbrain

Offline ozcar

  • Frequent Contributor
  • **
  • Posts: 338
  • Country: au
Re: Yet another icon stepping away - Guido van Rossum, Python
« Reply #23 on: August 14, 2020, 09:42:52 pm »

finally someone who understands my point of view. ( as opposed to bashing a language like 'basic' )
...

Basic used to have the 'LET' keyword to make assignments. Then they figured out there was no need for it because the compiler can figure it out. (historical note : BASIC is several years OLDER than C. If it could already do that that makes C a piss-poor compiler.
Same thing with creating variables. Why do i need to create a variable ?
a=4
tells the compiler create something called 'a' and stuff the number 5 in it
since computers discriminate between integers and floats we can use a modifier to 'cast' , but even then there should be no need.

a=5  ' a is integer
b = 5.0 ' a is float
...

Older still -  the default IMPLICIT INTEGER(I-N), REAL(A-H,O-Z).

I write it like that, not to imply shouting, but because the code editors of the day were not so good with lower case (eg https://twobithistory.org/2018/06/23/ibm-029-card-punch.html ).

 

Offline AntiProtonBoy

  • Frequent Contributor
  • **
  • Posts: 988
  • Country: au
  • I think I passed the Voight-Kampff test.
Re: Yet another icon stepping away - Guido van Rossum, Python
« Reply #24 on: August 15, 2020, 02:28:05 pm »
ok. but here is the problem : how many spaces is a tab ? and do all operating systems / editors use the same convention ? THAT is the misery with using whitespace for code flow.
It doesn't matter. Python needs only one space to declare a different block scope. As for how much to indent, that is up to you.

Quote
the CR / CR/LF problem is already bad enough , now we have that shit too.
That's also a non-issue. Most editors worth their salt will gracefully handle line-endings and will happily convert between the conventions.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf