On Thu, 10 Apr 2014 02:35:12 +0100 Tom Hacohen
<tom.haco...@samsung.com> wrote:

> Neither.

I'll just have to do it myself then.

> On 09/04/14 14:18, David Seikel wrote:
> > Soooo, does this new EO 2 have run time introspection, or will it be
> > added?
> >
> >
> > On Tue, 18 Mar 2014 15:22:23 +1000 David Seikel <onef...@gmail.com>
> > wrote:
> >
> >> On Tue, 18 Mar 2014 13:55:46 +0900 Cedric BAIL
> >> <cedric.b...@free.fr> wrote:
> >>
> >>> On Tue, Mar 18, 2014 at 10:28 AM, David Seikel <onef...@gmail.com>
> >>> wrote:
> >>>> On Tue, 18 Mar 2014 09:53:28 +0900 Cedric BAIL
> >>>> <cedric.b...@free.fr> wrote:
> >>>>> Hello,
> >>>>>
> >>>>> On Tue, Mar 18, 2014 at 3:39 AM, David Seikel
> >>>>> <onef...@gmail.com> wrote:
> >>>>>> I have a project I'd like to start soon that involves
> >>>>>> introspection on the stuff that Eo handles.  Way back in early
> >>>>>> 2012 when Eobj was announced, Raster mentioned -
> >>>>>>
> >>>>>>> bonuses:
> >>>>>>> 7. we get some method introspection while we're at it
> >>>>>>
> >>>>>> Based on that I was always planning on doing my introspection
> >>>>>> project. Two years later, Eobj got renamed to Eo, and naw Eo +
> >>>>>> Eolian is happening, and it's time for me to actually look at
> >>>>>> that introspection stuff.  I think the introspection ball got
> >>>>>> dropped, or I'm just not seeing it.
> >>>>>
> >>>>> Maybe because there is a difference in what raster mean by
> >>>>> introspection and what you expect. Eolian is our source of
> >>>>> introspection, meaning static compile time introspection, not at
> >>>>> runtime introspection. There is an obvious reason for that...
> >>>>> speed and memory usage.
> >>>>
> >>>> Er, the suggestion I made on how to implement run time
> >>>> introspection would not be a major speed or memory hit.  B-)
> >>>
> >>> Well, you start by adding a hash table to find class by name, then
> >>> functions, then parameters... I did go through your proposal
> >>> really quickly, but I don't think you looked at how to get the
> >>> parameters of a function.
> >>
> >> I stopped when I got as deep as methods, coz it was obvious none of
> >> the rest was there.  There's already a separate thing for ops and
> >> methods, could also have one for method parameters (a list of the
> >> parameters for each method) indexed by the same ID.  Or add it to
> >> the op data.
> >>
> >>> That's going to be quite painful to manage. I guess that the
> >>> easiest things to do, would be to just compress and store the .eo
> >>> class definition inside the generated C file and have an API to
> >>> access that field in read only.
> >>
> >> Or stored in a separate file maybe.
> >>
> >>> Combined with an iterator over instantiated class (We don't know
> >>> anything about class that have no object created yet) and also a
> >>> hash table to find the class instance would do it. Of course that
> >>> would make introspection quite costly to use...
> >>
> >> Costly introspection is why I have a class cache in my old project
> >> that used it extensively.  B-)
> >>
> >> Also, none of this introspection data need be created until the
> >> user calls eo_introspection_init() or some such.  So it only need
> >> take up time and space when someone actually wants to use it.
> >>
> >> Introspection doesn't have to be that hard, others have done it
> >> easily.
> >>
> >>>>> Also everything you have been looking at his related to Eo not
> >>>>> Eo2, which is where we are going for various reason (speed, ease
> >>>>> of use in C, ...), but not for runtime introspection as far as I
> >>>>> know. Maybe Tom has some more information on the subject.
> >>>>
> >>>> I don't suppose this Eo2 is anywhere that I can look at it?  Is
> >>>> there an ETA on Eo2?
> >>>
> >>> It is :
> >>> https://git.enlightenment.org/core/efl.git/log/?h=devs/jeyzu/eo2
> >>
> >> Ah in a branch.  My git update script only grabs the master branch.
> >> I'll have a look at that later.
> >>
> >
> >
> >
> >
> > ------------------------------------------------------------------------------
> > Put Bad Developers to Shame
> > Dominate Development with Jenkins Continuous Integration
> > Continuously Automate Build, Test & Deployment
> > Start a new project now. Try Jenkins in the cloud.
> > http://p.sf.net/sfu/13600_Cloudbees
> >
> >
> >
> > _______________________________________________
> > enlightenment-devel mailing list
> > enlightenment-devel@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> >
> 
> 
> ------------------------------------------------------------------------------
> Put Bad Developers to Shame
> Dominate Development with Jenkins Continuous Integration
> Continuously Automate Build, Test & Deployment 
> Start a new project now. Try Jenkins in the cloud.
> http://p.sf.net/sfu/13600_Cloudbees
> _______________________________________________
> enlightenment-devel mailing list
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


-- 
A big old stinking pile of genius that no one wants
coz there are too many silver coated monkeys in the world.

Attachment: signature.asc
Description: PGP signature

------------------------------------------------------------------------------
Put Bad Developers to Shame
Dominate Development with Jenkins Continuous Integration
Continuously Automate Build, Test & Deployment 
Start a new project now. Try Jenkins in the cloud.
http://p.sf.net/sfu/13600_Cloudbees
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to