<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://purl.org/rss/1.0/" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:syn="http://purl.org/rss/1.0/modules/syndication/" xmlns:admin="http://webns.net/mvcb/">
  <channel rdf:about="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc">
    <title>gmane.comp.lang.smalltalk.vwnc</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc</link>
    <description/>
    <syn:updatePeriod>hourly</syn:updatePeriod>
    <syn:updateFrequency>1</syn:updateFrequency>
    <syn:updateBase>1901-01-01T00:00+00:00</syn:updateBase>
    <items>
      <rdf:Seq>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25063"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25062"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25061"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25060"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25059"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25058"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25057"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25056"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25055"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25054"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25053"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25052"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25051"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25050"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25049"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25048"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25047"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25046"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25045"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25044"/>
      </rdf:Seq>
    </items>
    <image rdf:resource="http://gmane.org/img/gmane-25t.png"/>
    <textinput rdf:resource=""/>
  </channel>
  <image rdf:about="http://gmane.org/img/gmane-25t.png">
    <title>Gmane</title>
    <url>http://gmane.org/img/gmane-25t.png</url>
    <link>http://gmane.org</link>
  </image>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25063">
    <title>Re: Reducers in Smalltalk</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25063</link>
    <description>&lt;pre&gt;from a previous message, as an old hands at Smalltalk, (or old feet),
I'll wirte it  :

(1 to: 10) inject: 0 into:
   [:sum :n | sum + (n odd
      ifTrue: [ n squared ]
      ifFalse: [ 0 ]) ]

But, I like new way of programming if there is a real change in point
of view. Perhaps the case with Reducers.
And I don't like to change a technique if it is still working efficiently.

I have a concrete case :

I have large arrays of numbers. I want to show different aspects of
theses series of numbers. I may have to show samples taken randomly
into the whole set, because calculations are too long to be done on
each elements.
For example, I can sample 1 of 100 of the elements.
A contrario, I may have to do over and over the same calculations on
portions of this population.

How Reducers may help me ?

Should I implement a system that remember what is already calculated
to improve performance and saturate memory,
or a "lazy" evaluation system, that will develop and calculate only
the value really needed ?



2013/5/&lt;/pre&gt;</description>
    <dc:creator>Vincent Lesbros</dc:creator>
    <dc:date>2013-05-21T19:56:27</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25062">
    <title>Re: Reducers in Smalltalk</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25062</link>
    <description>&lt;pre&gt;As this conversation proves, one of the hardest things is to get people to actually try something new. It's more natural to respond with "I don't need it, I can cope with the basic functions I already have", or "I already know another add-on that offers some of the same benefits". Both are true, and I'm guilty on both counts. But in a sense the value of Reducers may be precisely that they offer something familiar to functional programmers, as Helge says. By giving them familiar vocabulary and things they value (e.g. parallelism), we make Smalltalk a little more palatable. And even old hands at Smalltalk may learn something new - after all, most agree that inject:into: always feels a little lacking.
 
I'm really glad to see Steffen's work, and the Xtreams work of Michael and Martin. I'm not using either in anger yet, because I don't have enough pain from the existing base collection and stream support to justify adding a dependency on a non-base component. But I do think my brain benefitted from being stretch&lt;/pre&gt;</description>
    <dc:creator>Steven Kelly</dc:creator>
    <dc:date>2013-05-21T17:16:55</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25061">
    <title>Re: Reducers in Smalltalk</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25061</link>
    <description>&lt;pre&gt;Hi!

Your're right Helge, Reducers originated from a functional (actually  
LISP-like) language, Clojure. My idea was to find out how the concept  
could work out in ST. It turned out, that it translates directly to  
iterating with (nested) blocks. The function transformers are just  
factories that produce those blocks.

However, I am not sure why


appears so hard to read in contrast to


Is it the uncommon (renameable) selectors? Or the concept of building a  
receipt (i.e, a reducer) for a collection instead of using intermediate  
collections?


Besides the intermediate collection, I am a bit uncertain about the  
benefits of #sum or #allOddElements, too. These methods are quite the  
opposite of the generic high-level concept of #collect:, #select: and so  
on. (Which build upon a functional concept, blocks aka anonymous  
functions.)

