Proceedings of the 15th ACM SIGPLAN International Conference on Software Language Engineering 2022
DOI: 10.1145/3567512.3567516
|View full text |Cite
|
Sign up to set email alerts
|

The Semantics of Plurals

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...

Citation Types

0
0
0
2

Year Published

2023
2023
2024
2024

Publication Types

Select...
3

Relationship

0
3

Authors

Journals

citations
Cited by 3 publications
(2 citation statements)
references
References 34 publications
0
0
0
2
Order By: Relevance
“…Wenn die o 𝑖 .g nun selbst wieder Bunches sind, also o 𝑖 .g = o 𝑖,1 , … , o 𝑖,𝑚 𝑖 , dann haben wir o.f.g = o 1,1 , … , o 1,𝑚 1 , … , o 𝑛,1 , … , o 𝑛,𝑚 𝑛 , also wieder ein Bunch. 7 Genau wie ein Feldzugriff bei einem Record in Pascal und anderen Algol-DerivatenEs fällt auf, dass im Ergebnis die Verknüpfung der Funktionen 𝑔 und 𝑓, 𝑔 ∘ 𝑓, genau dem relativen Produkt der entsprechenden Relationen 𝑓 und 𝑔 entspricht: das relative Produkt von𝑓 = {(𝑜, 𝑜 1 ), … , (𝑜, 𝑜 𝑛 )} und 𝑔 = {(𝑜 1 , 𝑜 1,1 ), … , (𝑜 1 , 𝑜 1,𝑚 1 ), … , (𝑜 𝑛 , 𝑜 𝑛,1 ), … , (𝑜 𝑛 , 𝑜 𝑛,𝑚 𝑛 )} ergibt {(𝑜, 𝑜 1,1 ), … , (𝑜, 𝑜 1,𝑚 1 ), … , (𝑜, 𝑜 𝑛,1 ), … , (𝑜, 𝑜 𝑛,𝑚 𝑛 )} = 𝑔 ∘ 𝑓 .Wir sehen also, dass sich, wenn wir Bunches anstelle von Collections verwenden, die Navigationsausdrücke für Plurale nicht von denen für Singulare unterscheiden -wir können sie vielmehr einheitlich behandeln(Steimann und Freitag 2022).Nachdem wir nun Attribute als (einstellige) bunch-wertige Funktionen und diese als Relationen aufgefasst sowie gezeigt haben, was die Funktionsanwendung auf Bunches bedeutet, liegt es nahe, dasselbe Prinzip auch auf Methoden anzuwenden: Ein Methodenaufruf auf einem Bunch distributiert über die Konstituenten des Bunches. Praktisch würde das bedeuten, dass der Methodenaufruf auf einem Bunch zu gleichen Methodenaufrufen auf allen das Bunch konstituierenden Objekten auflöst (oder eben auf keinem, wenn das Bunch leer ist).…”
unclassified
See 1 more Smart Citation
“…Wenn die o 𝑖 .g nun selbst wieder Bunches sind, also o 𝑖 .g = o 𝑖,1 , … , o 𝑖,𝑚 𝑖 , dann haben wir o.f.g = o 1,1 , … , o 1,𝑚 1 , … , o 𝑛,1 , … , o 𝑛,𝑚 𝑛 , also wieder ein Bunch. 7 Genau wie ein Feldzugriff bei einem Record in Pascal und anderen Algol-DerivatenEs fällt auf, dass im Ergebnis die Verknüpfung der Funktionen 𝑔 und 𝑓, 𝑔 ∘ 𝑓, genau dem relativen Produkt der entsprechenden Relationen 𝑓 und 𝑔 entspricht: das relative Produkt von𝑓 = {(𝑜, 𝑜 1 ), … , (𝑜, 𝑜 𝑛 )} und 𝑔 = {(𝑜 1 , 𝑜 1,1 ), … , (𝑜 1 , 𝑜 1,𝑚 1 ), … , (𝑜 𝑛 , 𝑜 𝑛,1 ), … , (𝑜 𝑛 , 𝑜 𝑛,𝑚 𝑛 )} ergibt {(𝑜, 𝑜 1,1 ), … , (𝑜, 𝑜 1,𝑚 1 ), … , (𝑜, 𝑜 𝑛,1 ), … , (𝑜, 𝑜 𝑛,𝑚 𝑛 )} = 𝑔 ∘ 𝑓 .Wir sehen also, dass sich, wenn wir Bunches anstelle von Collections verwenden, die Navigationsausdrücke für Plurale nicht von denen für Singulare unterscheiden -wir können sie vielmehr einheitlich behandeln(Steimann und Freitag 2022).Nachdem wir nun Attribute als (einstellige) bunch-wertige Funktionen und diese als Relationen aufgefasst sowie gezeigt haben, was die Funktionsanwendung auf Bunches bedeutet, liegt es nahe, dasselbe Prinzip auch auf Methoden anzuwenden: Ein Methodenaufruf auf einem Bunch distributiert über die Konstituenten des Bunches. Praktisch würde das bedeuten, dass der Methodenaufruf auf einem Bunch zu gleichen Methodenaufrufen auf allen das Bunch konstituierenden Objekten auflöst (oder eben auf keinem, wenn das Bunch leer ist).…”
unclassified
“…Die Pseudovariable this (oder self in Sprachen wie Smalltalk) im Rumpf einer derart aufgerufenen Methode verweist damit immer auf genau ein Objekt. Man nennt diese Art der Funktionsanwendung deswegen auch Singular-Semantik(Steimann und Freitag 2022). Ist o nun ein Bunch, dann distributiert der Aufruf von m über alle Konstituenten von o, wobei jeder einzelne Funktionsaufruf dynamisch gebunden wird und die Funktionswerte (die Rückgabewerte der Methoden) wieder in einem Bunch eingesammelt werden(Steimann 2022).…”
unclassified