use input<sequence in usa-cities

db4
Doug Coleman 2009-01-08 17:48:17 -06:00
parent 5135a2499a
commit cf160c60ea
2 changed files with 18 additions and 10 deletions

View File

@ -0,0 +1,6 @@
! Copyright (C) 2009 Doug Coleman.
! See http://factorcode.org/license.txt for BSD license.
USING: accessors kernel tools.test usa-cities ;
IN: usa-cities.tests
[ t ] [ 55406 find-zip-code name>> "Minneapolis" = ] unit-test

View File

@ -2,7 +2,7 @@
! See http://factorcode.org/license.txt for BSD license.
USING: io.files io.encodings.ascii sequences generalizations
math.parser combinators kernel memoize csv summary
words accessors math.order binary-search ;
words accessors math.order binary-search combinators.smart ;
IN: usa-cities
SINGLETONS: AK AL AR AS AZ CA CO CT DC DE FL GA HI IA ID IL IN
@ -30,7 +30,8 @@ first-zip name state latitude longitude gmt-offset dst-offset ;
MEMO: cities ( -- seq )
"resource:extra/usa-cities/zipcode.csv" ascii <file-reader>
csv rest-slice [
7 firstn {
[
{
[ string>number ]
[ ]
[ string>state ]
@ -38,7 +39,8 @@ MEMO: cities ( -- seq )
[ string>number ]
[ string>number ]
[ string>number ]
} spread city boa
} spread
] input<sequence city boa
] map ;
MEMO: cities-named ( name -- cities )