Vor ein paar Jahren, nachdem ich zwei Entwurfssprachen durchgespielt hatte, begann ich mit meinem persönlichen Projekt-Höhepunkt. MSN2 war (und ist) meiner Meinung nach eine Scheinprogrammiersprache, vor allem aufgrund ihrer unkonventionellen, deoptimierten Interpretationsmethoden, die zu Problemen mit der Sprachintegrität führen können.
Aber andererseits frage ich mich, warum ich über die Jahre immer wieder zu diesem Projekt zurückkomme? Warum hatte ich es nicht zu den anderen Entwürfen geworfen, aus Angst vor Peinlichkeiten für die Entwickler? Ich habe es behalten, weil ich meine Erwartungen an eine Programmiersprache mit einem einzigen Mitwirkenden bei Weitem übertroffen habe, auch wenn ich immer noch meilenweit von der Vision entfernt bin, die ich habe.
Zu Beginn der Entwicklung gab es keine wirkliche Absicht, es der Öffentlichkeit zugänglich zu machen, da es sich lediglich um eine Lernübung handelte und es daher keinen wirklichen Grund gab, eine neue Sprache einzuführen. Unabhängig davon bieten uns die Vorteile des Aufbaus einer Programmiersprache auf Python als funktionales Werkzeug und Hauptquelle meiner Python-Studien nicht nur die vollständigen Fähigkeiten von Python selbst, sondern auch neue Funktionen für:
Aufgrund der einfachen Implementierung neuer Funktionen könnte es als Grundlage für eine gemeinschaftsorientiertere Sprache dienen, die durch Community-Feedback und Beiträge kontinuierlich weiterentwickelt wird. Mit diesen aktuellen und zukünftigen Beiträgen schaffen wir die Möglichkeit:
und wie viel mehr...?
Man kann leicht sagen, dass die Sprache sehr leistungsfähig ist, und in bestimmten Situationen würde ich behaupten, dass sie mit weniger Code leistungsfähiger ist. Mit der Veröffentlichung von Updates macht es auch für Entwickler immer mehr Spaß, es zu nutzen. Leider ist es nicht so einfach zu sagen, dass die Verwendung der Sprache ein Kinderspiel ist. Ich habe eine MSN2-Syntaxhervorhebungserweiterung für VSCode, eine grundlegende Dokumentation sowie viele Tutorials und Codebeispiele veröffentlicht. Ohne die automatische Vervollständigung von Schlüsselwörtern oder Token und das Verständnis der Auswirkungen beim Schreiben von Code auf bestimmte Arten wird es jedoch schwierig. Diese Probleme werden auf der Registerkarte „Probleme“ des MSN2-Repositorys behoben.
(Keines dieser Beispiele enthält zusätzlichen Code außerhalb des Rahmens)
Vereinfachung einfacher Vorgänge
API-Endpunkt starten und abfragen
Erstellen eines personalisierten Makros
Ausführen von Inline-JavaScript (auch mit Java und C möglich)
Das oben Gesagte hört sich großartig an! Ich bin voll und ganz darauf bedacht, die Schritte zu unternehmen, um auf dem aufzubauen, was ich geschaffen habe. Aber so sehr ich mir auch wünsche, dass es in einer so großen, übermäßig komplexen und wartungsintensiven Codebasis keine Probleme gibt, gibt es XD.
Ab MSN2 2.0.403 gibt es mehrere behebbare Integritätsprobleme, die möglicherweise zur Laufzeit zu falschen Ergebnissen führen. Glücklicherweise sind Integritätsprobleme vorübergehend, aber es ist wichtig, dass sie schnell behoben werden.
Mit Python als Backend wird Geschwindigkeit zu einem brutalen Nachteil, und das ist Geschwindigkeit. Geschwindigkeit wird immer ein Problem mit MSN2 sein, und leider können wir nur versuchen, die Basissprache auf eine Geschwindigkeit zu bringen, die der von Python nahe kommt.
Was können wir also tun?
Dieses Projekt war eine ehrgeizige Reise. Was als Lernübung begann, entwickelte sich schnell zu einem Spielplatz für die Erforschung von Sprachdesign und neuen, kreativen Proof of Concepts. MSN2 hat als Lernerfahrung gedient, die meine Programmierfähigkeiten ständig auf die Probe stellt. Es ist alles andere als akzeptabel und weit entfernt von der Perfektion, aber gerade das macht es spannend – es steckt voller Möglichkeiten, zu wachsen und sich zu verbessern.
Während der Großteil der Sprache noch nicht vollständig produktionsbereit ist und die Tests noch keine 100-prozentige Abdeckung erreicht haben, repräsentiert MSN2 das Potenzial unkonventionellen Denkens und die Freiheit, ohne den Druck der Perfektion zu experimentieren. Ob es zu einem nützlichen Werkzeug in Projekten wird oder ein persönliches Unterfangen bleibt, liegt bei mir und der Community, aber seine Zukunft hängt von kontinuierlicher Entwicklung, Feedback und Verfeinerung ab. Im Moment sehe ich es als Trittstein, mit Ecken und Kanten und vielen Rissen, aber immer noch solide genug, um darauf zu stehen.
nützliche Links
MSN2 auf GitHub
MSN2[2.0.401]-Dokumentation
meine Website / mein Portfolio
Das Banner dieses Beitrags ist unformatierter, aber ausführbarer MSN2-Code, der Inline-Mischungen aus JavaScript, Java, C enthält, die alle mit einem API-Endpunkt interagieren, der in derselben Zeile angesiedelt ist.
Das obige ist der detaillierte Inhalt vonMSNAEine experimentelle Programmiersprache für den mutigen Entwickler. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!