Hi,

Thanks for reacting. Knowing that you were a strong debate counterpart, I would 
be very happy to work with you on this topic :).

As Nicolai noticed, GTExamples is significantly more than sample instances. For 
example, right now, it is the basis for building examples that are also tests. 
Furthermore, we played also with building documentation around it. Sample 
instances are just the prerequisite for making this happen, but the method is 
very much an example.

I do not want to hijack anything. The result of the debate a year ago was to 
not introduce the <example> pragma at all to have the chance of comparing 
solutions rather than just having something that is half backed and get stuck 
with it. Now we have 55 such <example> methods in the image.

GTExamples will not change because we do not learn from samples or exemplars, 
we learn from examples, and the goal of this project is to offer a solution for 
live documentation and testing. You might not believe in it, and that is fine. 
We wrote down the documentation so that people can look at it. People do not, 
and that is fine as well.

Examples is a very rich word, and it would be a pity to not spend it to its 
full potential. I am not saying that the current form of GTExamples is that 
full potential, but I do want us to dream for more than what is achievable 
easily. I already said that one issue we have with GTExamples is that the 
composition based on pragmas can become somewhat difficult (at least with the 
current tools) and we are looking for alternatives. Even so, this library is 
already in use and it will be used further.

Furthermore, not using the term “examples" for this goal is a bit like saying 
that because some methods used to be called “tests” before SUnit appeared that 
SUnit should have employed a different term than tests to denote the methods. 
For example, they could have been called assertions.

Cheers,
Doru



> On Dec 19, 2016, at 1:03 PM, Torsten Bergmann <[email protected]> wrote:
> 
> Hi Tudor,
> 
> we all already had exchanged on this topic in discussions on this list back a 
> year ago or even before
> and as we have seen there were different arguments and different point of 
> views. 
> 
> Actions to make Pharo more known are always appreciated and as you made more 
> progress on the idea/tools 
> side for sure you can demonstrate better what can be done with this approach. 
> 
> But does it mean all the other arguments are now invalid because of this? I 
> don't think so. 
> 
> Anything described/demonstrated in this approach can perfectly be done 
> without changing the meaning
> of the "example" pragma and by using an own pragma to mark methods following 
> that idea.
> 
> Trying to hijack "example" pragma again as it is your preferred pragma name 
> does not help because this is
> like enforcing your own point of view on the topic to people like me 
> following the existing 
> "example" usage. Currently <example> and its usage is very generous and not 
> so restrictive what kind of 
> example the method contains or what return value it may provide.
> 
> Also counting the current usage in the default image does not tell you 
> anything as it leaves out all external 
> projects. 
> 
> 
> Similar to Ben I personally have not changed my point of view. I agree with 
> him in using an own and more specific 
> pragma like
> 
> - <sample> 
> - <sampleInstance>
> - <exemplar>
> 
> better depicting the meaning of returning an sample/sample instance/exemplar 
> of an instance of the class.
> I would be fine with using just "sample" as well as "Sample driven 
> development".
> 
> 
> There is no need to change the meaning of the existing pragma <example> which 
> is more
> general and can be any kind of example like:
> - example of usage
> - a simple example script 
> - sample instance
> - example of an algorithm
> - example on how to use several classes together
> - ...
> 
> For <example> it is not necessary to return exactly once instance of the 
> class where the pragma 
> is used in. 
> 
> Thx
> T.
> 

--
www.tudorgirba.com
www.feenk.com

"Innovation comes in the least expected form. 
That is, if it is expected, it already happened."


Reply via email to