Update gemini.md
This commit is contained in:
@@ -4,12 +4,12 @@
|
|||||||
* Das Ziel ist, die alte Delphi-Codebase nach Rust zu portieren.
|
* Das Ziel ist, die alte Delphi-Codebase nach Rust zu portieren.
|
||||||
* Die alte Delphi-Codebase ist nicht zu verändern.
|
* Die alte Delphi-Codebase ist nicht zu verändern.
|
||||||
|
|
||||||
Wichtig: zentraler Einstiegspunkt ist Delphi/Myc.Ast.Environment.pasund die dort referenzierten Units.
|
Wichtig: zentraler Einstiegspunkt ist Delphi/Myc.Ast.Environment.pas und die dort referenzierten Units.
|
||||||
|
|
||||||
### Design
|
### Design
|
||||||
|
|
||||||
* Der AST soll 1st class citizen sein. Das Skript ist nur eine mögliche Art, ihn darzustellen.
|
* Der AST soll 1st class citizen sein. Das Skript ist nur eine mögliche Art, ihn darzustellen.
|
||||||
* Ein geplante Darstellung des AST ist vollständige grafische Visualisierung.
|
* Eine geplante Darstellung des AST ist vollständige grafische Visualisierung.
|
||||||
* Es wird eine DSL für Finanzanalyse.
|
* Es wird eine DSL für Finanzanalyse.
|
||||||
* Aufgrund der geforderten Visualisierbarkeit muss der untyped AST (das, was der User bearbeiten kann) möglichst simpel sein. Komplexität muss vom System übernommen werden.
|
* Aufgrund der geforderten Visualisierbarkeit muss der untyped AST (das, was der User bearbeiten kann) möglichst simpel sein. Komplexität muss vom System übernommen werden.
|
||||||
* Closures sind Key-Feature.
|
* Closures sind Key-Feature.
|
||||||
@@ -18,7 +18,7 @@ Wichtig: zentraler Einstiegspunkt ist Delphi/Myc.Ast.Environment.pasund die dort
|
|||||||
|
|
||||||
* Die Root-Scopes sind die Grenze für Multithreading. Nichts verlässt den Root-Scope und alles innerhalb des Scope ist Single-Threaded.
|
* Die Root-Scopes sind die Grenze für Multithreading. Nichts verlässt den Root-Scope und alles innerhalb des Scope ist Single-Threaded.
|
||||||
* Globals sind nach dem Bootstrapping immutable.
|
* Globals sind nach dem Bootstrapping immutable.
|
||||||
* Das das Skript single-threaded ist, kann auf atomare Operationen (Mutex, Arc) verzichtet werden!
|
* Da das Skript single-threaded ist, kann auf atomare Operationen (Mutex, Arc) verzichtet werden!
|
||||||
|
|
||||||
### Spezielle Datentypen
|
### Spezielle Datentypen
|
||||||
|
|
||||||
@@ -47,7 +47,7 @@ Wichtig: zentraler Einstiegspunkt ist Delphi/Myc.Ast.Environment.pasund die dort
|
|||||||
|
|
||||||
## Testing & Debugging
|
## Testing & Debugging
|
||||||
|
|
||||||
* Das Projekt enthält eine Testsuite für Skripte. Logik in src/utils/tester.rs. Diese Testes werden automatisch in "cargo test" eingebunden.
|
* Das Projekt enthält eine Testsuite für Skripte. Logik in src/utils/tester.rs. Diese Tests werden automatisch in "cargo test" eingebunden.
|
||||||
* Nach Fertigstellung einer Aufgabe, oder wenn ich zum Testen auffordere: Warnungen sind zu eliminieren. Tests müssen durchlaufen. Wenn alles funktioniert, muss auch clippy ohne Beanstandungen durchlaufen.
|
* Nach Fertigstellung einer Aufgabe, oder wenn ich zum Testen auffordere: Warnungen sind zu eliminieren. Tests müssen durchlaufen. Wenn alles funktioniert, muss auch clippy ohne Beanstandungen durchlaufen.
|
||||||
* Du kannst Skripte selbst testen! Nutze das ast-tool:
|
* Du kannst Skripte selbst testen! Nutze das ast-tool:
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user