Also I am quite surprised by John's stress on optimization. Performance  
was just one of the possible benefits I can imagine. I did never claim  
that it will be signi&lt;/pre&gt;</description>
    <dc:creator>Steffen Märcker</dc:creator>
    <dc:date>2013-05-21T16:35:30</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25060">
    <title>Re: Reducers in Smalltalk</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25060</link>
    <description>&lt;pre&gt;Dear John,

 

in general I agree.

 

I think the real issue is that Reducers are coming from a mindset
different from Smalltalk: functional programming, which is rooted in
mathematics. From my point of view functional programming looks rather
at the "how to implement functionality" whereas Smalltalk's philosophy
is "what domain to model". As a programmer of non-mathematical software
I have an intuitive notion of what a Collection is (a collection of
things). Yet what is a "Reducible"? Naively: something that can be
reduced, i. e. a value?? If I am a programmer of mathematical software
though, I may have an intuitive notion of what a Reducible is, just like
I have a notion of vectors, matrices etc.. Having said that I think
Reducers (a Do-er: is this OO think at all?) may have their place, yet
not as a general concept.

 

To not be misunderstood: I don't judge anything like implementation
details or claimed benefits of the one or other implementation. And I
don't want to belittle the work Steffen has done.&lt;/pre&gt;</description>
    <dc:creator>Nowak, Helge</dc:creator>
    <dc:date>2013-05-21T14:00:41</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25059">
    <title>Re: first MOOC about OOP with Smalltalk and Seaside - voting period ends at Thursday</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25059</link>
    <description>&lt;pre&gt;Hi,

there is a chance to adjust our MOOC project: please vote for it until May, 23rd. You can use the following link:
https://moocfellowship.org/submissions/objektorientierte-programmierung-von-web-anwendungen-von-anfang-an

I apologize for this reminder.

Thanks a lot

Johannes

Am 04.05.2013 um 17:29 schrieb Johannes Brauer &amp;lt;brauer&amp;lt; at &amp;gt;nordakademie.de&amp;gt;:



________________________________


Staatlich anerkannte private Fachhochschule
NORDAKADEMIE
Gemeinnützige Aktiengesellschaft
Köllner Chaussee 11
25337 Elmshorn

Vorstand:
Prof. Dr. Georg Plate (Vorsitzender), Dipl.-Ing. Jörg Meier (stellv. Vorstand)

Vorsitzender des Aufsichtsrats:
Dr. h.c. Hans-Heinrich Bruns

Sitz:
Elmshorn, Amtsgericht Pinneberg, HRB 1682
&lt;/pre&gt;</description>
    <dc:creator>Johannes Brauer</dc:creator>
    <dc:date>2013-05-21T13:41:50</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25058">
    <title>Re: Reducers in Smalltalk</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25058</link>
    <description>&lt;pre&gt;
This style is harder to read, especially for more complex conditions and

Actually, I'd like to completely disagree.  It is, in my opinion, much
easier to see what the latter does.  The easiest to read is the most
naive.  Write the following extension methods:

