Kreirano 2020-12-04 Fri 11:15, pritisni ESC za mapu, m za meni, Ctrl+Shift+F za pretragu
*
Preciznije, meta-metamodel je apstraktna sintaksa takvog jezika. Jezik još
čine i konkretne sintakse i semantika.
-(4-1)*5/(2+4.67)
možemo u postfiksnoj notaciji zapisati kao
4 1 - 5 * 2 4.67 + / -
. Ovo će rezultovati različitim stablima parsiranja
ali je suština izraza ista i može rezultovati istim stablom apstraktne
sintakse.
Da li su ova dva mograma ista?
A sada?
def inner_from_python(expression):
retval = None
if isinstance(expression, types.FunctionType):
# If this expression is a parser rule
rule_name = expression.__name__
if rule_name in __rule_cache:
c_rule = __rule_cache.get(rule_name)
if self.debug:
print("Rule {} founded in cache.".format(rule_name))
if isinstance(c_rule, CrossRef):
self.__cross_refs += 1
if self.debug:
print("CrossRef usage: {}"
.format(c_rule.target_rule_name))
return c_rule
...
Projekcione radionice - direktna izmena apstraktne reprezentacije kroz projekciju.
Bazirane na parserima - izmena se vrši posredno kroz tekst koji se parsira da bi se dobila apstraktna reprezentacija.
Eye icon designed by Freepik. Hand icon by Yannick Lung.
*
J. Miller, J. Mukerji, et al., MDA Guide Version 1.0.1, Object Management
Group, vol. 234, 2003
Model predstavlja pojednostavljenje sistema sa određenim ciljem. Model treba da odgovori na pitanja umesto stvarnog sistema. Odgovori dobijeni od modela moraju da budu isti kao i oni dobijeni od realnog sistema, pod uslovom da se pitanja nalaze u domenu definisanom ciljem modela. Da bi bio koristan, model mora biti jednostavniji za upotrebu od realnog sistema. Da bi se ovo postiglo, mnogi detalji realnog sistema su apstrahovani i izostavljeni. Ovo pojednostavljenje je srž modelovanja.
*
J. Bézivin and O. Gerbé, Towards a precise definition of the OMG/MDA
framework, in ase, p. 273, Published by the IEEE Computer Society, 2001
Apstraktna sintaksa je meta-model
If you assume a certain basic knowledge in the audience, you can talk in a language that deals with bigger concepts, and express things in a much shorter and clearer way. This, more or less, is what abstraction is.