Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-05-01 Thread Mark Janssen
Here's a simple rule to resolve the ambiguity. Whoever publishes first, gets to claim origin of a word and its usage, kind of like a BDFL. The rest can adapt around that, make up their own word, or be corrected as the community requires. You seem to want to squeeze all of computer science

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-05-01 Thread alex23
On May 2, 6:32 am, Mark Janssen dreamingforw...@gmail.com wrote: You seem to want to squeeze all of computer science and programming into a tidy hierarchy.  It won't work, it's not tidy. I strongly suggest you read more about computer science before forming more opinions.  You have a lot to

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-21 Thread rusi
On Apr 15, 8:48 am, Mark Janssen dreamingforw...@gmail.com wrote: That all being said, the thrust of this whole effort is to possibly advance Computer Science and language design, because in-between the purely concrete object architecture of the imperative programming languages and the purely

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-19 Thread Chris Angelico
On Fri, Apr 19, 2013 at 1:35 PM, rusi rustompm...@gmail.com wrote: If I have a loop: while i len(a) and a[i] != x: i++ I need to understand that at the end of the loop: i = len(a) or a[i] == x and not i = len(a) and a[i] == x nor i == len(a) or a[i] == x # What if I forgot to

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-18 Thread Michael Torrie
On 04/16/2013 04:38 PM, Mark Janssen wrote: (Note this contrasts starkly with Java(script), which doesn't seem to be based on anything -- can anyone clarify where Java actually comes from?) Java is not equal in any way with JavaScript. The only thing they share are semicolons and braces.

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-18 Thread Neil Cerutti
On 2013-04-18, Michael Torrie torr...@gmail.com wrote: On 04/16/2013 04:38 PM, Mark Janssen wrote: (Note this contrasts starkly with Java(script), which doesn't seem to be based on anything -- can anyone clarify where Java actually comes from?) Java is not equal in any way with JavaScript.

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-18 Thread Steven D'Aprano
On Thu, 18 Apr 2013 10:37:17 -0600, Michael Torrie wrote: For the record, JavaScript is what they call a prototype-based language. http://en.wikipedia.org/wiki/Prototype-based_programming. You can emulate an OOP system with a prototype-based language. Prototype languages *are* OOP. Note that

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-18 Thread Roy Smith
In article 51709740$0$29977$c3e8da3$54964...@news.astraweb.com, Steven D'Aprano steve+comp.lang.pyt...@pearwood.info wrote: On Thu, 18 Apr 2013 10:37:17 -0600, Michael Torrie wrote: For the record, JavaScript is what they call a prototype-based language.

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-18 Thread Mark Janssen
One of the nice things about OOP is it means so many different things to different people. All of whom believe with religious fervor that they know the true answer. Here's a simple rule to resolve the ambiguity. Whoever publishes first, gets to claim origin of a word and its usage, kind of

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-18 Thread Ned Batchelder
On 4/18/2013 9:24 PM, Mark Janssen wrote: One of the nice things about OOP is it means so many different things to different people. All of whom believe with religious fervor that they know the true answer. Here's a simple rule to resolve the ambiguity. Whoever publishes first, gets to claim

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-18 Thread Mark Janssen
On Thu, Apr 18, 2013 at 7:10 PM, Ned Batchelder n...@nedbatchelder.com wrote: You won't solve the problem of confusing, ambiguous, or conflicting terminology by making up a rule. Object-oriented means subtly different things to different people. That's a problem, not a solution. It turns

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-18 Thread Ned Batchelder
On 4/18/2013 10:30 PM, Mark Janssen wrote: Okay, professor is it, master? What is your provenance anyway? I'm not a professor, I'm a software engineer. I'm just trying to help. You've made statements that strike me as half-informed. You're trying to unify concepts that perhaps can't or

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-18 Thread Steven D'Aprano
On Thu, 18 Apr 2013 19:30:39 -0700, Mark Janssen wrote: On Thu, Apr 18, 2013 at 7:10 PM, Ned Batchelder n...@nedbatchelder.com wrote: You won't solve the problem of confusing, ambiguous, or conflicting terminology by making up a rule. Object-oriented means subtly different things to

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-18 Thread rusi
On Apr 19, 3:53 am, Mark Janssen dreamingforw...@gmail.com wrote: On Mon, Apr 15, 2013 at 2:53 AM, Moez AbdelGawad moeza...@outlook.com wrote: I'm not quite sure I understand your question, but I'll give it a shot. :-) I'm in this same camp too :) I am very thankful for the references

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-18 Thread Mark Janssen
The main thing that I notice is that there is a heavy bias in academia towards mathematical models. Yeah wonderful observation. Lets clean up! If I have a loop: while i len(a) and a[i] != x: i++ I need to understand that at the end of the loop: i = len(a) or a[i] == x and not i

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-17 Thread Steven D'Aprano
On Tue, 16 Apr 2013 15:38:29 -0700, Mark Janssen wrote: On Mon, Apr 15, 2013 at 3:32 PM, Chris Angelico ros...@gmail.com wrote: On Tue, Apr 16, 2013 at 8:12 AM, Rotwang sg...@hotmail.co.uk wrote: Traceback (most recent call last): File pyshell#2, line 1, in module class C(type(lambda:

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-17 Thread Chris Angelico
On Wed, Apr 17, 2013 at 4:40 PM, Steven D'Aprano steve+comp.lang.pyt...@pearwood.info wrote: On Tue, 16 Apr 2013 15:38:29 -0700, Mark Janssen wrote: (Note this contrasts starkly with Java(script), which doesn't seem to be based on anything -- can anyone clarify where Java actually comes

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-17 Thread Chris Rebert
On Tue, Apr 16, 2013 at 11:40 PM, Steven D'Aprano steve+comp.lang.pyt...@pearwood.info wrote: On Tue, 16 Apr 2013 15:38:29 -0700, Mark Janssen wrote: snip (Note this contrasts starkly with Java(script), which doesn't seem to be based on anything -- can anyone clarify where Java actually

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-17 Thread Antoon Pardon
Op 16-04-13 18:49, Terry Jan Reedy schreef: On 4/16/2013 5:07 AM, Antoon Pardon wrote: Op 16-04-13 05:17, Terry Jan Reedy schreef: I will keep the above in mind if I write or review a patch. here are 4 non-subclassable builtin classes. Two are already documented. Bool in one, forget which

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-16 Thread Steven D'Aprano
On Mon, 15 Apr 2013 21:56:12 -0700, rusi wrote: On Apr 16, 7:32 am, Steven D'Aprano steve +comp.lang.pyt...@pearwood.info wrote: If I had a say in this, I would vote for the first case, with the possible exception of documented singleton types like NoneType and bool. How is bool a

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-16 Thread 88888 Dihedral
zipher於 2013年4月15日星期一UTC+8上午11時48分05秒寫道: Hello, I'm new to the list and hoping this might be the right place to introduce something that has provoked a bit of an argument in my programming community. I'll state about my opinions about the imperative and non-imperative part. If the

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-16 Thread Serhiy Storchaka
On 16.04.13 07:46, Ian Kelly wrote: On Mon, Apr 15, 2013 at 9:17 PM, Terry Jan Reedy tjre...@udel.edu wrote: I will keep the above in mind if I write or review a patch. here are 4 non-subclassable builtin classes. Two are already documented. Bool in one, forget which other. I believe it was

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-16 Thread Antoon Pardon
Op 16-04-13 05:17, Terry Jan Reedy schreef: On 4/15/2013 10:32 PM, Steven D'Aprano wrote: On Mon, 15 Apr 2013 20:52:58 -0400, Terry Jan Reedy wrote: Some builtin classes cannot be subclassed. There is an issue to document which better. That does not mean that it is not a class. I think it

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-16 Thread Terry Jan Reedy
On 4/16/2013 5:07 AM, Antoon Pardon wrote: Op 16-04-13 05:17, Terry Jan Reedy schreef: On 4/15/2013 10:32 PM, Steven D'Aprano wrote: On Mon, 15 Apr 2013 20:52:58 -0400, Terry Jan Reedy wrote: I will keep the above in mind if I write or review a patch. here are 4 non-subclassable builtin

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-16 Thread Ethan Furman
On 04/16/2013 01:25 AM, Serhiy Storchaka wrote: On 16.04.13 07:46, Ian Kelly wrote: On Mon, Apr 15, 2013 at 9:17 PM, Terry Jan Reedy tjre...@udel.edu wrote: I will keep the above in mind if I write or review a patch. here are 4 non-subclassable builtin classes. Two are already documented. Bool

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-16 Thread Terry Jan Reedy
On 4/16/2013 1:29 PM, Ethan Furman wrote: On 04/16/2013 01:25 AM, Serhiy Storchaka wrote: On 16.04.13 07:46, Ian Kelly wrote: On Mon, Apr 15, 2013 at 9:17 PM, Terry Jan Reedy tjre...@udel.edu wrote: I will keep the above in mind if I write or review a patch. here are 4 non-subclassable

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-16 Thread Ian Kelly
On Tue, Apr 16, 2013 at 11:29 AM, Ethan Furman et...@stoneleaf.us wrote: The four are bool, NoneType, slice and ellipsis, I believe. -- import builtins -- for n in dir(builtins): ... if type(getattr(builtins, n)) is type: ... try: ... t = type(n, (getattr(builtins,

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-16 Thread Mark Janssen
On Mon, Apr 15, 2013 at 3:32 PM, Chris Angelico ros...@gmail.com wrote: On Tue, Apr 16, 2013 at 8:12 AM, Rotwang sg...@hotmail.co.uk wrote: Traceback (most recent call last): File pyshell#2, line 1, in module class C(type(lambda: None)): TypeError: type 'function' is not an acceptable

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-16 Thread Ian Kelly
On Tue, Apr 16, 2013 at 4:38 PM, Mark Janssen dreamingforw...@gmail.com wrote: I think his point remains valid, from a theoretical pov. Python prides itself on the idea of first-class functions and such, but unlike the world of lambda calculus, this selling point is a bit invalid. Because

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-15 Thread Steven D'Aprano
On Sun, 14 Apr 2013 20:48:05 -0700, Mark Janssen wrote: Hello, I'm new to the list and hoping this might be the right place to introduce something that has provoked a bit of an argument in my programming community. I'm from the Python programming community. Python is an interpreted

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-15 Thread Antoon Pardon
Op 15-04-13 12:11, Steven D'Aprano schreef: Python's data model has always been 100% object oriented. Prior to the class/type unification, it simply had *two distinct* implementations of objects: types, which were written in C, and classes, which were written in Python. After unification, the

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-15 Thread Dave Angel
On 04/15/2013 01:43 PM, Antoon Pardon wrote: Op 15-04-13 12:11, Steven D'Aprano schreef: Python's data model has always been 100% object oriented. Prior to the class/type unification, it simply had *two distinct* implementations of objects: types, which were written in C, and classes, which

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-15 Thread Rotwang
On 15/04/2013 22:13, Dave Angel wrote: On 04/15/2013 01:43 PM, Antoon Pardon wrote: [...] I had gotten my hopes up after reading this but then I tried: $ python3 Python 3.2.3 (default, Feb 20 2013, 17:02:41) [GCC 4.7.2] on linux2 Type help, copyright, credits or license for more information.

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-15 Thread Chris Angelico
On Tue, Apr 16, 2013 at 8:12 AM, Rotwang sg...@hotmail.co.uk wrote: Traceback (most recent call last): File pyshell#2, line 1, in module class C(type(lambda: None)): TypeError: type 'function' is not an acceptable base type and I don't think that FunctionType would be considered an

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-15 Thread Rotwang
On 15/04/2013 23:32, Chris Angelico wrote: On Tue, Apr 16, 2013 at 8:12 AM, Rotwang sg...@hotmail.co.uk wrote: Traceback (most recent call last): File pyshell#2, line 1, in module class C(type(lambda: None)): TypeError: type 'function' is not an acceptable base type and I don't think

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-15 Thread Terry Jan Reedy
On 4/15/2013 1:43 PM, Antoon Pardon wrote: $ python3 Python 3.2.3 (default, Feb 20 2013, 17:02:41) [GCC 4.7.2] on linux2 Type help, copyright, credits or license for more information. class vslice (slice): ... pass ... Traceback (most recent call last): File stdin, line 1, in module

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-15 Thread Steven D'Aprano
On Mon, 15 Apr 2013 20:52:58 -0400, Terry Jan Reedy wrote: On 4/15/2013 1:43 PM, Antoon Pardon wrote: $ python3 Python 3.2.3 (default, Feb 20 2013, 17:02:41) [GCC 4.7.2] on linux2 Type help, copyright, credits or license for more information. class vslice (slice): ... pass ...

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-15 Thread Steven D'Aprano
On Mon, 15 Apr 2013 19:43:32 +0200, Antoon Pardon wrote: Op 15-04-13 12:11, Steven D'Aprano schreef: Python's data model has always been 100% object oriented. Prior to the class/type unification, it simply had *two distinct* implementations of objects: types, which were written in C, and

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-15 Thread Terry Jan Reedy
On 4/15/2013 10:32 PM, Steven D'Aprano wrote: On Mon, 15 Apr 2013 20:52:58 -0400, Terry Jan Reedy wrote: Some builtin classes cannot be subclassed. There is an issue to document which better. That does not mean that it is not a class. I think it is also important to document whether that

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-15 Thread Ian Kelly
On Mon, Apr 15, 2013 at 9:17 PM, Terry Jan Reedy tjre...@udel.edu wrote: I will keep the above in mind if I write or review a patch. here are 4 non-subclassable builtin classes. Two are already documented. Bool in one, forget which other. I believe it was recently decided to leave the other two

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-15 Thread rusi
On Apr 16, 7:32 am, Steven D'Aprano steve +comp.lang.pyt...@pearwood.info wrote: If I had a say in this, I would vote for the first case, with the possible exception of documented singleton types like NoneType and bool. How is bool a singleton type? --

Re: The type/object distinction and possible synthesis of OOP and imperative programming languages

2013-04-14 Thread Terry Jan Reedy
Note: cross-posting to mailing lists does not work well. Hence the reply only to python-list and the gmane mirror. On 4/14/2013 11:48 PM, Mark Janssen wrote: Python is an interpreted language. I consider this a useless or even deceptive statement. Python is an object-based algorithm