We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

Static type-checking is dead, long live static type-checking in Python!

00:00

Formale Metadaten

Titel
Static type-checking is dead, long live static type-checking in Python!
Serientitel
Teil
120
Anzahl der Teile
Autor
Lizenz
CC-Namensnennung - keine kommerzielle Nutzung - Weitergabe unter gleichen Bedingungen 3.0 Unported:
Sie dürfen das Werk bzw. den Inhalt zu jedem legalen und nicht-kommerziellen Zweck nutzen, verändern und in unveränderter oder veränderter Form vervielfältigen, verbreiten und öffentlich zugänglich machen, sofern Sie den Namen des Autors/Rechteinhabers in der von ihm festgelegten Weise nennen und das Werk bzw. diesen Inhalt auch in veränderter Form nur unter den Bedingungen dieser Lizenz weitergeben
Identifikatoren
Herausgeber
Erscheinungsjahr
Sprache
ProduktionsortBilbao, Euskadi, Spain

Inhaltliche Metadaten

Fachgebiet
Genre
Abstract
Jean-Philippe Caissy - Static type-checking is dead, long live static type-checking in Python! A few months ago, Guido unfolded PEP 484, which was highlighted at PyCon 2015 as a keynote presentation. This proposal would introduce type hints for Python 3.5. While the debate is still roaring and without taking a side, I believe that there is much to learn from static type-checking systems. The purpose of this talk is to introduce ways that could be used to fully take over the amazing power that comes with static types, inside a dynamic type language such as Python. The talk will go over what exactly a static type system is, and what kind of problem it tries to solve. We will also review Guido's proposal of type hinting, and what it could mean to you. Finally, I will present a few libraries that are available, such as Hypothesis or various QuickCheck-inspired library that tries to build more robust tests, how they achieve it and their limitations. Throughout the talk, a lot of examples will used to fully illustrate the ideas being explained. At the end of this talk, you should have a better understanding of the wonderful world of type systems, and what it really means to you. It should help you decide wether using type hints will be helpful to you and also if an external library trying to fuzz your tests has its place inside your project
Schlagwörter
RoboterTypprüfungHydrostatikE-LearningSoftwareentwicklerGruppenoperationTwitter <Softwareplattform>TypentheorieProjektive EbeneSelbst organisierendes SystemPhysikalische TheorieBeobachtungsstudieComputeranimation
TypentheorieSystemprogrammierungTypsystemSchlussregelKategorie <Mathematik>DatentypKonstruktor <Informatik>ProgrammVariableComputerModul <Datentyp>Funktion <Mathematik>Regulärer Ausdruck <Textverarbeitung>FreewareFolge <Mathematik>BeobachtungsstudiePhysikalische TheorieTypprüfungFormale SpracheFundamentalsatz der AlgebraPhysikalische TheorieSystemprogrammierungTypentheorieProgrammierspracheIdentifizierbarkeitSchnittmengeEndliche ModelltheorieFlächentheorieFolge <Mathematik>ProgrammierungKonstruktor <Informatik>BitArithmetisches MittelSchlussregelVektorpotenzialFunktionale ProgrammierspracheArithmetischer AusdruckKategorie <Mathematik>MathematikFundamentalsatz der AlgebraLaufzeitfehlerVariableMultiplikationsoperatorProgrammfehlerBoolesche AlgebraTypsichere SpracheGanze ZahlBimodulInformatikInstantiierungVorlesung/KonferenzComputeranimation
QuellcodeSystemprogrammierungTypentheorieFormale SpracheFolge <Mathematik>BitArithmetisches MittelVorlesung/Konferenz
TypentheorieFehlermeldungTypprüfungOperations ResearchROM <Informatik>Mathematische LogikSystemprogrammierungTypentheorieCASE <Informatik>ProgrammierspracheEinflussgrößeInstantiierungDynamisches SystemGanze ZahlMailing-ListeNichtlinearer OperatorPufferüberlaufPuffer <Netzplantechnik>Güte der AnpassungDifferenteHalbleiterspeicherFehlermeldungProzess <Informatik>Typsichere SpracheFormale SemantikZeichenketteMereologieHydrostatikNebenbedingungSoftwareschwachstelleLogische ProgrammierspracheGewicht <Ausgleichsrechnung>Rechter WinkelFormale SpracheGruppenoperationVorlesung/KonferenzComputeranimation
ProgrammierspracheVollständiger VerbandTypsichere SpracheInstantiierungTaskFormale SpracheNichtlinearer OperatorGüte der AnpassungMAPVorlesung/Konferenz
TypprüfungHydrostatikQuellcodeMAPFormale GrammatikProgrammverifikationBildschirmmaskeProgrammBereichsschätzungDatentypSymbolische DynamikCodeInterpretiererProgrammierungMeta-TagÜbersetzer <Informatik>SkriptspracheAppletAlgebraisch abgeschlossener KörperZahlenbereichFormale SpracheSoftwaretestProgrammierspracheTermIterationVersionsverwaltungAppletZahlenbereichTypentheorieCompilerSystemprogrammierungFormale SprachePuffer <Netzplantechnik>SoftwareentwicklerMereologieTemplateProzess <Informatik>InstantiierungComputersicherheitGeschlecht <Mathematik>MultiplikationsoperatorQuellcodeFormale GrammatikHydrostatikVariableBildschirmmaskeProgrammierungLaufzeitfehlerProjektive EbeneTypsichere SpracheSchaltnetzObjektorientierte ProgrammierspracheProgrammfehlerDynamisches SystemZentrische StreckungSoundverarbeitungBrowserKernel <Informatik>Service providerLogischer SchlussWeb logCodeBereichsschätzungPhasenumwandlungsinc-FunktionDreiecksfreier GraphSoftwaretestBeweistheorieStatistikMAPSchlüsselverwaltungInverser LimesSampler <Musikinstrument>Funktionale ProgrammierspracheInterpretiererProgrammverifikationQuarkmodellAlgebraisch abgeschlossener KörperMetaprogrammierungVorlesung/Konferenz
ProgrammfehlerDatentypFibonacci-FolgeSpannweite <Stochastik>ZahlenbereichSoftwaretestSystemprogrammierungProgrammfehlerHypermediaZahlenbereichFormale SpracheDruckverlaufTypentheorieMereologieZweiInstantiierungFibonacci-FolgeSchnittmengeGanze FunktionVorlesung/KonferenzComputeranimation
Ganze FunktionGanze ZahlSchnittmengeRouterCASE <Informatik>Objektorientierte ProgrammierspracheSchnittmengeGanze ZahlGanze FunktionEndliche ModelltheorieTypentheorieSoftwaretestInstantiierungComputeranimation
SchnittmengeGanze ZahlGanze FunktionAggregatzustandDatentypTypentheorieFunktion <Mathematik>ZeichenketteCodeVollständigkeitParametersystemVariableMathematikKlasse <Mathematik>Demo <Programm>Wurzel <Mathematik>Innerer PunktStrom <Mathematik>Elektronischer ProgrammführerPauli-PrinzipFehlermeldungBimodulProgrammierumgebungDesintegration <Mathematik>PASS <Programm>Lokales MinimumMailing-ListeUniformer RaumHydrostatikÜbersetzer <Informatik>TypsystemProgrammFokalpunktGeradeCodierungAbstrakter SyntaxbaumFehlererkennungMultiplikationsoperatorTypentheorieSystemprogrammierungMailing-ListeZeichenketteAuswahlaxiomSchnittmengeCASE <Informatik>SchätzfunktionLeistung <Physik>Befehl <Informatik>AdditionGanze FunktionGanze ZahlFunktionale Programmiersprachesinc-FunktionEndliche ModelltheorieMetadatenFormale SpracheInstantiierungDatenfeldElektronische UnterschriftQuellcodeKonfiguration <Informatik>AggregatzustandFehlermeldungProgrammierungStrömungsrichtungAtomarität <Informatik>Sigma-AlgebraParametersystemSampler <Musikinstrument>Figurierte ZahlPunktspektrumTypsichere SpracheBildschirmmaskeErweiterte Realität <Informatik>VererbungshierarchieElektronische PublikationTwitter <Softwareplattform>VollständigkeitInformationVerzeichnisdienstOrtsoperatorProgrammfehlerHydrostatikKlasse <Mathematik>Arithmetisches MittelProzess <Informatik>RückkopplungVariableRichtungDifferenteGüte der AnpassungPauli-PrinzipPi <Zahl>CodeAutorisierungGenerizitätElektronischer ProgrammführerTermEindringerkennungBimodulGamecontrollerParserProgrammbibliothekComputeranimation
Kartesische KoordinatenDifferentePauli-PrinzipTypentheorieFramework <Informatik>BenutzerbeteiligungVorlesung/Konferenz
Formale SpracheDatentypAggregatzustandAutorisierungFormale SpracheInnerer PunktTypentheorieZweiVorlesung/KonferenzComputeranimation
Pauli-PrinzipDatentypSchnittmengeGanze ZahlGanze FunktionStatistische HypotheseKategorie <Mathematik>SoftwaretestProgrammbibliothekRechenwerkOperations ResearchTestdatenData DictionaryDatenkompressionVerband <Mathematik>Prädikatenlogik erster StufeSystemprogrammierungTypentheorieTypprüfungHydrostatikLeistung <Physik>SystemprogrammierungAggregatzustandUmwandlungsenthalpieSchnittmengeWeb SiteHochdruckRechenwerkStatistische HypotheseFigurierte ZahlRechter WinkelWiederherstellung <Informatik>BeweistheorieKomponententestGanze ZahlLeistung <Physik>NeuroinformatikProgrammbibliothekSchaltnetzMailing-ListeKategorie <Mathematik>Nichtlinearer OperatorProgrammfehlerDreiecksfreier GraphVerzerrungstensorHydrostatikDatenkompressionSoftwareMultiplikationsoperatorProgrammierungInstantiierungSoftwaretestZeichenketteResultanteBasis <Mathematik>DifferenteTermTypentheorieSoftwareentwicklerKreisflächeEntscheidungstheorieAnalysisHypercubeHilfesystemGanze FunktionGenerator <Informatik>RandomisierungNormalvektorPauli-PrinzipBenutzerfreundlichkeitVorlesung/KonferenzComputeranimation
FreewareMultiplikationsoperatorMinimalgradTypentheorieHydrostatikVorlesung/KonferenzXML
TypentheorieAutomatische DifferentiationTopologieWort <Informatik>CodeVorlesung/Konferenz
Vorlesung/Konferenz
Transkript: English(automatisch erzeugt)