Thanks, I think I finally found that idiomatic solution. I have a string that I want to match against a regular expression. However, group capture is not supported :(
So, except for the first two elements, I can simply split the string upon a comma delimiter Now, I need to match against each of these strings. So I have { ~slice~ ~slice~ ... } { regex regex ... } At first I was trying to use "spread", but then I found 2map. This left me with "1:0,z1 ,approach,any,presence,0,1,1,0,presence,0,presence,0" R/ ,/ re-split ! now I have a sequence of slices [ >string ] map ! now I have a sequence of strings { R/ \d+:\d+/ R/ .{6}/ R/ (approach|detect)/ R/ (any|down)/ R/ (presence|extension|delay|pulse|count|lowcontrast|demand|passage|cso|none)/ R/ \d+/ R/ \d+/ R/ \d+/ R/ \d+/ R/ (presence)/ R/ \d+/ R/ (presence)/ R/ \d+/ } [ first-match ] 2map ! now have sequence of slices/f dup [ >boolean ] all? [ [ >string ] map ] [ "not matched" print ] if --Jeff -----Original Message----- From: Jon Harper [mailto:jon.harpe...@gmail.com] Sent: Wednesday, November 17, 2010 2:08 AM To: factor-talk@lists.sourceforge.net Subject: Re: [Factor-talk] How do I construct a sequence from values onthestack from http://docs.factorcode.org/content/article-cookbook-philosophy.html "If you find yourself wishing you could iterate over the datastack, or capture the contents of the datastack into a sequence, or push each element of a sequence onto the datastack, there is almost always a better way. Use Sequence operations instead." Why did you want to do these 2 operations ? We might be able to find a more idiomatic solution. Jon On Wed, Nov 17, 2010 at 6:55 AM, Doug Coleman <doug.cole...@gmail.com> wrote: > ``[ ] each'' won't compile in a Factor word. You can use it in the > repl, but even this may chnage in the future if repl expressions are > compiled with the optimizing compiler before being executed. > > All Factor code should know the stack height difference after a word > executes. In this case, the stack height will depend on how many > elements are in the array, so you can't know the heights at > compile-time. Also, your datastack will overflow if your array is too > big. > > Stick to the narray/firstn macros. > > Doug > > On Tue, Nov 16, 2010 at 11:33 PM, Jim mack <j...@less2do.com> wrote: >> [ ] each >> >> On Tue, Nov 16, 2010 at 6:56 PM, Jeff C. Britton <j...@iteris.com> wrote: >>> >>> Thanks, but now I want to do the reverse. >>> Stack Top Some Word New Stack Top >>> { 2 4 8 16 32 } ? 32 >>> 16 >>> 8 >>> 4 >>> 2 >>> >>> -----Original Message----- >>> From: Chris Double [mailto:chris.dou...@double.co.nz] >>> Sent: Tuesday, November 16, 2010 6:01 PM >>> To: factor-talk@lists.sourceforge.net >>> Subject: Re: [Factor-talk] How do I construct a sequence from values on >>> thestack >>> >>> On Wed, Nov 17, 2010 at 2:56 PM, Jeff C. Britton <j...@iteris.com> wrote: >>> > What "word" do I need? >>> >>> There are worlds like 1array, 2array, 3array and 4array to produce an >>> array from that many items on the stack. There is also 'narray' which >>> is a generalisation of these for any number. eg: >>> >>> 2 4 8 16 32 4 narray => { 2 4 8 16 } >>> >>> Chris. >>> -- >>> http://www.bluishcoder.co.nz >>> >>> ------------------------------------------------------------------------ >>> ------ >>> Beautiful is writing same markup. Internet Explorer 9 supports >>> standards for HTML5, CSS3, SVG 1.1, ECMAScript5, and DOM L2 & L3. >>> Spend less time writing and rewriting code and more time creating great >>> experiences on the web. Be a part of the beta today >>> http://p.sf.net/sfu/msIE9-sfdev2dev >>> _______________________________________________ >>> Factor-talk mailing list >>> Factor-talk@lists.sourceforge.net >>> https://lists.sourceforge.net/lists/listinfo/factor-talk >>> >>> >>> ------------------------------------------------------------------------------ >>> Beautiful is writing same markup. Internet Explorer 9 supports >>> standards for HTML5, CSS3, SVG 1.1, ECMAScript5, and DOM L2 & L3. >>> Spend less time writing and rewriting code and more time creating great >>> experiences on the web. Be a part of the beta today >>> http://p.sf.net/sfu/msIE9-sfdev2dev >>> _______________________________________________ >>> Factor-talk mailing list >>> Factor-talk@lists.sourceforge.net >>> https://lists.sourceforge.net/lists/listinfo/factor-talk >> >> >> >> -- >> Jim >> "I'm for extending the working Medicare program for our seniors all the way >> back to contraception, so Americans can concentrate on living their lives >> without fear of changing a job, going bankrupt from deductibles or fighting >> HMO bureaucracy." >> >> ------------------------------------------------------------------------------ >> Beautiful is writing same markup. Internet Explorer 9 supports >> standards for HTML5, CSS3, SVG 1.1, ECMAScript5, and DOM L2 & L3. >> Spend less time writing and rewriting code and more time creating great >> experiences on the web. Be a part of the beta today >> http://p.sf.net/sfu/msIE9-sfdev2dev >> _______________________________________________ >> Factor-talk mailing list >> Factor-talk@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/factor-talk >> >> > > ------------------------------------------------------------------------------ > Beautiful is writing same markup. Internet Explorer 9 supports > standards for HTML5, CSS3, SVG 1.1, ECMAScript5, and DOM L2 & L3. > Spend less time writing and rewriting code and more time creating great > experiences on the web. Be a part of the beta today > http://p.sf.net/sfu/msIE9-sfdev2dev > _______________________________________________ > Factor-talk mailing list > Factor-talk@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/factor-talk > ------------------------------------------------------------------------------ Beautiful is writing same markup. Internet Explorer 9 supports standards for HTML5, CSS3, SVG 1.1, ECMAScript5, and DOM L2 & L3. Spend less time writing and rewriting code and more time creating great experiences on the web. Be a part of the beta today http://p.sf.net/sfu/msIE9-sfdev2dev _______________________________________________ Factor-talk mailing list Factor-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/factor-talk ------------------------------------------------------------------------------ Beautiful is writing same markup. Internet Explorer 9 supports standards for HTML5, CSS3, SVG 1.1, ECMAScript5, and DOM L2 & L3. Spend less time writing and rewriting code and more time creating great experiences on the web. Be a part of the beta today http://p.sf.net/sfu/msIE9-sfdev2dev _______________________________________________ Factor-talk mailing list Factor-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/factor-talk