Typescript und Typisierung 11. Januar 2024, Jochen In der letzten Folge🎙️ ging es ja um Tests. Diesmal geht es um eine weitere Möglichkeit, formal zu spezifizieren, wie sich Software verhalten soll, um dann automatisch überprüfen zu können, ob sich die Implementierung noch in Übereinstimmung mit der Prophezeiung befindet: Typisierung.Dazu blicken wir diesmal ein wenig über den Tellerrand von Python und sprechen dafür mit Stefan, einem Experten für Typescript 📘. Natürlich sind auch Dominik, Johannes und Jochen wieder mit von der Partie. 🎧 Hört mal rein, wenn ihr mehr über die Rolle von Typisierung in der Softwareentwicklung mit Python 🐍 erfahren wollt. Shownotes | Kommentare | Permalink ShownotesUnsere E-Mail für Fragen, Anregungen & Kommentare: hallo@python-podcast.deNewsPython 3.12.1 ReleaseRuby 3.3.0 ReleasedRewriting the Ruby parser | Using a recursive descent parser like PEG in PythonPerformance improvements / yjit - gegenüber 3.2.0 etwa 12%Python 3.13 gets a JIT / Episode 1 - Core Sprint in Brno & Python 3.13 / copy-and-patch JITPydantic Upgrade auf v2 nicht problemlos: Consider releasing Pydantic V2 under a different python package nameTyping Quadrants aus Fluent Python TypingFastAPI async? -> uvloopPyO3 | Rust bindings für PythonBücher von StefanTypeScript in 50 Lessons / Rob Draper | Schön gemachtes Buch - sehr beliebt bei den Machern dieses Podcasts 😄TypeScript Cookbook | 2023 erschienen - noch nicht gelesen, klingt aber gut!Beispiele aus der Praxis (bzgl "sind häßlich")CNLabelContactRelationYoungerCousinMothersSiblingsDaughterOrFathersSistersDaughter | Apple, reenacting "Design is my passion" 😳_Application.Run Method | Funktion mit Arg1-30 🫣HasThisTypePatternTriedToSneakInSomeGenericOrParameterizedTypePatternMatchingStuffAnywhereVisitorfinally, a monitor that will fit the entire name of my Java classesFast inverse square root in programming languages | Bit fiddling durch TypkonversionSafer, Not Later | Glyphs take on "move fast and break things"Ada als Beispiel für "Design by contract" / IdrisType Checker für Pythonmypy (Dropbox)pytype (Google)pyright (Microsoft) / pylancepyre (Facebook)Ein proprietärer von JetBrains...Generics Considered Harmful | Von einem der Autoren von "The Java Programming Language" und von rogue, fortune und ctags: "Enum is actually a generic class defined as Enum<T extends Enum<T>>. This circular definition is probably the most confounding generic type definition you are likely to encounter. We're assured by the type theorists that this is quite valid and significant, and that we should simply not think about it too much, for which we are grateful."PEP 544 – Protocols: Structural subtyping (static duck typing)typeshed | Annotation für die standard library und diverse andereoverload?@functools.singledispatchPython Type Hints - How to Use @overloadCo / Contra / InvarianzCovariance and Contravariance of Hosts and VisitorsWhat are covariance and contravariance?Covariance and contravariance in PEP 484flow type annotations / optional types für javascriptZod - TypeScript-first schema validation with static type inferencePicksDominikLLM - Ein Kommandozeilenclient zur Interaktion mit LLMs, via remote apis oder lokalJochenThe Little Typer | An introduction to dependent types, demonstrating the most beautiful aspects, one step at a timeDokku - An open source PAAS alternative to HerokuJohannesFly.io / Django Beats (fly.io) / VercelWhat Colour are your bits?zdf recommendation engineStefanWhat Color is Your Function? Shownotes | Kommentare | Permalink