There are some limitations with that proc:=new_proc, because proc cannot
carry any information beside its own name, unlike arg1,...,argn, they can
be anything. It can be avoided if one write
go(proc,arg1,...,argn)
consistently, and in that case, there is almost no limit of program
transformation which can be done in go, including
go:=aspect1,...,go:=aspectn, i.e. dynamical selection of aspects relatively
to procedures during runtime. It is uncomfortable to use so many go's, but
it is at least explicit, otherwise AOP (reminds on AOR,
adult-oriented-rock) breakpoints are even less structured than "go to",
they are like "come from" seen in some enigmatic languages.
It could be more comfortable, without redundant "go", if "proc" can be
record or object. Is it possible to somehow write O(f) where O is object
(not class!) in Unicon? Theoretically OO is association of data and
behavior, but if f(O) is possible, but not O(f), it is still "only" data
with associated behavior. Convenient implementation of such far-reaching
OO/functional crossbreed can be relatively simple, through special role
given to method/attribute named "main" if such exists in class.
----
Kazimir Majorinc, Zagreb, Croatia
- [Unicon-group] Aspect Oriented Programming and Unicon ? Art Eschenlauer
- Re: [Unicon-group] Aspect Oriented Programming and ... Majorinc, Kazimir
- Re: [Unicon-group] Aspect Oriented Programming ... Majorinc, Kazimir
- [Unicon-group] Patterns (was: Aspect Orient... Majorinc, Kazimir
- Re: [Unicon-group] Aspect Oriented Programming ... Art Eschenlauer
- Re: [Unicon-group] Aspect Oriented Programming and ... Art Eschenlauer
