Merge branch 'master' of git://factorcode.org/git/factor

db4
John Benediktsson 2009-05-18 16:58:19 -07:00
commit e6eff0adb8
3 changed files with 9 additions and 6 deletions

View File

@ -33,7 +33,7 @@ ARTICLE: { "lists.lazy" "construction" } "Constructing lazy lists"
{ $subsection 1lazy-list }
{ $subsection 2lazy-list }
{ $subsection 3lazy-list }
{ $subsection seq>list }
{ $subsection sequence-tail>list }
{ $subsection >list }
{ $subsection lfrom } ;
@ -105,15 +105,15 @@ HELP: lfrom
{ $values { "n" "an integer" } { "list" "a lazy list of integers" } }
{ $description "Return an infinite lazy list of incrementing integers starting from n." } ;
HELP: seq>list
HELP: sequence-tail>list
{ $values { "index" "an integer 0 or greater" } { "seq" "a sequence" } { "list" "a list" } }
{ $description "Convert the sequence into a list, starting from " { $snippet "index" } "." }
{ $see-also >list } ;
HELP: >list
{ $values { "object" "an object" } { "list" "a list" } }
{ $description "Convert the object into a list. Existing lists are passed through intact, sequences are converted using " { $link seq>list } " and other objects cause an error to be thrown." }
{ $see-also seq>list } ;
{ $description "Convert the object into a list. Existing lists are passed through intact, sequences are converted using " { $link sequence-tail>list } " and other objects cause an error to be thrown." }
{ $see-also sequence-tail>list } ;
{ leach foldl lazy-map ltake lfilter lappend lfrom lfrom-by lconcat lcartesian-product lcartesian-product* lcomp lcomp* lmerge lwhile luntil } related-words

View File

@ -31,10 +31,13 @@ IN: mason.report
write-xml
] with-file-writer ; inline
: file-tail ( file encoding lines -- seq )
[ file-lines ] dip short tail* "\n" join ;
:: failed-report ( error file what -- status )
[
error [ error. ] with-string-writer :> error
file utf8 file-lines 400 short tail* :> output
file utf8 400 file-tail :> output
[XML
<h2><-what-></h2>

View File

@ -172,7 +172,7 @@ M: or-parser parse ( input parser1 -- list )
#! Return the combined list resulting from the parses
#! of parser1 and parser2 being applied to the same
#! input. This implements the choice parsing operator.
parsers>> 0 swap seq>list
parsers>> sequence>list
[ parse ] with lazy-map lconcat ;
: trim-head-slice ( string -- string )