Der erste Typchecker für Babys: Ein 350-zeiliges Python-Abenteuer

2025-09-06
Der erste Typchecker für Babys: Ein 350-zeiliges Python-Abenteuer

Dieser Artikel beschreibt die Erstellung eines einfachen Typcheckers für Python in nur 350 Zeilen Code. Der Autor führt durch den Prozess, von der Analyse des Python-Codes und dem Auffinden von Typannotationen bis hin zur Überprüfung der Typkompatibilität, der Behandlung von Funktionsaufrufen und Rückgabetypen, der Unterstützung von Listen, Dictionaries und Unionstypen sowie der Implementierung von Typschrumpfung. Obwohl der resultierende Typchecker begrenzt ist, erkennt er erfolgreich mehrere Typfehler in realem Python-Code und bietet ein klares und zugängliches Beispiel dafür, wie Typchecker funktionieren.

Mehr lesen
Entwicklung Typchecker

Die überraschend schnelle Methode zum Auffinden von Vokalen in Zeichenketten

2025-06-13
Die überraschend schnelle Methode zum Auffinden von Vokalen in Zeichenketten

Dieser Artikel vergleicht elf verschiedene Methoden zum Erkennen von Vokalen in Zeichenketten, von einfachen Schleifen bis hin zu regulären Ausdrücken und sogar einem Ansatz, der auf Primzahlen basiert. Überraschenderweise übertreffen reguläre Ausdrücke durchweg andere Methoden, sogar einfache Schleifen, bei verschiedenen Zeichenkettenlängen. Ein tiefer Einblick in den Python-Bytecode und die CPython-Regex-Engine offenbart den Grund für die Geschwindigkeit von regulären Ausdrücken. Der Autor kommt zu dem Schluss, dass, obwohl reguläre Ausdrücke in den meisten Fällen am schnellsten sind, einfachere Methoden ausreichen, es sei denn, man arbeitet mit Millionen von Zeichenketten.

Mehr lesen
Entwicklung

Teure Geocoding-APIs adé: Eine leichte JavaScript-Bibliothek zur Suche nach Bundesstaaten/Provinzen

2025-06-04
Teure Geocoding-APIs adé: Eine leichte JavaScript-Bibliothek zur Suche nach Bundesstaaten/Provinzen

Ein Startup gab jährlich Tausende von Dollar für die Google Maps API für Reverse Geocoding aus, nur um die Bundesstaaten der Benutzer zu bestimmen. Weil dies als verschwenderisch empfunden wurde, erstellte der Autor `coord2state`, eine leichte JavaScript-Bibliothek, die US-Bundesstaaten direkt aus Breiten-/Längengradkoordinaten identifiziert. Unter Verwendung von Grenzdaten des US Census Bureau und dem Douglas-Peucker-Algorithmus zur Vereinfachung erreicht sie eine Genauigkeit von 99,9 % bei einer Toleranz von 0,01° und wiegt nur 260 KB. Die Bibliothek ist Open Source auf GitHub und NPM und bietet Entwicklern eine kostengünstige Alternative.

Mehr lesen
Entwicklung Reverse Geocoding

Eine 25-jährige Reise in KI/ML: Von Spielen zur Programmsynthese

2025-01-02
Eine 25-jährige Reise in KI/ML: Von Spielen zur Programmsynthese

Dieser Beitrag beschreibt eine 25-jährige Reise in KI/ML. Er beginnt mit einfachen Spielen in VB6 und entwickelt sich weiter zur Verwendung von Zustandsautomaten und höherwertigen Funktionen zur Verbesserung der Spieldynamik. Das Studium umfasste Logik erster Ordnung, Support-Vektor-Maschinen und neuronale Netze, die auf Projekte wie Videotelefonie mit geringer Bandbreite und die Analyse von Protokolldaten von Code-Editoren angewendet wurden. Als Professor konzentrierte sich der Autor auf intelligente Entwicklertools und erforschte prädiktive Modelle zur Identifizierung und Korrektur von Missverständnissen bei Programmierern. Seine Arbeit im Programmsyntheseteam von Microsoft umfasste LLMs zur Verbesserung der Code-Unterstützung. Der Autor betont die Bedeutung einer durchdachten KI-Anwendung, wobei klare Benutzerprobleme im Vordergrund stehen und eine übermäßige Abhängigkeit von LLMs vermieden wird.

Mehr lesen
KI