[DGD] reflective programming under DGD

Noah Gibbs noah_gibbs at yahoo.com
Mon Jun 25 20:52:40 CEST 2007


  Depends on the dialect.  But yes, I think CommonLISP with CLOS qualifies
nicely.

--- Shentino <shentino at gmail.com> wrote:

> So LISP would sorta be a reflective programming language?
> 
> On 6/21/07, Kirk Smith <kirk at kirktis.net> wrote:
> >
> >
> > C/P from DMOZ:
> > =========================================================
> > Reflection: a
> > method or means to let a system maintain information about itself
> (meta-information), and to use
> > such to alter its behavior, to change, adapt; something acting upon itself.
> This is higher-order
> > behavior than strict imperative models.
> >
> > More concretely, reflection is also an ability (for users) to modify
> software (even system
> > software) of the underlying system during runtime, without leaving that
> system. Most programs
> > written today are not reflective. With non-reflective systems, if one
> modifies (edits) any source
> > code, one must recompile, and then restart it, thus leaving the system.
> With a reflective system,
> > one can modify code (even kernel code), recompile, and replace the running
> system code as the
> > system runs, with no restarting, rebooting, or often even leaving the
> editor. This allows and
> > promotes more dynamic, fluid, productive work style. Such runtime
> modifiability is similar to what
> > an extensible operating system (OS) allows, which can be viewed as a
> limited type of
> > (application-level) OS reflectivity.
> >
> >  Reflection, where program = data, simplifies writing compilers,
> interpreters, optimizers,
> > theorem provers, and defining higher order functions.
> >
> > Reflective programming languages are those that take advantage of such
> traits and abilities, to
> > various ends. Many exist. Some are used daily, in working systems, but they
> do not dominate, and
> > are not mainstream, yet. They are a very interesting and promising class of
> languages. Some are
> > found in research, where they form a fascinating branch of computer
> science. Some experts say they
> > will grow more important in the future as computer power rises, programs
> grow more complex, and
> > artificial intelligence properties are grafted onto, or blended with,
> languages. Or, like so many
> > other technologies, they may remain more marginal, used only in certain
> areas and applications.
> >
> > =========================================================
> >
> >
> > > Pardon me for
> > being an utter noob, but what in tarnation does "reflective" mean?
> > >
> > >
> > Not a term I'm familiar with, especially wrt. dgd.
> > >
> > > On 6/20/07, Felix A. Croes
> > <felix at dworkin.nl> wrote:
> > >> Carter Cheng <carter_cheng at yahoo.com>
> > wrote:
> > >>
> > >> > I have been wondering if it is possible to do
> > >> > reflective programming under DGD? I figure this sort
> > >> > of thing
> > could be quite powerful in perhaps helping to
> > >> > implement certain features like
> > an incremental
> > >> > (object) garbage collector provided i had access to
> > >> > the variable list and the types of the variables and a
> > >> > way to
> > reflectively load them.
> > >>
> > >> DGD does not support this directly.  What you
> > could do is write your
> > >> own LPC-to-LPC compiler (others have done this, though
> > typically as
> > >> a LPCish-to-LPC compiler) that preserves the information you need
> > >> for reflection.
> > >>
> > >> Regards,
> > >> Dworkin
> > >> ___________________________________________
> > >>
> > https://mail.dworkin.nl/mailman/listinfo/dgd
> > >>
> > >
> > ___________________________________________
> > >
> > https://mail.dworkin.nl/mailman/listinfo/dgd
> > >
> > ___________________________________________
> > https://mail.dworkin.nl/mailman/listinfo/dgd
> >
> ___________________________________________
> https://mail.dworkin.nl/mailman/listinfo/dgd
> 





       
____________________________________________________________________________________
Need a vacation? Get great deals
to amazing places on Yahoo! Travel.
http://travel.yahoo.com/



More information about the DGD mailing list