Given Collection&amp;gt;&amp;gt;sum, (((1 to: 10) select: #odd) collect: #squared) sum.

Or you could use Collection&amp;gt;&amp;gt;inject:into: here instead of writing
Collection&amp;gt;&amp;gt;sum.  Or you could go the other way and implement, for instance
Collection&amp;gt;&amp;gt;oddElements etc, and just do (1 to: 10) allOddElements
sumOfSquares.

What I really don't want to see is unnecessary complexity or in the code
because programmers think that it will be faster or more efficient.  For
instance, one of your concerns was the creation of an intermediate block.
But you have offered very little proof that this is even a problem.  Who
knows what the VM will do, especially if it does JIT optimization?  or uses
the GPU?

As a full time performance engineer I spend a lot of time looking at
incomprehensi&lt;/pre&gt;</description>
    <dc:creator>john woods</dc:creator>
    <dc:date>2013-05-21T13:02:23</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25057">
    <title>Re: Next-DataSetView</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25057</link>
    <description>&lt;pre&gt;hi, Marteen

your work on dataset seems quite interesting.

BTW, great drawing on your product screeshot; all done in VW and cairo?
very good work
ciao

giorgio


On Tue, May 21, 2013 at 1:47 PM, Sean Glazier &amp;lt;sglazier456&amp;lt; at &amp;gt;gmail.com&amp;gt; wrote:

_______________________________________________
vwnc mailing list
vwnc&amp;lt; at &amp;gt;cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
&lt;/pre&gt;</description>
    <dc:creator>giorgio ferraris</dc:creator>
    <dc:date>2013-05-21T12:41:54</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25056">
    <title>Re: Next-DataSetView</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25056</link>
    <description>&lt;pre&gt;I would be interested in it. OD you need additional help with the widget?

Sean


Kind Regards

Sean Glazier

Light yourself on Fire with enthusiasm and people will come for miles to
watch you burn!


On Tue, May 21, 2013 at 10:20 AM, &amp;lt;maarten.mostert&amp;lt; at &amp;gt;stakepoint.com&amp;gt; wrote:

_______________________________________________
vwnc mailing list
vwnc&amp;lt; at &amp;gt;cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
&lt;/pre&gt;</description>
    <dc:creator>Sean Glazier</dc:creator>
    <dc:date>2013-05-21T11:47:57</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25055">
    <title>Next-DataSetView</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25055</link>
    <description>&lt;pre&gt;
Hi,
I think they told us many moons ago that DataSetView was to complicated to be maintained ..
Now I lately got really upset about all this not coming Grid stuff and abandonnement of DSV so I decided to give it a serious BITE
 
For the moment my subclassed DataSetView adresses two major shortcomings:


1) Fully editable treeView (like editbale as any other column)
2) Be a drag source (including for itself).
 
