jsowl - Ein JavaScript Preprocessor

    • Beta
    • Open Source

    Es gibt 5 Antworten in diesem Thema. Der letzte Beitrag () ist von KidRick.

      jsowl - Ein JavaScript Preprocessor

      Abend,

      sicher haben hier schon einige von [Entwicklung] owl - Ein HTML Preprocessor gehört, und wir bringen das Ganze mal einen
      Schritt weiter. Dieser Thread orientiert sich weitestgehend am Aufbau des owl-Thread.

      Allgemein
      jsowl ist nichts anderes als owl für JavaScript. Heißt: Schönere, aufgeräumtere und besser designte Syntax für JavaScript.
      Mit ein paar netten Features :). Am Ende bereitet der Compiler den geschrieben Code in valides, schönes JavaScript um.

      Syntax
      Die Syntax von owljs ist aufgeräumt, sauber und übersichtlich.
      Lambdas sind genausowenig ein Problem wie parameterlose Funktionen oder Klassen.
      Ein Beispiel ist unten bei den Bildern zu sehen, es beinhaltet einen syntaktischen Vergleich.

      Im Gegensatz zu owl bietet diese Syntax tatsächlich enorme Vorteile gegenüber der JavaScript-Syntax. Weniger Klammern,
      übersichtlichkeit und klar definierte Keywords sind der Schlüssel zu einem aufgeräumteren - nennen wir es Erlebnis.
      Gibt es irgendwelche Syntaxwünsche, bitte sofort in die Kommentare! :)

      Impelementiert
      ...ist im Moment ziemlich viel.
      • Lambda-Ausdrücke
      • Klassen
      • Public/Private Funktionen
      • Variablen
      • Eine ordentliche Syntax
      • Main-Einstiegspunkt

      Geplant
      Zur Planung ist zu sagen, dass wir optimistisch sind, dieses Projekt stark auszubauen. Der Compiler arbeitet zuverlässig
      und das Projekt hat einen stabilen Kern. Wir haben aktuell geplant, Plugs, Imports und Libraries zu ermöglichen,
      die das Coding stark erleichtern können.

      OpenSource
      Genau wie owl ist auch jsowl OpenSource und auf GitHub hier:
      github.com/codeaddicts/jsowl
      verfügbar. Wer daran was ändern möchte, kann das jederzeit tun.

      Bilder


      Kritik
      ...wird, insofern konstruktiv, immer gern gesehen. Wir arbeiten an dem Projekt und freuen uns über Ideen.

      Grüße,
      Nikx + @SplittyDev
      "Life isn't about winning the race. Life is about finishing the race and how many people we can help finish the race." ~Marc Mero

      Nun bin ich also auch soweit: Keine VB-Fragen per PM! Es gibt hier ein Forum, verdammt!

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Nikx“ ()

      Man verzeihe mir die paar Fehler, die ich beim drüberlesen gefunden habe, ich kümmere mich heute Mittag darum. Den Download hab ich anscheinend auch vergessen :D

      Grüße
      "Life isn't about winning the race. Life is about finishing the race and how many people we can help finish the race." ~Marc Mero

      Nun bin ich also auch soweit: Keine VB-Fragen per PM! Es gibt hier ein Forum, verdammt!
      Download gibt es hier: github:codeaddicts/jsowl/releases
      Dort steht auch wie der compiler aufgerufen wird, etc.

      Direct download des Compilers: github:jsowl-alpha-x86.zip
      Direct download der CGI Anwendung: github:jsowl-cgi-alpha-x86.zip

      Beispiele gibts auf GitHub im examples Ordner.
      Viel Spaß damit ^^
      Was sind die Vorteile gegenüber CoffeScript oder TypeScript?

      Habt ihr ne Sprachspezifikation? Wie sieht das mit ES3/5/7-Support aus? Plant Ihr entsprechende Polyfills? Ist jsowl mit bestehenden JS-Libraries kompatibel? Auch mit nodejs?
      Von meinem iPhone gesendet

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „nikeee13“ ()

      Ich habe mich weder mit CoffeScript noch mit TypeScript befasst.
      CoffeScript scheint einiges zu können, so weit ist jsowl sicherlich noch nicht.

      Momentan gibt es keine Spezifikation, ich plane aber, jsowl neu zu schreiben.
      In dem Fall wird es eine öffentliche Spezifikation und eine detaillierte Dokumentation geben.

      Jsowl ist, soweit die Theorie, mit allen bestehenden JS-Libraries kompatibel, da es ja zu
      normalem JavaScript kompiliert. Es ist z.B. überhaupt kein Problem, jQuery in jsowl code zu verwenden.
      In der Praxis wurde vieles noch nicht getestet, ich kann also keine Garantie geben dass alles funktioniert.

      Mit NodeJS kenne ich mich auch nicht aus, werde ich mir aber bald näher ansehen.
      Wenn NodeJS "normales" JavaScript verwendet, ist jsowl damit kompatibel.

      Es gibt übrigens auf der GitHub Release-Seite eine jsowl CGI App, dort gibts auch direkt
      ne Anleitung wie sich das in eine bestehende Apache2 installation integrieren lässt.
      Es gibt also die Möglichkeit, direkt im Browser mit jsowl rumzuspielen ohne den
      Compiler von Hand aufrufen zu müssen.

      Deine Frage wie es mit ES3/5/7-Support aussieht ist etwas schwieriger zu klären.
      Ich habe jsowl auf dem "normalen" JavaScript aufgebaut, das momentan überall verwendet wird.
      Dabei wurden experimentelle EcmaScript Versionen nicht bedacht.
      Ich kann sicher sagen, dass jsowl kein Problem mit neuen Funktionen/Methoden haben wird,
      falls es signifikante Änderungen in der Syntax gibt wird jsowl diese aber vermutlich nicht annehmen.

      Ich hoffe, dass damit alle deine Fragen geklärt sind :)
      Zum Schluss kann ich noch sagen dass wir momentan sehr viel an Codeaddicts arbeiten
      und das Projekt baldᵀᴹ von Grund auf neu entwickeln.
      Ein neuer Name für das ganze wäre schön (irgendwas mit Script hinten dran) :D Umso einfacher findet man das Projekt wieder und umso mehr aufsehen erregt es ;)
      Software being "Done" is like lawn being "Mowed". (Jim Benson)