factor-talk
[Prev] Thread [Next] | [Prev] Date [Next]
Re: [Factor-talk] Using the literals vocabulary? Joe Groff Tue Jun 16 09:01:43 2009
On Jun 15, 2009, at 4:12 PM, Charles Turner wrote:
> In my particular use, I >AM< creating multi-dimensional array
> constants for later use, so I think the literal vocabulary would be
> appropriate.
>
> I suppose I could include more of the code that generates the two
> source arrays, but it does bring up the question of how to accomplish
> this by other means. Time to go back and re-read the vocabulary
> pages...
Like you said, you'd need to put all the operands inside your $[ ]
block to use literals:
CONSTANT: heads $[ { { 1 2 3 } { 1 2 3 } { 1 2 3 } } { 3 2 1 }
[ head ] 2map ]
The $[ ] syntax kinda sucks for complex expressions like this. You
might be better served by using MEMO: words and factoring out the
simpler components from which you're building your complex constants.
With no parameters, a MEMO: word will run only the first time it's
called and cache the result:
CONSTANT: bodies { { 1 2 3 } { 1 2 3 } { 1 2 3 } }
CONSTANT: head-sizes { 3 2 1 }
MEMO: heads ( -- x ) bodies head-sizes [ head ] 2map ;
-Joe
------------------------------------------------------------------------------
Crystal Reports - New Free Runtime and 30 Day Trial
Check out the new simplified licensing option that enables unlimited
royalty-free distribution of the report engine for externally facing
server and web deployment.
http://p.sf.net/sfu/businessobjects
_______________________________________________
Factor-talk mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/factor-talk
- [Factor-talk] Using the literals vocabulary? Charles Turner
- Re: [Factor-talk] Using the literals vocabulary? Joe Groff
- Re: [Factor-talk] Using the literals vocabulary? Slava Pestov
- Re: [Factor-talk] Using the literals vocabulary? Charles Turner
- Re: [Factor-talk] Using the literals vocabulary? Joe Groff <=
- Re: [Factor-talk] Using the literals vocabulary? Charles Turner