You can see some preview here: [http://stakepoint.com/news] http://stakepoint.com/news
 
Does this interests anyone ?
 
&amp;lt; at &amp;gt;Maarten,_______________________________________________
vwnc mailing list
vwnc&amp;lt; at &amp;gt;cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
&lt;/pre&gt;</description>
    <dc:creator>maarten.mostert&lt; at &gt;stakepoint.com</dc:creator>
    <dc:date>2013-05-21T08:20:45</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25054">
    <title>Re: Reducers in Smalltalk</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25054</link>
    <description>&lt;pre&gt;Hi Joerg!


Yes, there is - namely by hand. Let's consider the following example:


It can be written the classic way:


Which creates two intermediate collections. Again, we can avoid them:


But now we have to think in terms of #inject:into and craft the behavior of
#select: and #collect: into the block by hand.
This style is harder to read, especially for more complex conditions and  
mappings.


This idea uses specific block combinators (#&amp;amp;, #||, #,) for the different  
types of enumeration messages. Besides implementing the BlockCollection  
class, you extend BlockClosure with those new messages.
Furthermore, you have to modify each implementor for each of the  
enumeration methods #collect:, select: and so on. This approach does not  
seem to be composable or easy to extend. Moreover, it doesn't give you the  
other benefits I've sketched before. (And it does not simplify the example  
above.)

Did you gave reducers already a try?

Kind regards,
Steffen
&lt;/pre&gt;</description>
    <dc:creator>Steffen Märcker</dc:creator>
    <dc:date>2013-05-18T10:53:13</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25053">
    <title>Re: Reducers in Smalltalk</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25053</link>
    <description>&lt;pre&gt;

There is already a way to compose the blocks used by select:/collect: etc. and avoid intermediate collections. For example in the case of 
test1 = [:i| I odd].
test2 := [:i| (i\\3) = 0].
((0 to: 100) select: test1) select: test2 

Does indeed iterate over the collection twice. But:

(0 to: 100) select: [:i| (test1 value: i) and: [test2 value: i]]

Only iterates over it once with the two tests composed.

If you want nicer syntax you could create a BlockCollection class with ways to compose blocks. For example:
aBlockCollection := (test1 &amp;amp; test2) || test3.

Then modify select: to take a block collection so you can write (1 to: 100) select: aBlockCollection.

Extensions to support block collections for collect could also be written say:
aBlockCollection := map1, map2, map3.
Then (1 to: 100) collect: aBlockCollection would give you the result of feeding the output of each block into the next.

Joerg
-----Original Message-----
From: vwnc-bounces&amp;lt; at &amp;gt;cs.uiuc.edu [mailto:vwnc-bounces&amp;lt; at &amp;gt;cs.uiuc.edu] On Behalf Of Steffen&lt;/pre&gt;</description>
    <dc:creator>Joerg Beekmann, DeepCove Labs</dc:creator>
    <dc:date>2013-05-17T18:54:10</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25052">
    <title>Re: Reducers in Smalltalk</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25052</link>
    <description>&lt;pre&gt;Dear Micheal,

I'll try to only indicate some answers, since I am not too familiar with  
Xtreams. I only used parts of it, e.g., the neat PEG package. Please keep  
in mind that Xtreams is an extensive library, whereas Reducers is in an  
early stage and neither complete nor optimized. For example, so far the  
only way to write to a collection/drain is to accumulate with  
#reduce:init:,  e.g.,


* Composition
You already mentioned this.

* Performance
Reducer objects do nothing more than transforming a reducing function  
(block, symbol). The reduction with the transformed function is done by  
the underlying source (~terminal). Thus, apart from the one-time  
transformation, there is no overhead.
This property may give a performance edge over the classical enumeration  
operations and Xtreams. First simple tests look promising to accomplish  
this. However, the tests were not extensive and hardly representative.

* Parallelism
Since most operations, e.g map and filter, do not assume any order or  
repres&lt;/pre&gt;</description>
    <dc:creator>Steffen Märcker</dc:creator>
    <dc:date>2013-05-17T17:06:03</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25051">
    <title>Re: [ANN] DoubleAgents: A Test Double Library for Visualworks</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25051</link>
    <description>&lt;pre&gt;OK, I understand what you're looking for.  I could think of a couple of
interpretations.

You basically have two options:

1. You can make a complete double of the class like this:

classDouble := DoubleAgent of: MyClass class.
classDouble stub: #myMethod return: 42.
result := suspectObject doStuffWithClass: classDouble.

If this is a common use case, then I should think about adding some kind of
convenience protocol to handle it.

2. You can use an in-place double on the original class like this:

classDouble := MyClass classSideDouble.
classDouble stub: #myMethod return: 42.
result := suspectObject doStuffWithClass: classDouble.


I see the tradeoffs between the two as follows:

 * The complete double will not respond to any other messages than those
you stub or mock; the in-place double will retain its original behavior for
any methods that you don't mention.

* The complete double has to be injected into the object under test; the
in-place double does not.

* The complete double will not impact any other&lt;/pre&gt;</description>
    <dc:creator>Randy Coulman</dc:creator>
    <dc:date>2013-05-15T14:07:07</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25050">
    <title>Re: Reducers in Smalltalk</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25050</link>
    <description>&lt;pre&gt;Apart from the composition, what advantage does this give me over Xtreams. Xtreams is not just read, it's also capable of write and it backs up to IO with a streaming API. Some kinds of streams are also positionable, which is another bonus.

Cheers,
Michael

On 15/05/2013, at 10:37 PM, Steffen Märcker &amp;lt;merkste&amp;lt; at &amp;gt;web.de&amp;gt; wrote:

&lt;/pre&gt;</description>
    <dc:creator>Michael Lucas-Smith</dc:creator>
    <dc:date>2013-05-15T13:17:55</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25049">
    <title>Re: Reducers in Smalltalk</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25049</link>
    <description>&lt;pre&gt;I've just pushed a new version that improves the API a little bit:

- added Collection&amp;gt;&amp;gt;reducer to support more smalltalkish style:
   ((1 to: 10) reducer filter: #odd) map: #squared
- composition style:
   squares := (Reducer map: #squared).
   odds := (Reducer filter: #odd).
   squared &amp;lt;&amp;gt; odds from: (1 to: 10)

Regards,
Steffen
&lt;/pre&gt;</description>
    <dc:creator>Steffen Märcker</dc:creator>
    <dc:date>2013-05-15T12:37:14</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25048">
    <title>Re: [ANN] DoubleAgents: A Test Double Library for Visualworks</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25048</link>
    <description>&lt;pre&gt;Say, we have MyClass that defines myMethod on the class side, e.g.


The code to be tested is given that class in some way and uses it, say


Can I stub myMethod with DoubleAgents? Maybe similar to


Regards, Steffen



Am 14.05.2013, 20:11 Uhr, schrieb Randy Coulman &amp;lt;rcoulman&amp;lt; at &amp;gt;gmail.com&amp;gt;:

&lt;/pre&gt;</description>
    <dc:creator>Steffen Märcker</dc:creator>
    <dc:date>2013-05-15T09:25:19</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25047">
    <title>Re: indexedType: #illegal</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25047</link>
    <description>&lt;pre&gt;I find that syntax highlighting helps me a lot with these types of errors (assuming you're coloring different variable types differently). Even if you happen to override a variable with a temp variable, it will be highlighted differently.

"Vincent Lesbros"&amp;lt;lesbros&amp;lt; at &amp;gt;gmail.com&amp;gt; wrote:
&lt;/pre&gt;</description>
    <dc:creator>mkobetic&lt; at &gt;gmail.com</dc:creator>
    <dc:date>2013-05-14T20:48:27</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25046">
    <title>Re: Reducers in Smalltalk - template clean blocks</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25046</link>
    <description>&lt;pre&gt;
You mentioned CollectionViews. I use generated blocks in that code. When client code asks GS for information then a clean query block is created to gather that information for each item in the collection being enumerated. The block allows context to be passed as arguments into it so that it remains clean while still being able to resolve anything that is needed. The savings is that the context object need only be created once for all the items being enumerated and that the code being performed each time is as efficient as the compiler can create.


Yeah, that would be slow.


Yes, and you've hinted at the solution that can be used when blocks have little to change. You can use a clean block as a template for creating other clean blocks. You copy the clean block and replace an easily recognized literal with the with a different selector to execute. It avoids having to compile a block every time. This kind of tuning varies by Smalltalk dialect (if that is a concern). I've done things like this a couple times.&lt;/pre&gt;</description>
    <dc:creator>Paul Baumann</dc:creator>
    <dc:date>2013-05-14T18:34:08</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25045">
    <title>Re: [ANN] DoubleAgents: A Test Double Library for Visualworks</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25045</link>
    <description>&lt;pre&gt;What do you mean by "mocking a class"?  Can you give me an example?

Thanks,
Randy


On Tue, May 14, 2013 at 10:12 AM, Steffen Märcker &amp;lt;merkste&amp;lt; at &amp;gt;web.de&amp;gt; wrote:




&lt;/pre&gt;</description>
    <dc:creator>Randy Coulman</dc:creator>
    <dc:date>2013-05-14T18:11:14</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25044">
    <title>Re: [ANN] DoubleAgents: A Test Double Library for Visualworks</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25044</link>
    <description>&lt;pre&gt;Hi Randy,

thanks for the explanation. DoubleAgents appear really interesting to me.  
I think I'll give it a try soon. Maybe for the reducers stuff or while  
reworking the SimpleXO / SimpleXPath tests. The latter uses sMock up to  
now.

Do DAs support mocking a class, too? How would you do that?


Nice.


Mmh, for me sMock works well with only one testing framework loaded. One  
can safely ignore the error message on load. Though, it would be nice to  
load the proper test class automagically, dependent on the loaded  
framework.

Regards, Steffen
&lt;/pre&gt;</description>
    <dc:creator>Steffen Märcker</dc:creator>
    <dc:date>2013-05-14T17:12:32</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25043">
    <title>Re: Reducers in Smalltalk (errata)</title>
    <link>http://permalink.gmane.org/gmane.comp.lang.smalltalk.vwnc/25043</link>
    <description>&lt;pre&gt;Two minor points.

1. Reducer class&amp;gt;&amp;gt;filter:from: should be:

2. You can write short
for

Regards,
Steffen
&lt;/pre&gt;</description>
    <dc:creator>Steffen Märcker</dc:creator>
    <dc:date>2013-05-14T17:12:33</dc:date>
  </item>
  <textinput rdf:about="http://search.gmane.org/?group=$group=gmane.comp.lang.smalltalk.vwnc">
    <title>Search Engine</title>
    <description>Search the mailing list at Gmane</description>
    <name>query</name>
    <link>http://search.gmane.org/?group=$group=gmane.comp.lang.smalltalk.vwnc</link>
  </textinput>
</rdf:RDF>
