Today: - Took a look at secondary constructors PR,...
# python-contributors
s
Today: • Took a look at secondary constructors PR, left my comments. • Talked to Ivan Kylchik [JB] about new infra in JS (https://github.com/JetBrains/kotlin/commit/0db2ef9a71709bdbe8ef99c99194d83749ce14a7). • Bumped into some problems again when trying to use old infra with JUnit5. • Started to implement new infra but it seems there is much work, decided to shelve this task for some time because about three weeks passed but not much results and it's starting to be tedious. • Switched to implementing IrTry, nothing working yet. Next time: • IrTry.
K 1
p
I approached implementing IrTry some time ago and when implementing catching, I bumped onto not implemented class hierarchies, constructors, calling constructors of base classes and so on. That's why I'm working on the constructors stuff - we reached a common checkpoint 😆
One more thing: in Python each raised exception must be a subclass of
Exception
Python class. We'll have to modify the IR of all exception classes to do it, sounds like a good scope for a new lowering.
If you also figure out that my currently opened PR stands in the way of implementing try-catch, could you help me with it? I have harder time at work (changing teams), no possibility to devote my 10% to this project :( I think I'll be able to come back in about a month, but not 100% sure if the new team will let me do it. In theory yes because 10% projects are company-wide policy :D For the next month, I'll be just reading PRs and here on Slack.
s
Sure, no problem! I will try to continue your PR with secondary constructors if I bump into it. Wow, thanks, I haven't expected there are so much problems with try-catch. For now I bump into statement-to-expression conversion stuff that we discussed some months ago, so maybe it's time to try to solve this: https://kotlinlang.slack.com/archives/C0289CS37AS/p1627058974024400
🦜 1
Well, yep, Object_create indeed blocks introducing try-catch:
Copy code
Exception_init__Create__0
    tmp = Exception_init__Init__0(message, Object_create())
NameError: name 'Object_create' is not defined
So I guess I'm continuing your PR now
👍 1