DE eng

Search in the Catalogues and Directories

Hits 1 – 3 of 3

1
Pharo First Class Layouts and Slots ...
BASE
Show details
2
Pharo First Class Layouts and Slots ...
BASE
Show details
3
Flexible Object Layouts: enabling lightweight language extensions by intercepting slot access
In: Proceedings of 26th International Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA '11) ; https://hal.inria.fr/hal-00641716 ; Proceedings of 26th International Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA '11), Nov 2011, Portland, United States (2011)
Abstract: International audience ; Programming idioms, design patterns and application li- braries often introduce cumbersome and repetitive boiler- plate code to a software system. Language extensions and external DSLs (domain specific languages) are sometimes introduced to reduce the need for boilerplate code, but they also complicate the system by introducing the need for lan- guage dialects and inter-language mediation. To address this, we propose to extend the structural reflec- tive model of the language with object layouts, layout scopes and slots. Based on the new reflective language model we can 1) provide behavioral hooks to object layouts that are triggered when the fields of an object are accessed and 2) simplify the implementation of state-related language exten- sions such as stateful traits. By doing this we show how many idiomatic use cases that normally require boilerplate code can be more effectively supported. We present an implementation in Smalltalk, and illustrate its usage through a series of extended examples.
Keyword: [INFO.INFO-PL]Computer Science [cs]/Programming Languages [cs.PL]
URL: https://hal.inria.fr/hal-00641716
https://hal.inria.fr/hal-00641716/file/Verw11b-OOSPLA11-FlexibleObjectLayouts.pdf
https://hal.inria.fr/hal-00641716/document
BASE
Hide details

Catalogues
0
0
0
0
0
0
0
Bibliographies
0
0
0
0
0
0
0
0
0
Linked Open Data catalogues
0
Online resources
0
0
0
0
Open access documents
3
0
0
0
0
© 2013 - 2024 Lin|gu|is|tik | Imprint | Privacy Policy | Datenschutzeinstellungen ändern