<div dir="ltr"><br><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">"I think python's non blocking I/O is far from being something useful for developers till non-async code can invoke async code transparently. Duplicating all code/libs when you realize that something not fits asyncio is not a solution and even less a pythonic solution."</blockquote><div><br></div><div>About this. I think I absolutely understand the difficulties, but in reality the "problem" is broader.</div><div>Code is always written using certain paradigms. And Python allows a lot of these, so depending on the background, use case and interests of the author, he decides what paradigm to use. These days, we have functional code, reactive code, imperative, declarative, object oriented, event-driven, etc...</div><div>All paradigms have different answers to questions like "Where do we keep our state?" (the variables), "Where do we do our I/O?", "how do we reuse our code?", "how do we write our logic?".</div><div><br></div><div>Not everything is compatible. Mixing two styles can sometimes be very ugly and confusing. I guess the question is more about finding the right glue to put things together, without forcing code to fit into another paradigm.</div><div><br></div><div><br></div><div><br></div></div></div></div>