3795316faeb63b4716e8ff3f80bc13134bb161a0
javaBeansWriter.ts writes what java.beans.XMLDecoder reads — the counterpart of javabeans.ts and the base of the .fls writer. Its input says explicitly what Java should do: construct a class with typed arguments, call setters, getters (with statements on their result), methods and indexed access; an object reached twice is written once with an id and referenced after. Unlike XMLEncoder it writes what it is given, defaults included. What XML 1.0 cannot hold (controls, lone surrogates, U+FFFE/F) and a CR, which XML would read as a line break, are written as <char code>. Checked by Java itself: nine files of the writer (strings with every kind of odd unit, all primitive types including NaN, -0.0 and a long beyond 2^53, collections, maps, shared objects, Rectangle, Color, FILIUS beans with getter chains, arrays, indexed access, a static constant) are read by XMLDecoder in the Java oracle (BeansDump), which describes what it got and collects the errors the decoder would only log. Mutation probes regenerate the files and let Java read each mutant. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
mdg-filius
Netzwerksimulation nach FILIUS für den Browser — als App „Filius" im MDG-Dashboard, gemeinsam bearbeitbar.
Based on Filius by Dr. Stefan Freischlad and the Filius project.
Dieses Projekt ist unabhängig. Es wird weder vom ursprünglichen Filius-Projekt (Universität Siegen) noch von
filius-project(Filius on iPad) herausgegeben, betrieben oder unterstützt.
Herkunft
Der Simulationskern ist eine Übertragung nach TypeScript aus
filius-project/filius-ipad(Swift, GPLv2 oder GPLv3) — Vorlage für Kern,.fls-Codec und Tests,filius1/filius(Java, GPLv2 oder GPLv3) — Referenz für Dateiformat und Verhalten.
Jede übertragene Datei nennt in ihrem Kopf die Quelldatei. CHANGES.md führt
die Herkunft je Paket. Lizenz dieses Repos: GPL-3.0 (LICENSE).
Aufbau
| Pfad | Inhalt |
|---|---|
packages/core |
Simulationskern: Modell, Ereignis-Warteschlange, Protokolle, Anwendungen — ohne DOM, ohne Node |
packages/fls |
.fls lesen, schreiben, Unbekanntes bewahren (folgt) |
packages/doc |
gemeinsames Dokument (Yjs) (folgt) |
packages/editor |
Oberfläche im Iframe des Dashboards (folgt) |
server |
Filius-Dienst auf Server F (folgt) |
Plan und Entscheidungen: knowledge/plans/FILIUS_WEB_PLAN.md im Dashboard.
Entwickeln
npm install
npm run hooks # Sprachprüfung vor jedem Commit (braucht das Dashboard drumherum)
npm run check # Typprüfung + Tests
Code, Kommentare und Testnamen sind englisch; sichtbare Texte stehen hinter i18n-Schlüsseln (Deutsch/Englisch).
Languages
TypeScript
85%
Java
11.6%
CSS
1.2%
Swift
1.1%
Shell
0.9%
Other
0.1%