zsxxsz Wrote:

> == Quote from Robert Fraser (fraseroftheni...@gmail.com)'s article
> > Ary Borenszweig wrote:
> > > zsxxsz escribió:
> > >> == Quote from Jarrett Billingsley (jarrett.billings...@gmail.com)'s
> > >> article
> > >>> On Sat, Jun 13, 2009 at 9:46 PM, zsxxsz<zhengshu...@hexun.com> wrote:
> > >>>> It's good. But I think it should be implement by the DMD compiler,
> > >>>> just l
> > >>> ike
> > >>>> __FILE__  and __LINE__. __FUNCTION__ should be the base D language synt
> > >>> ax same as
> > >>>> __FILE__, __LINE__, in C99, they're all the compiler's things to get
> > >>>> thes
> > >>> e and the
> > >>>> compiler do these more easily than any library.
> > >>>>
> > >>> I completely agree, but Walter and Andrei's argument against it is -
> > >>> where does it end?  Do we need __PACKAGE__, __MODULE__, __TYPE__,
> > >>> __TEMPLATE__, etc. etc. etc.?  And I agree with them too - but you
> > >>> know, it'd be nice to actually get some results on these things once
> > >>> in a while instead of a bunch of bullshit bikeshed discussions.
> > >>> Sheesh.
> > >>
> > >> What is the main use of __FILE__, __LINE__ and __FUNCTION__? Many
> > >> people just use
> > >> them for logging easily, including me. In some famous server such as
> > >> Postfix, you
> > >> may see 'const char *myname = "xxx"; ... msg_info("%s: xxx", myname);'
> > >> in many
> > >> files, it's a time cost for the programmer to do so. These are base
> > >> requirments
> > >> for D compiler.
> > >
> > > I never had to use them in other languages. Why? Because debugging
> > > support in them is excelent. So maybe enhancing debugging support for D
> > > is better than adding a couple of keywords just to make *printf
> > > debugging* better.
> > __FILE__, __LINE__, __FUNCTION__, etc. are more often used for *logging*
> > than for debugging. Of course, ideally, the logger would be able to
> > identify all this stuff on its own (i.e. from a stack trace), but in a
> > compiled language this is pretty tricky (impossible on Windows without
> > debug symbols).
> 
> Yes, I agree with it.


Perhaps not the first thing to think off, but what about webservices for 
example? They could use such a system. Though it should be more elaborate than 
just the function name. If you could do this with all scopes, it would be 
trivial to expose them.

Reply via email to