From janko.thyson at ku-eichstaett.de  Wed Nov 17 11:39:40 2010
From: janko.thyson at ku-eichstaett.de (Janko Thyson)
Date: Wed, 17 Nov 2010 11:39:40 +0100
Subject: [Rd] R5 reference classes: how to initialize exactly?
In-Reply-To: <F69C1FF5-B769-4FAB-9807-7862001C4504@r-project.org>
References: <005b01cb851d$16a21d60$43e65820$@thyson@ku-eichstaett.de>
	<F69C1FF5-B769-4FAB-9807-7862001C4504@r-project.org>
Message-ID: <003001cb8643$bd85bb60$38913220$@thyson@ku-eichstaett.de>

> -----Urspr?ngliche Nachricht-----
> Von: Simon Urbanek [mailto:simon.urbanek at r-project.org]
> Gesendet: Mittwoch, 17. November 2010 11:35
> An: Janko Thyson
> Cc: 'r-devel at r-project. org'
> Betreff: Re: [Rd] R5 reference classes: how to initialize exactly?
> 
> Just a clarification for posterity - R5 has nothing to do with the new
> reference classes. It's not even an official name, but informally it's a
> collection of ideas for an entirely new object system that can replace
> both S3 and S4 (not that it will but it should be seen as having the
> capability to do so technically). Reference classes are just an addition
> to S4.
> 
> Cheers,
> Simon

Thanks for that clarification. I picked that name up from the Google
TechTalks presentation of Dirk and Romain. So I refer to them as S4
reference classes in future posts?

Regards,
Janko

> 
> 
> On Nov 16, 2010, at 12:30 AM, Janko Thyson wrote:
> 
> > Sorry, I was stupid:
> >
> >
> >
> > MyRefObj <- setRefClass("Blabla", .)
> >
> >
> >
> > One can always get the generator object of an defined class with
> > 'getRefClass()'. So:
> >
> >
> >
> > g <- getRefClass("Blabla")
> >
> > x <- g$new(.)
> >
> >
> >
> > Regards,
> >
> > Janko
> >
> >
> >
> >
> >
> > Von: Janko Thyson [mailto:janko.thyson at ku-eichstaett.de]
> > Gesendet: Dienstag, 16. November 2010 00:27
> > An: 'r-devel at r-project. org'
> > Betreff: R5 reference classes: how to initialize exactly?
> >
> >
> >
> > Dear List,
> >
> >
> >
> > So far, I really like those new R5 classes. But what kind of puzzles
> me is
> > that it's not just enough to define the actual reference class, I also
> have
> > to assign it to an object (e.g. 'MyRefObj') in order to fire
> > 'MyRefObj$new(.)'.
> >
> >
> >
> > S4:
> >
> > setClass("Blabla", .)
> >
> > x <- new("Blabla")
> >
> >
> >
> > R5:
> >
> > MyRefObj <- setRefClass("Blabla", .)
> >
> > x <- MyRefObj$new(.)
> >
> >
> >
> > But then how do I define a reference class in a package that should be
> > available after the package is loaded via 'library(my_pkg)' as there
> is no
> > 'MyRefObj' at startup yet? Do I have to call the script where the
> definition
> > lives?
> >
> >
> >
> > Thanks for any comments,
> >
> > Janko
> >
> >
> >
> >
> > 	[[alternative HTML version deleted]]
> >
> > ______________________________________________
> > R-devel at r-project.org mailing list
> > https://stat.ethz.ch/mailman/listinfo/r-devel
> >
> >



[Rd] R5 reference classes: how to initialize exactly?
Janko Thyson