Hi!

Is that it's only use? Then why? dip can easily be formulated using
non-retain stack using primitives:

For example: "a" "b" "c" [ append ] dip -> "a" "b" "c" -rot append swap


2014-05-15 22:49 GMT+02:00 Slava Pestov <sl...@factorcode.org>:
> Hi Bjorn,
>
> The retain stack is used to implement the 'dip' combinator.
>
> Slava
>
>
> On Thu, May 15, 2014 at 1:46 PM, Björn Lindqvist <bjou...@gmail.com> wrote:
>>
>> Hi everyone,
>>
>> I've been walking around in Factors VM for a while and there is a lot
>> of usages and references to "the retain stack." But I can't for my
>> life figure out what its purpose is or why anyone ever would want one
>> when there is a perfectly good data stack already available.
>>
>> I only found these two posts by Slava Pestov about it:
>>
>>
>> http://article.gmane.org/gmane.comp.lang.factor.general/1931/match=retain+stack
>>
>> http://factor-language.blogspot.se/2010/07/overhauling-factors-c-library-interface.html
>>
>> "In the future, I intend on using GC maps at call sites of Factor
>> words as well, instead of spilling temporary values to the retain
>> stack; then I can eliminate the retain stack altogether, freeing up a
>> register. After this is done the data stack will only be used to pass
>> parameters between words, and not to store temporaries within a word.
>> This will allow more values to be unboxed in more situations, and it
>> will improve accuracy of compiler analyses."
>>
>> So the retain stack is useless? Freeing up a whole register sounds
>> like it should be great for performance, at least on 32 bit x86.
>>
>>
>> --
>> mvh/best regards Björn Lindqvist
>>
>>
>> ------------------------------------------------------------------------------
>> "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
>> Instantly run your Selenium tests across 300+ browser/OS combos.
>> Get unparalleled scalability from the best Selenium testing platform
>> available
>> Simple to use. Nothing to install. Get started now for free."
>> http://p.sf.net/sfu/SauceLabs
>> _______________________________________________
>> Factor-talk mailing list
>> Factor-talk@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/factor-talk
>
>
>
> ------------------------------------------------------------------------------
> "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
> Instantly run your Selenium tests across 300+ browser/OS combos.
> Get unparalleled scalability from the best Selenium testing platform
> available
> Simple to use. Nothing to install. Get started now for free."
> http://p.sf.net/sfu/SauceLabs
> _______________________________________________
> Factor-talk mailing list
> Factor-talk@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/factor-talk
>



-- 
mvh/best regards Björn Lindqvist

------------------------------------------------------------------------------
"Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
Instantly run your Selenium tests across 300+ browser/OS combos.
Get unparalleled scalability from the best Selenium testing platform available
Simple to use. Nothing to install. Get started now for free."
http://p.sf.net/sfu/SauceLabs
_______________________________________________
Factor-talk mailing list
Factor-talk@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/factor-talk

Reply via email to