Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sumtypes #83

Open
bafto opened this issue Jul 21, 2024 · 0 comments
Open

Sumtypes #83

bafto opened this issue Jul 21, 2024 · 0 comments
Labels
Typ: Neues Feature Neues Feature

Comments

@bafto
Copy link
Member

bafto commented Jul 21, 2024

Sum-types sind ein nützliches Feature in vielen Fällen. Da wir schon Product-types haben, macht es Sinn auch Sum-types zu übernehmen.

Für DDP würde ich folgende Syntax vorschlagen:

[Definition des Typs]
Wir definieren eine NummerOderText als eine Zahl, eine Kommazahl oder einen Text.

Die NummerOderText x ist 2.
Speichere "Hallo Welt" in x. [nur die angegebenen Typen können x zugewiesen werden]
Speichere wahr in x. [Typfehler]

Schreibe (x als Text) auf eine Zeile. [um einen Sum-type zu benutzen muss gecasted werden]

[man kann den tatsächlichen Typ einer Variable überprüfen]
Wenn x ein Text ist, dann:
    ...

Das einzige was man mit einem Sum-type machen kann ist ihn zu definieren, zu Speichern, ihn in einen konkreten Typ umzuwandeln und zu überprüfen ob er ein bestimmter Typ ist.

Sum-types in DDP werden relativ ähnlich zu Variablen sein, bloß mit mehr Sicherheits-Checks zur Kompilierzeit.

@bafto bafto added the Typ: Neues Feature Neues Feature label Jul 21, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Typ: Neues Feature Neues Feature
Projects
None yet
Development

No branches or pull requests

1 participant