[Python-ideas] Re: Making asserts non-recoverable.

2020-05-13 Thread Chris .
That's what I did on my first day :D Setting up my dev environment for the first time, the 'run this to make sure it is set up' script was failing. After walking the debugger through several 'this should not happen' oddities, the developer that was helping me eventually figured out I was running

[Python-ideas] Re: Using explicit parenthesization to convey aspects of semantic meaning?

2020-12-16 Thread Chris Angelico
On Thu, Dec 17, 2020 at 10:47 AM Greg Ewing wrote: > A feature of Prothon was that a.b() and t = a.b; t() would do > quite different things (one would pass a self argument and the > other wouldn't). > > I considered that a bad thing. I *like* the fact that in Python > I can use a.b to get a bound

[Python-ideas] Re: Using explicit parenthesization to convey aspects of semantic meaning?

2020-12-17 Thread Chris Angelico
On Fri, Dec 18, 2020 at 5:02 AM Paul Sokolovsky wrote: > This is not some completely new restriction. For example, following > already doesn't work in Python: > > class A: > pass > > o = A() > o.__add__ = lambda self, x: print("me called") > > o + A() # lambda above is never called > But the

[Python-ideas] Re: Standalone bool?

2020-12-21 Thread Chris Angelico
On Mon, Dec 21, 2020 at 7:00 PM Paul Bryan wrote: > > I know this has come up in the past. > > Could the consensus have changed regarding bool's inheritance from int? > > This is not intuitive (to me), and recently bit me as a bug: > > Python 3.9.1 (default, Dec 13 2020, 11:55:53) > > [GCC 10.2.0]

[Python-ideas] Re: Standalone bool?

2020-12-21 Thread Chris Angelico
On Mon, Dec 21, 2020 at 7:15 PM Paul Bryan wrote: > > Hmm, I see ints, floats and decimal.Decimal all produce the same hashes for > integer values, so they also suffer the same fate in sets and dicts. > Yes, because they compare equal. (The hash is secondary to that.) Since 1 == 1.0, they must b

[Python-ideas] Re: Standalone bool?

2020-12-21 Thread Chris Angelico
On Tue, Dec 22, 2020 at 5:20 AM David Mertz wrote: > > On Mon, Dec 21, 2020 at 5:56 PM Paul Bryan wrote: >> >> I'm interested in knowing when (id(x), x) would be preferable over (type(x), >> x). > > > Something along these lines: > > >>> class Point: > ... def __init__(self, x, y): > ...

[Python-ideas] Re: Standalone bool?

2020-12-21 Thread Chris Angelico
On Tue, Dec 22, 2020 at 5:59 AM David Mertz wrote: > > On Mon, Dec 21, 2020 at 6:32 PM Chris Angelico wrote: >> >> But the real question is: Why do points compare equal based on their >> locations, if you need them to be independently stored in a set? >> Logical

[Python-ideas] Re: Standalone bool?

2020-12-21 Thread Chris Angelico
On Tue, Dec 22, 2020 at 11:52 AM Christopher Barker wrote: > > On Mon, Dec 21, 2020 at 3:37 PM Greg Ewing > wrote: >> >> > However, that ship has sailed. I think it would have been minimally >> > disruptive when True and False were first introduced, >> >> It would have been just as disruptive ba

[Python-ideas] Re: built in to clear terminal

2020-12-22 Thread Chris Angelico
On Wed, Dec 23, 2020 at 9:15 AM Steven D'Aprano wrote: > > On Mon, Dec 21, 2020 at 08:22:35AM +1100, Cameron Simpson wrote: > > >is it so bad to use a subprocess? > > > > Yes. It is _really slow_, depends on external reaources which might not > > be there, and subprocess brings other burdens too.

[Python-ideas] Re: Capture manylinux environment set-up in pyproject.toml

2020-12-23 Thread Chris Antonellis
nk this is a great idea but out of scope. This work should focus on build dependencies to avoid scope creep 4. `python_runtime_dependencies`: I believe this information is already captured in PEP-631: Dependency specification in pyproject.toml based on PEP 508 (https://www.python.org/dev/peps/pep-0631/)

[Python-ideas] Re: fsync-on-close io object

2020-12-24 Thread Chris Angelico
On Fri, Dec 25, 2020 at 9:30 AM Steven D'Aprano wrote: > Perhaps a "sync on close" keyword argument to open? At least then it is > always available and easily discoverable. +1 (though this is really just bikeshedding) > > 3. There are many ways to do this, and I think several of them could > > b

[Python-ideas] Re: Unpack operator "**" and Mapping

2020-12-26 Thread Chris Angelico
On Sun, Dec 27, 2020 at 11:36 AM Greg Ewing wrote: > > On 27/12/20 10:15 am, Christopher Barker wrote: > > It does seem like ** could be usable with any iterable that returns > > pairs of objects. However the trick is that when you iterate a dict, you > > get the keys, not the items, which makes m

[Python-ideas] Re: Unpack operator "**" and Mapping

2020-12-26 Thread Chris Angelico
On Sun, Dec 27, 2020 at 1:15 PM Brendan Barnwell wrote: > > On 2020-12-26 18:03, Chris Angelico wrote: > > On Sun, Dec 27, 2020 at 11:36 AM Greg Ewing > > wrote: > >> > >> On 27/12/20 10:15 am, Christopher Barker wrote: > >> > It does seem like *

[Python-ideas] Re: built in to clear terminal

2020-12-26 Thread Chris Angelico
one 3) Beginners already have to learn about importing (eg "from math import sin") and this is just one more importable. > So that's the easy part: just agree with me and import it in site.py, > wherever it happens to come from. *wink* This is python-ideas! We don't "

[Python-ideas] Re: Unpack operator "**" and Mapping

2020-12-26 Thread Chris Angelico
On Sun, Dec 27, 2020 at 1:45 PM Greg Ewing wrote: > > On 27/12/20 3:03 pm, Chris Angelico wrote: > > But that would mean that a lot of iterables would look like mappings > > when they're not. > > In the context of ** you're expecting a mapping, not a sequence. &g

[Python-ideas] Re: Unpack operator "**" and Mapping

2020-12-26 Thread Chris Angelico
On Sun, Dec 27, 2020 at 4:30 PM Brendan Barnwell wrote: > That said. . . I'm starting to wonder why not just create a new dunder > called __items__ and have dict alias that to .items(). Then the > **-unpacking protocol could use that and everything would be fine, right? > +0.95. If we c

[Python-ideas] Re: built in to clear terminal

2020-12-26 Thread Chris Angelico
On Sun, Dec 27, 2020 at 4:26 PM Steven D'Aprano wrote: > > On Sun, Dec 27, 2020 at 02:00:00PM +1100, Chris Angelico wrote: > > > This is actually the exact part that I think should *not* happen, for > > several reasons: > > > > 1) Stuff that exists interactiv

[Python-ideas] Re: str.isfloat()

2020-12-27 Thread Chris Angelico
On Mon, Dec 28, 2020 at 9:22 AM Joao S. O. Bueno wrote: > > I agree - the three builtin methods are almost the same (not sure if > there is any difference at all), Yes - they all check if the string matches a particular set of characters. > while there is no trivial way to check for a valid > fl

[Python-ideas] Re: str.isfloat()

2020-12-27 Thread Chris Angelico
On Mon, Dec 28, 2020 at 9:55 AM Joao S. O. Bueno wrote: > On Sun, 27 Dec 2020 at 19:31, Chris Angelico wrote: > Sorry, I thought my message conveyed that I know "float" exists, and > try/except is the current usable pattern (it is in the original posting > anyway) An

[Python-ideas] Re: Unpack operator "**" and Mapping

2020-12-28 Thread Chris Angelico
On Mon, Dec 28, 2020 at 7:45 PM Anton Abrosimov wrote: > > Steven D'Aprano wrote: > > Why do you want something that isn't a mapping to be usable with mapping > > unpacking? > > I think mapping is not `abc.Mapping` class only. > > What about: > `Iterator[Tuple[str, int]]` > > ``` > @dataclass > cl

[Python-ideas] Re: Unpack operator "**" and Mapping

2020-12-29 Thread Chris Angelico
On Wed, Dec 30, 2020 at 8:49 AM Brendan Barnwell wrote: > To my mind, every time a change is made to Python behavior there must > be a corresponding change to the main documentation describing the > change. I would go so far as to say that the lack of such documentation > updates should b

[Python-ideas] Re: built in to clear terminal

2020-12-29 Thread Chris Angelico
On Wed, Dec 30, 2020 at 9:57 AM Mike Miller wrote: > Also, I'd argue the likelihood of a newbie clearing important work... is not > very high. > Disputed on the basis of having seen it all too often :) ChrisA ___ Python-ideas mailing list -- python-id

[Python-ideas] Re: Unpack operator "**" and Mapping

2020-12-31 Thread Chris Angelico
On Thu, Dec 31, 2020 at 3:13 PM Brendan Barnwell wrote: > > On 2020-12-29 15:01, Christopher Barker wrote: > > along with a COMPLETE list of > > the language features that make use of that protocol. > > > > > > That is pretty much impossible -- that's kind of the point of a protocol > > --

[Python-ideas] Re: (Off-topic) Different object, same id

2021-01-01 Thread Chris Angelico
On Sat, Jan 2, 2021 at 7:56 AM Jonathan Fine wrote: > > Bravo, Jeff. I couldn't have chosen a better example. > > However, I'd expect large ints to be stored in two parts. A (class, pointer) > pair which has fixed size. And memory referenced by the pointer, large enough > to store the value of t

[Python-ideas] Re: Python with braces formal proposal?

2021-01-04 Thread Chris Angelico
On Mon, Jan 4, 2021 at 9:41 PM Paul Sokolovsky wrote: > > Hello, > > There're tons of projects which introduce alternative braces > (i.e. C-like) syntax for Python. Most of them are however not properly > documented, and definitely not spec'ed for what they do. > > I wonder, does anyone here remem

[Python-ideas] PEP Draft: Build Dependency Specification for Manylinux Wheels

2021-01-04 Thread Chris Antonellis
Hello- This is a draft of a future PEP regarding capturing wheel build dependencies in pyproject.toml. I am looking for any critique or input prior to creating a PR against the PEP repository, Thank you! Previous discussion can be seen here: * https://mail.python.org/archives/list/python-ideas@

[Python-ideas] Re: Add venv activate command to the venv modules

2021-01-04 Thread Chris Angelico
On Tue, Jan 5, 2021 at 1:42 AM Abdur-Rahmaan Janhangeer wrote: > > Greetings list, > > put simply, > > be able to use > > $ python -m venv venv_name activate > > To activate an env instead of having each platform have a way of > handling it > Unfortunately, that wouldn't work. Activating a virtua

[Python-ideas] Re: Add venv activate command to the venv modules

2021-01-04 Thread Chris Angelico
On Tue, Jan 5, 2021 at 1:52 AM Calvin Spealman wrote: > > > > On Mon, Jan 4, 2021 at 9:47 AM Chris Angelico wrote: >> >> On Tue, Jan 5, 2021 at 1:42 AM Abdur-Rahmaan Janhangeer >> wrote: >> > >> > Greetings list, >> > >> &g

[Python-ideas] Re: Add venv activate command to the venv modules

2021-01-04 Thread Chris Angelico
On Tue, Jan 5, 2021 at 2:29 AM Abdur-Rahmaan Janhangeer wrote: > > Unfortunately, that wouldn't work. Activating a virtual environment > means setting some env vars in the current shell, and Python is > fundamentally unable to do that - it can only be done within the shell > itself (by sourcing a

[Python-ideas] Re: Add venv activate command to the venv modules

2021-01-04 Thread Chris Angelico
On Tue, Jan 5, 2021 at 2:37 AM Abdur-Rahmaan Janhangeer wrote: > > You just execute the appropriate shell commands via Python Try it. It won't work. See previous posts. ChrisA ___ Python-ideas mailing list -- [email protected] To unsubscribe send

[Python-ideas] Re: Python with braces formal proposal?

2021-01-04 Thread Chris Angelico
On Tue, Jan 5, 2021 at 9:05 AM Steven D'Aprano wrote: > > On Mon, Jan 04, 2021 at 01:38:23PM +0300, Paul Sokolovsky wrote: > > Hello, > > > > There're tons of projects which introduce alternative braces > > (i.e. C-like) syntax for Python. > > Got any examples of these projects? Preferably ones th

[Python-ideas] Re: Python with braces formal proposal?

2021-01-05 Thread Chris Angelico
On Tue, Jan 5, 2021 at 8:32 PM Paul Sokolovsky wrote: > And you seem to have 2nd level miss about this miss. I'm not the 1st > asking about braces in Python, hundreds of people embraced braces > (sorry for the pun) in Python for decades (references are in other > messages of this thread). Apparent

[Python-ideas] Re: Python with braces formal proposal?

2021-01-05 Thread Chris Angelico
On Tue, Jan 5, 2021 at 9:38 PM Paul Sokolovsky wrote: > There were good reasons to not have string interpolation in the core > language for decades then - KABOOM - there's string interpolation. You > see a pattern yet? No? Oh, let's just keep watching. Do you have evidence from the language itsel

[Python-ideas] Re: Python with braces formal proposal?

2021-01-05 Thread Chris Angelico
On Wed, Jan 6, 2021 at 12:01 AM Paul Sokolovsky wrote: > Anyway, this went offtopic wrt to the original subject. > [chomp loads of drivel] Yep, nothing more in this thread. Time to let it die a quiet death. ChrisA ___ Python-ideas mailing list -- pytho

[Python-ideas] Re: Python with braces formal proposal?

2021-01-05 Thread Chris Angelico
On Wed, Jan 6, 2021 at 9:17 AM lasizoillo wrote: > > Sorry, but if I'm understanting the point is to make one-liners. For example, > if I want to do something like: > > $ env | grep "^XDG" > > In one python one liner like > > $ python -c 'import os;print("\n".join([f"{key}:{value}" for key, value

[Python-ideas] Re: Python with braces formal proposal?

2021-01-06 Thread Chris Angelico
On Wed, Jan 6, 2021 at 9:27 PM Steven D'Aprano wrote: > I'm glad that things like Perl one-liners, obfuscated C, and > sewerage treatment works exist... :) > Multi-statment anonymous functions are, in my opinion, overrated, and a > (slight) code smell. If your lambda is so complex it requires mo

[Python-ideas] Re: Python with braces formal proposal?

2021-01-07 Thread Chris Angelico
On Thu, Jan 7, 2021 at 9:12 PM Paul Sokolovsky wrote: > In that regard, as of 3.9, CPython, has absolutely atrocious REPL > support for its own syntax. It's just barely possible at all to type > multi-line statement, but doing that as painful as hell, and after > typing, editing is not possible. >

[Python-ideas] Re: Support reversed(itertools.chain(x, y, z))

2021-01-08 Thread Chris Angelico
On Sat, Jan 9, 2021 at 10:21 AM Steven D'Aprano wrote: > Not every trivial combination of functions needs to be given a built-in > or standard library solution. Especially not if doing so will break > backwards compatibility. > > "I had three numbers in a tuple, and wanted half of twice the first

[Python-ideas] Re: Support reversed(itertools.chain(x, y, z))

2021-01-09 Thread Chris Angelico
On Sun, Jan 10, 2021 at 12:29 AM Oscar Benjamin wrote: > I haven't ever wanted to reverse a chain but I have wanted to be able > to reverse an enumerate many times: > > >>> reversed(enumerate([1, 2, 3])) > ... > TypeError > > The alternative zip(range(len(obj)-1, -1, -1), reversed(obj)

[Python-ideas] Re: pathlib enhancements

2021-01-09 Thread Chris Angelico
On Sun, Jan 10, 2021 at 4:51 AM Stephen J. Turnbull wrote: > > Joseph Martinot-Lagarde writes: > > > One remark about this : .tar.gz files are the exception rather than > > the rule, and AFAIK maybe the only one ? > > Not really. stem.ext -> stem.ext.zzz where zzz is a compression > extension i

[Python-ideas] Re: timeit improvement idea: add an option to measure a script execution time

2021-01-10 Thread Chris Angelico
On Mon, Jan 11, 2021 at 4:42 AM Alex Prengère wrote: > > Hello, > Today I had a quite simple need, I am unsure about the best way to do it, and > saw a possible improvement for the timeit module. > > I have about 30 Python scripts and I want to measure precisely their > execution times, without

[Python-ideas] Re: timeit improvement idea: add an option to measure a script execution time

2021-01-10 Thread Chris Angelico
On Mon, Jan 11, 2021 at 6:06 AM Paul Moore wrote: > > On 2021-01-10 at 18:38:12 +0100, > Alex Prengère wrote: > > 3. Use timeit. The scripts have no side effects so repeating their > > execution the way timeit does, works for me. The only issue is that, > > as far as I know, timeit only allows st

[Python-ideas] Re: Best practices of class "reopening" a-la Ruby?

2021-01-14 Thread Chris Angelico
On Thu, Jan 14, 2021 at 10:07 PM Paul Sokolovsky wrote: > The question then: what are the best practices in *declarative* syntax > to achieve the same effect in Python? (but of course, unlike Ruby, > there should be explicit syntactic marker that we augment existing > class, not redefine it). Eas

[Python-ideas] Re: PEP Draft: Build Dependency Specification for Manylinux Wheels

2021-01-15 Thread Chris Antonellis
Is anyone interested on commenting on the work above? I'm still looking for someone to act as a Sponsor for this PEP. Thank You! ___ Python-ideas mailing list -- [email protected] To unsubscribe send an email to [email protected] https:

[Python-ideas] Re: Python with braces formal proposal?

2021-01-18 Thread Chris Angelico
On Tue, Jan 19, 2021 at 8:58 AM Random832 wrote: > > On Tue, Jan 5, 2021, at 17:17, lasizoillo wrote: > > Sorry, but if I'm understanting the point is to make one-liners. For > > example, if I want to do something like: > > > > $ env | grep "^XDG" > > > > In one python one liner like > > > > $ pyt

[Python-ideas] Re: [Python-Dev] reversed enumerate

2021-01-21 Thread Chris Angelico
On Fri, Jan 22, 2021 at 5:21 AM Neil Girdhar wrote: > > I've seen this proposed here before. The general idea is that some iterator > transformations (like enumerate) should return sequences when they're applied > to sequences. I think it's good idea, but it adds complexity and work, which >

[Python-ideas] Re: [Python-Dev] reversed enumerate

2021-01-21 Thread Chris Angelico
On Fri, Jan 22, 2021 at 5:44 AM Neil Girdhar wrote: > > On Thu, Jan 21, 2021 at 1:26 PM Chris Angelico wrote: > > > > On Fri, Jan 22, 2021 at 5:21 AM Neil Girdhar wrote: > > > > > > I've seen this proposed here before. The general idea is that s

[Python-ideas] Re: [Python-Dev] reversed enumerate

2021-01-21 Thread Chris Angelico
eager sequence", so the only thing we don't easily have is "please return a lazy sequence", and that's possible with about four lines of custom class. Note that slicing is NOT easy. The proposed semantics for a reversed enumeration would make slicing extremely odd. >

[Python-ideas] Re: [Python-Dev] reversed enumerate

2021-01-21 Thread Chris Angelico
On Fri, Jan 22, 2021 at 11:10 AM Random832 wrote: > > On Thu, Jan 21, 2021, at 18:48, Chris Angelico wrote: > > Note that slicing is NOT easy. The proposed semantics for a reversed > > enumeration would make slicing extremely odd. > > What proposed semantics? You were t

[Python-ideas] Re: [Python-Dev] reversed enumerate

2021-01-21 Thread Chris Angelico
On Fri, Jan 22, 2021 at 11:48 AM Neil Girdhar wrote: > If enumerate(some_sequence) returns a sequence view, iterating over > that sequence view does not advance it—just like how DictViews are not > altered by iteration. Same thing if reversed(some_sequence) returns a > sequence view. Then that's

[Python-ideas] Re: Adding `open_text()` builtin function. (relating to PEP 597)

2021-01-22 Thread Chris Angelico
On Sat, Jan 23, 2021 at 12:37 PM Inada Naoki wrote: > ## 1. Add `io.open_text()`, builtin `open_text()`, and > `pathlib.Path.open_text()`. > > All functions are same to `io.open()` or `Path.open()`, except: > > * Default encoding is "utf-8". > * "b" is not allowed in the mode option. I *really* d

[Python-ideas] Re: Adding `open_text()` builtin function. (relating to PEP 597)

2021-01-23 Thread Chris Angelico
On Sat, Jan 23, 2021 at 9:04 PM Inada Naoki wrote: > > On Sat, Jan 23, 2021 at 10:47 AM Chris Angelico wrote: > > > > > > Highly dubious. I'd rather focus on just moving to UTF-8 as the > > default, rather than bringing in a new function - especially with such

[Python-ideas] Re: Adding `open_text()` builtin function. (relating to PEP 597)

2021-01-23 Thread Chris Angelico
On Sat, Jan 23, 2021 at 11:34 PM Stephen J. Turnbull wrote: > > I'd rather focus on just moving to UTF-8 as the default, rather > > than bringing in a new function - especially with such a confusing > > name. > > I expect there are several bodies of users who will experience that as > quite obn

[Python-ideas] Re: Adding `open_text()` builtin function. (relating to PEP 597)

2021-01-23 Thread Chris Angelico
On Sun, Jan 24, 2021 at 2:31 AM Barry Scott wrote: > I think that you are going to create a bug magnet if you attempt to auto > detect the encoding. > > First problem I see is that the file may be a pipe and then you will block > until you have enough data to do the auto detect. > > Second problem

[Python-ideas] Re: Adding `open_text()` builtin function. (relating to PEP 597)

2021-01-23 Thread Chris Angelico
On Sun, Jan 24, 2021 at 2:46 PM Matt Wozniski wrote: > 2. At the same time as the deprecation is announced, introduce a new > __future__ import named "utf8_open" or something like that, to opt into the > future behavior of `open` defaulting to utf-8-sig or utf-8 when opening a > file in text mo

[Python-ideas] Re: Adding `open_text()` builtin function. (relating to PEP 597)

2021-01-24 Thread Chris Angelico
On Sun, Jan 24, 2021 at 9:13 PM Stephen J. Turnbull wrote: > > Chris Angelico writes: > > > Can anyone give an example of a current in-use system encoding that > > would have [ASCII bytes in non-ASCII text]? > > Shift JIS, Big5. (Both can have bytes < 128 insi

[Python-ideas] Re: Adding `open_text()` builtin function. (relating to PEP 597)

2021-01-24 Thread Chris Angelico
On Mon, Jan 25, 2021 at 12:33 AM Steven D'Aprano wrote: > > On Sat, Jan 23, 2021 at 03:24:12PM +, Barry Scott wrote: > > > I think that you are going to create a bug magnet if you attempt to auto > > detect the encoding. > > > > First problem I see is that the file may be a pipe and then you w

[Python-ideas] Re: Adding `open_text()` builtin function. (relating to PEP 597)

2021-01-24 Thread Chris Angelico
On Mon, Jan 25, 2021 at 3:55 AM Stephen J. Turnbull wrote: > > Chris Angelico writes: > > Right, but as long as there's only one system encoding, that's not > > our problem. If you're on a Greek system and you want to decode > > ISO-8859-9 text, you

[Python-ideas] Re: Add a couple of options to open()'s mode parameter to deal with common text encodings

2021-02-04 Thread Chris Angelico
On Fri, Feb 5, 2021 at 10:17 AM Ben Rudiak-Gould wrote: > 'L' could be argued to be unnecessary if there's a simple way to achieve the > same thing with the encoding parameter (which currently there isn't). > I'd rather work that one out the opposite way, having encoding="locale" (or encoding="s

[Python-ideas] Re: Add a couple of options to open()'s mode parameter to deal with common text encodings

2021-02-04 Thread Chris Angelico
On Fri, Feb 5, 2021 at 10:46 AM Ben Rudiak-Gould wrote: > > > > On Thu, Feb 4, 2021 at 3:29 PM Chris Angelico wrote: >> >> With "t", it takes/gives Unicode objects, but with "b" it uses bytes. > > > Sure, in Python 3, but not in Python 2, or

[Python-ideas] Re: Add lazy import statement to protect legitimate circular imports from failing

2021-02-05 Thread Chris Angelico
On Sat, Feb 6, 2021 at 12:51 AM Matt del Valle wrote: > > Unfortunately, [lazy importers are] fundamentally incapable of dealing with > 'from x import y' syntax, because this is always loaded eagerly by the Python > interpreter. > This is because it's fundamentally hard. > With the increasingl

[Python-ideas] Re: [Python-Dev] Re: What's up with assignment expression and tuples?

2021-02-05 Thread Chris Angelico
On Sat, Feb 6, 2021 at 6:08 AM Paul Sokolovsky wrote: > And looking back now, that seems like intentionally added accidental > gap in the language (https://en.wikipedia.org/wiki/Accidental_gap). > Similar to artificially limiting decorator syntax, which was already > un-limited. But seems, there'r

[Python-ideas] Re: [Python-Dev] Re: What's up with assignment expression and tuples?

2021-02-05 Thread Chris Angelico
On Sat, Feb 6, 2021 at 5:21 PM Random832 wrote: > > While we're on the subject of assignment expression limitations, I've > occasionally wanted to write something like > > try: > return a_dict[key] > except KeyError: > return (a_dict[key] := expression to construct value) That's what the

[Python-ideas] Re: [Python-Dev] Re: What's up with assignment expression and tuples?

2021-02-06 Thread Chris Angelico
On Sat, Feb 6, 2021 at 8:54 PM Paul Sokolovsky wrote: > > Hello, > > On Sat, 6 Feb 2021 17:26:00 +1100 > Chris Angelico wrote: > > > On Sat, Feb 6, 2021 at 5:21 PM Random832 > > wrote: > > > > > > While we're on the subject of assignment expr

[Python-ideas] Re: [Python-Dev] Re: What's up with assignment expression and tuples?

2021-02-07 Thread Chris Angelico
t; > > > try: > > > return a_dict[key] > > > except KeyError: > > > return (a_dict[key] := expression to construct value) > > On Sat, Feb 6, 2021, at 01:26, Chris Angelico wrote: > > > > That's what the __missing__ method is

[Python-ideas] Re: Conditional with statements

2021-02-07 Thread Chris Angelico
On Mon, Feb 8, 2021 at 6:04 PM David Mertz wrote: > > There's a reason that never in the last 3800 years since Proto-Sinaitic was > the first human script to approximately represent phonemes, has text EVER > been set at more than 80 characters as a widespread convention. > What did they use as

[Python-ideas] Re: class(obj) could return obj.__class__

2021-02-08 Thread Chris Angelico
On Tue, Feb 9, 2021 at 6:39 PM Hans Ginzel wrote: > > Please, consider class(obj) to return obj.__class__ > consistenly with dir(), vars(), repr(), str(),… > > >>> class c: pass > >>> o = c() > >>> o.__class__ > > >>> class(o) >File "", line 1 > class(o) > ^ > SyntaxError: inva

[Python-ideas] Re: Make filter() and map() return function if iterable is not passed

2021-02-11 Thread Chris Angelico
On Fri, Feb 12, 2021 at 1:01 AM Henry Harutyunyan wrote: > this is fine as long as you need to use that filter for once. But if you want > to reuse it you either need to create the iterator every time specifying the > filter function, or save the function in a var and create the filter with > t

[Python-ideas] Re: Alternate lambda syntax

2021-02-11 Thread Chris Angelico
On Fri, Feb 12, 2021 at 6:24 PM Paul Sokolovsky wrote: > ... And on the 2nd thought, that won't work. The reason it works in JS > is that it doesn't have tuples. In Python, "(a, b) => (1, 2)" means > "compare a tuple for greater-or-equal". Should be safe actually - "=>" is not a valid comparison

[Python-ideas] Re: Alternate lambda syntax

2021-02-12 Thread Chris Angelico
On Fri, Feb 12, 2021 at 7:57 PM Brendan Barnwell wrote: > > On 2021-02-11 03:24, J. Pic wrote: > > Hi all, > > > > Lambdas can be defined as such: > > > > w = lambda: [12] > > x = lambda y: len(y) > > > > I'd like to propose the following: > > > > w = (): [12] > > x = (y): len(y) > > > > Or even a

[Python-ideas] Re: Alternate lambda syntax

2021-02-13 Thread Chris Angelico
On Sun, Feb 14, 2021 at 9:33 AM Christopher Barker wrote: > > On Fri, Feb 12, 2021 at 1:00 AM Brendan Barnwell > wrote: >> >> >> The only thing that would be better than lambda is a less confusing >> keyword. > > > Is this really what this is all about? removing that word? I do think tha

[Python-ideas] Re: Arrow functions polyfill

2021-02-14 Thread Chris Angelico
On Sun, Feb 14, 2021 at 8:42 PM Steven D'Aprano wrote: > We should not choose the more confusing, error-prone solution out of > fear of being different. Python is already different from Javascript in > every regard: > Is it really? > - the basic execution model is different; Don't know what you

[Python-ideas] Re: Pattern Matching -- Removing Name Binding from Partial Matching

2021-02-14 Thread Chris Angelico
On Sun, Feb 14, 2021 at 11:26 PM Abdulla Al Kathiri wrote: > > My idea was that in the case of partial matching or full matching without > passing the guard, the binding names has some sort of self destruction and > return to the previous state. Using different variable names would resolve > th

[Python-ideas] Re: Arrow functions polyfill

2021-02-14 Thread Chris Angelico
On Mon, Feb 15, 2021 at 5:28 PM Steven D'Aprano wrote: > In the first case, => will forever be fighting against the much stronger > memory trace of >= (I think we can agree that comparisons will be more > common than anonymous functions). People's muscle-memory will type >= > when they want the ar

[Python-ideas] Re: Arrow functions polyfill

2021-02-17 Thread Chris Angelico
On Wed, Feb 17, 2021 at 9:11 PM Sven R. Kunze wrote: > Still think that "object()" should be writable since this seems like an > arbitrary restriction (+SimpleNamespace is no builtin and at least I > would use object() for fast PoCs or dirty hackery). But I guess there's > been discussion around t

[Python-ideas] Re: SimpleNamespace vs object

2021-02-17 Thread Chris Angelico
On Thu, Feb 18, 2021 at 1:53 AM Ricky Teachey wrote: > > From other thread: > > On Wed, Feb 17, 2021 at 5:19 AM Chris Angelico wrote: >> >> On Wed, Feb 17, 2021 at 9:11 PM Sven R. Kunze wrote: >> > Still think that "object()" should be writa

[Python-ideas] Re: SimpleNamespace vs object

2021-02-17 Thread Chris Angelico
On Thu, Feb 18, 2021 at 8:53 AM Brendan Barnwell wrote: > > On 2021-02-17 11:21, Chris Angelico wrote: > > Okay. Let's start bikeshedding. If SimpleNamespace were to become a > > builtin, what should its name be? It needs to be short (obviously), > > but not TOO short

[Python-ideas] Re: SimpleNamespace vs object

2021-02-17 Thread Chris Angelico
On Thu, Feb 18, 2021 at 1:00 PM Christopher Barker wrote: > > > On Wed, Feb 17, 2021 at 9:11 PM Sven R. Kunze wrote: >> >> >> Still think that "object()" should be writable since this seems like an >> >> arbitrary restriction > > ... >> >> But I guess there's been discussion around this already.

[Python-ideas] Re: SimpleNamespace vs object

2021-02-17 Thread Chris Angelico
On Thu, Feb 18, 2021 at 1:59 PM Ben Rudiak-Gould wrote: > > On Wed, Feb 17, 2021 at 6:12 PM Chris Angelico wrote: >> >> But if object() could get arbitrary attributes, then __slots__ wouldn't work. > > > It seems to me that all you'd have to do is add a li

[Python-ideas] Re: SimpleNamespace vs object

2021-02-17 Thread Chris Angelico
On Thu, Feb 18, 2021 at 5:25 PM Stephen J. Turnbull wrote: > > Chris Angelico writes: > > On Thu, Feb 18, 2021 at 1:53 AM Ricky Teachey wrote: > > > > I would personally love for SimpleNamespace to get a shorter name > > > and become a built-in. > >

[Python-ideas] Re: SimpleNamespace vs object

2021-02-18 Thread Chris Angelico
On Thu, Feb 18, 2021 at 9:57 PM Steven D'Aprano wrote: > > On Thu, Feb 18, 2021 at 06:21:19AM +1100, Chris Angelico wrote: > > > > I would personally love for SimpleNamespace to get a shorter name and > > > become a built-in. > > > > > > > Ok

[Python-ideas] Re: SimpleNamespace vs object

2021-02-21 Thread Chris Angelico
On Mon, Feb 22, 2021 at 1:11 PM Brendan Barnwell wrote: > > On 2021-02-17 11:21, Chris Angelico wrote: > > Okay. Let's start bikeshedding. If SimpleNamespace were to become a > > builtin, what should its name be? It needs to be short (obviously), > > but not TOO short

[Python-ideas] Re: SimpleNamespace vs object

2021-02-21 Thread Chris Angelico
On Mon, Feb 22, 2021 at 6:08 PM Paul Sokolovsky wrote: > One explanation why SimpleNamespace is not in "collections" is because > ... it's not a collection. One of the basic traits of any collection is > that it "contains" things, and thus it can be directly iterated over to > traverse those conte

[Python-ideas] Re: SimpleNamespace vs object

2021-02-21 Thread Chris Angelico
On Mon, Feb 22, 2021 at 6:27 PM Paul Sokolovsky wrote: > > Hello, > > On Mon, 22 Feb 2021 15:51:37 +1100 > Chris Angelico wrote: > > [] > > > In my mind, the current front-runners are: > > > > * namespace > > > * ns > > * thing > >

[Python-ideas] Re: [Python-Dev] Re: Inadequate error reporting during function call setup stage

2021-02-22 Thread Chris Angelico
On Tue, Feb 23, 2021 at 10:10 AM Stestagg wrote: > So Python has identified that a function 'do_thing' is being called > incorrectly, but /where/ is do_thing defined? This problem gets much harder > if there are multiple definitions of 'do_thing' in the codebase, as alluded > to in the origin

[Python-ideas] Re: Deprecate/change the behaviour of ~bool

2021-02-22 Thread Chris Angelico
On Tue, Feb 23, 2021 at 12:14 PM Soni L. wrote: > > Currently ~False is -1 and ~True is -2. Would be nicer if ~bool was the > same as not bool. Hopefully nobody actually relies on this but > nevertheless, it would be a backwards-incompatible change so the whole > deprecation warnings and whatnot w

[Python-ideas] Re: [Python-Dev] Re: Inadequate error reporting during function call setup stage

2021-02-22 Thread Chris Angelico
On Tue, Feb 23, 2021 at 5:33 PM Paul Sokolovsky wrote: > Because that's the right analogy of what happens with a function - in > the function "prolog", there's a series of assignments: > "formal_paramX = actual_argX". Conceptually, those *are* in the > function context (or you would not be able to

[Python-ideas] Re: Arrow functions polyfill

2021-02-23 Thread Chris Angelico
On Wed, Feb 24, 2021 at 4:13 AM Richard Damon wrote: > As far as between % or .format(), I think the documentation is fairly > clear that the % method is 'old' and if not 'formally' deprecated, is no > longer considered the 'obvious' way to do it (even if some people will > still do it that way fo

[Python-ideas] Re: [Python-Dev] Re: Inadequate error reporting during function call setup stage

2021-02-23 Thread Chris Angelico
On Wed, Feb 24, 2021 at 4:59 AM Paul Sokolovsky wrote: > Without getting to the root cause, there will be only workarounds of > different level of ugliness. For example, any reasonable JIT would > implement proper semantics - param checking *inside* functions (just > like the C code does now). Wh

[Python-ideas] Re: Deprecate/change the behaviour of ~bool

2021-02-24 Thread Chris Angelico
On Thu, Feb 25, 2021 at 4:28 AM Barry Scott wrote: > > > > On 23 Feb 2021, at 22:10, Steven D'Aprano wrote: > > There are exactly 2**4 = 16 boolean operators of two variables. Python > only supports two: `and` and `or`. Plus a single unary operator `not` > (out of four possible unary operators).

[Python-ideas] Re: Deprecate/change the behaviour of ~bool

2021-02-24 Thread Chris Angelico
On Thu, Feb 25, 2021 at 5:05 AM Richard Damon wrote: > > On 2/24/21 12:34 PM, Chris Angelico wrote: > > On Thu, Feb 25, 2021 at 4:28 AM Barry Scott wrote: > >> > >> > >> On 23 Feb 2021, at 22:10, Steven D'Aprano wrote: > >> > >>

[Python-ideas] Re: Integer concatenation to byte string

2021-03-02 Thread Chris Angelico
On Tue, Mar 2, 2021 at 5:03 AM wrote: > > Currently, the only way to concatenate an integer to a bytes object is by > converting the integer to bytes with a function call before concatenating. > And there is no way to make a mutable bytes object without a function call. > > I propose an array-ty

[Python-ideas] Re: Add an __exclude_all__ complement to __all__

2021-03-03 Thread Chris Angelico
On Thu, Mar 4, 2021 at 7:57 AM George Harding wrote: > I think it might be cleaner to also allow an __exclude_all__ variable which > will exclude some members from being imported. > > If both were defined I would imagine __exclude_all__ being applied second. You could implement that yourself: _

[Python-ideas] Re: Add an __exclude_all__ complement to __all__

2021-03-03 Thread Chris Angelico
On Thu, Mar 4, 2021 at 9:57 AM Brendan Barnwell wrote: > > On 2021-03-03 14:06, Chris Angelico wrote: > > You could implement that yourself: > > > > __all__ = {n for n in globals() if not n.startswith("_")} - __exclude_all__ > > Sort of. That wil

[Python-ideas] Re: Add an __exclude_all__ complement to __all__

2021-03-05 Thread Chris Angelico
On Sat, Mar 6, 2021 at 9:47 AM Ethan Furman wrote: > > On 3/5/21 12:41 PM, Caleb Donovick wrote: > > > > > __all__ = (Class.__name__, func.__name__, ...) > > > > > > So I have to put it at the end of the module. I do this because if I > > > change the class or function name and I forget to cha

[Python-ideas] Re: typing.Maybe type annotation

2021-03-09 Thread Chris Angelico
On Tue, Mar 9, 2021 at 9:15 PM Ben Avrahami wrote: > raw_value : str = input() > # suppose we want to convert raw_value to an int, but leave it as an > arbitrary falsish value if raw_value is an empty string, we can now do this > in the following ways: > # annotate value as a union (type hint is

[Python-ideas] Re: Add lazy import statement to protect legitimate circular imports from failing

2021-03-11 Thread Chris Angelico
On Fri, Mar 12, 2021 at 8:10 AM Matt del Valle wrote: > > I don't really have any knowledge of the Python interpreter's internals so > I'm afraid any suggestions of mine on implementation details are going to be > shots in the dark. > > That said, my intuition tells me that something similar to

[Python-ideas] Re: Add lazy import statement to protect legitimate circular imports from failing

2021-03-11 Thread Chris Angelico
On Fri, Mar 12, 2021 at 8:24 AM Paul Bryan wrote: > > Probably one of countless examples of performing lazy imports, for precisely > the reason of preventing circular imports: > https://github.com/fondat/fondat-core/blob/main/fondat/lazy.py > In the case of circular imports, at what point should

[Python-ideas] Re: allow initial comma

2021-03-12 Thread Chris Angelico
On Sat, Mar 13, 2021 at 3:28 AM <[email protected]> wrote: > For exmaple, if I have a multiline list like this: > > x = [ > 1, > 2 > ] > > and add a new element to the end, then I end up with the diff including > the 2 even though I didn't change the

[Python-ideas] Re: Implicit line continuation for method chaining

2021-03-12 Thread Chris Angelico
On Sat, Mar 13, 2021 at 1:46 PM Peter Ludemann wrote: > It's not clear to me what surprising behaviors there would be. Javascript > seems to do OK with optional semicolons - presumably its algorithm is similar > to what BCPL used. (Or perhaps the surprising behaviors are trivial compared > to t

  1   2   3   4   5   6   7   8   9   10   >