Git in Awk implementiert: Aho
(github.com/djanderson)-
AhoA Git, in AWK implementiert
- AWK kann mehr als nur einfache Einzeiler-Skripte.
- Dieses Projekt ist ein Spielzeugprojekt, um die interne Funktionsweise von Git und neue Funktionen von GNU AWK zu erforschen.
- Es ist ausdrücklich dafür gedacht, außerhalb von Unterhaltungs- und Bildungszwecken nicht nützlich zu sein.
-
Erste Schritte
- Erforderlich ist
gawkab Version 5.0; für die zlib-Komprimierung wirdpigzverwendet. - Die übrigen Funktionen stammen aus den von GNU coreutils bereitgestellten Werkzeugen.
- Es läuft wahrscheinlich auf den meisten Linux-Systemen, aber nicht auf BSD oder Mac.
- Es werden Beispiele für Befehle wie Initialisierung, Dateien hinzufügen und die Dateistruktur prüfen bereitgestellt.
- Erforderlich ist
-
Mitwirken
- Jede Unterstützung, die hilft, das Verständnis von AWK oder Git zu verbessern, ist willkommen.
-
To-do-Liste
- Geplant ist die Implementierung von Funktionen wie
init,add/rm,status,commit,reset,branch,switch,config (nur Lesen),ls-files,cat-fileusw. - Netzwerkfunktionen sind nicht geplant, daher gibt es kein
cloneoderpush.
- Geplant ist die Implementierung von Funktionen wie
Meinung von GN⁺
- Dieses Projekt bietet technisch Neugierigen eine unterhaltsame Möglichkeit, die Funktionsweise von Git und AWK zu erkunden.
- Es ist ein interessantes experimentelles Projekt für Softwareingenieure am Anfang ihrer Laufbahn, die neue Möglichkeiten von Programmiersprachen ausloten möchten.
- Für alle, die ihr Verständnis von AWK und Git vertiefen möchten, kann es eine nützliche Lernressource sein.
1 Kommentare
Hacker-News-Kommentar
Der Reiz von Awk:
stdout) zu extrahieren.The AWK Programming Language, Second Edition:
Vorschlag zur Verbesserung von Awk-Code:
let-Anweisung hinzufügt, um Funktionsparameter und lokale Variablen zu unterscheiden, doch das Projekt lehnte ihn ab.Die Nützlichkeit von Awk:
Projekterfahrung mit Awk:
Die Erweiterbarkeit von Awk:
git cloneoder Pushes von Repositories in anderen Verzeichnissen sind möglich.Das Potenzial von GNU-Utilities:
Einsatz von cppawk:
#includeverwendet werden, und es ist relativ zur Datei statt zu AWKPATH.Verschiedene Einsatzbeispiele für Awk:
Interessante Tatsache zu Awk: