Holy..!

  That's a helluva lot shorter than my version!
  I have so much to learn.

  Thank you for this lesson, master. : )

  Also, performance measurements show that "map concat" is about 10% faster 
than "map-flat".

16.09.2015, 17:59, "John Benediktsson" <mrj...@gmail.com>:
> I think map concat is a simpler approach:
>
> CONSTANT: R2460 $[
>     { "LL" "DL" "FWL" "BLL" "ULL" "LR" "VP" "MP" "LP" "AT" "VT" "SS" }
>     [ 64 iota [ "%s[%02d]" sprintf ] with map ] map concat
> ]
>
> On Wed, Sep 16, 2015 at 7:15 AM, Alexander Ilin <ajs...@yandex.ru> wrote:
>> Hi, John!
>>
>>   Here's my code up to the map-flat point.
>>
>> : num>str ( n -- string )
>>   number>string 2 CHAR: 0 pad-head ;
>>
>> : idx[] ( n -- string )
>>   num>str "[" "]" surround ;
>>
>> : idx ( name n -- seq )
>>   iota [ idx[] dupd append ] map nip ;
>>
>> : R2460 ( -- seq )
>>   { "LL" "DL" "FWL" "BLL" "ULL" "LR" "VP" "MP" "LP" "AT" "VT" "SS" } [ 64 
>> idx ] map-flat ;
>>
>>   What I need is a list of strings containing
>>   "LL[00]"
>>   "LL[01]"
>>   "LL[02]"
>> ...
>>   "LL[63]"
>>   "DL[00]"
>>   "DL[01]"
>> ...
>>   "DL[63]"
>>   "FWL[00]"
>>   "FWL[00]"
>> ...
>>   "FWL[63]"
>> ...
>>   "SS[63]"
>>
>>   This list after some more transformations becomes an XML configuration 
>> file for Matrikon OPC Explorer, and R2460 is one of the device types 
>> supported by my configuration generator in Factor.
>>
>> 16.09.2015, 17:00, "John Benediktsson" <mrj...@gmail.com>:
>>> Hi Alexander,
>>>
>>> I'm not quite clear what functionality you are looking for, could you 
>>> provide a quick example?
>>>
>>> Also, compiler.utilities isn't really a very public vocabulary so those 
>>> things might change or move around depending on what the compiler needs are.
>>>
>>> Thanks,
>>> John.
>>>
>>> On Wed, Sep 16, 2015 at 2:04 AM, Alexander Ilin <ajs...@yandex.ru> wrote:
>>>> Hello!
>>>>
>>>>   When two functions (effectively) produce the same end result, I often 
>>>> prefer to use the one that is lighter on the computer resources.
>>>>
>>>>   The following two functions are equivalent in my use case:
>>>>   map compose
>>>>   map-flat
>>>>
>>>>   The latter one is from compiler.utilities, and it seems more complicated 
>>>> in its implementation than the former. Please, help me decide which is 
>>>> better performance- and memory-wise.
>>
>> ---=====---
>> Александр
>>
>> ------------------------------------------------------------------------------
>> Monitor Your Dynamic Infrastructure at Any Scale With Datadog!
>> Get real-time metrics from all of your servers, apps and tools
>> in one place.
>> SourceForge users - Click here to start your Free Trial of Datadog now!
>> http://pubads.g.doubleclick.net/gampad/clk?id=241902991&iu=/4140
>> _______________________________________________
>> Factor-talk mailing list
>> Factor-talk@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/factor-talk
> ,
>
> ------------------------------------------------------------------------------
> Monitor Your Dynamic Infrastructure at Any Scale With Datadog!
> Get real-time metrics from all of your servers, apps and tools
> in one place.
> SourceForge users - Click here to start your Free Trial of Datadog now!
> http://pubads.g.doubleclick.net/gampad/clk?id=241902991&iu=/4140
> ,
>
> _______________________________________________
> Factor-talk mailing list
> Factor-talk@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/factor-talk


---=====---
Александр

------------------------------------------------------------------------------
Monitor Your Dynamic Infrastructure at Any Scale With Datadog!
Get real-time metrics from all of your servers, apps and tools
in one place.
SourceForge users - Click here to start your Free Trial of Datadog now!
http://pubads.g.doubleclick.net/gampad/clk?id=241902991&iu=/4140
_______________________________________________
Factor-talk mailing list
Factor-talk@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/factor-talk

Reply via email to