Mark Shannon
Mark Shannon
> I tried to do that but it severely restricts uses of `PyStackRef_FromPyObjectSteal` and requires a lot more refactoring. That suggests to me that the current usage isn't correct, so...
> @markshannon I removed the type annotation because I noticed it's unsafe for `_PyInterpreterFrame` to be passed to be passed to these steal/dup/frompyobject functions. So don't tag them.
> Yeah but the code generator still emits a cast because it thinks it's trying to cast from PyObject, which the C compiler breaks and doesn't like. Then fix the...
I really think we should implement `PyEval_GetLocals` as described in the PEP. https://peps.python.org/pep-0667/#id3 seems quite clear and unambiguous. It seems that all the complication stems from wanting to return a...
Adding members to a class is fine as long as it is mutable, and making a class immutable is also fine. Therefore the process of making an immutable class would...
Here is a sketch. There are four parts of a class that must be defined when the class is created. * The metaclass * The layout of objects of that...
> I think the MRO should always be computed from the bases, so this should take bases rather than MRO. How the MRO is computed from the bases is up...
> How would `__bases__` be derived from the MRO? There is no unique list of bases for any MRO, but you can compute a minimal one. Why do you need...
The MRO is determined by the metaclass. If the API accepts bases, then we need to call the metaclass to determine the MRO, which complicates things as the VM needs...
Isn't an "internal API" a contradiction? An unstable API doesn't seem much use either. The way to move the portability/performance slider, is not by having layers of API, but by...