Fix path generation for Project Euler problem files

db4
Aaron Schaefer 2008-01-02 19:11:08 -05:00
parent a2bcdaf696
commit 75c126fef0
2 changed files with 7 additions and 33 deletions

View File

@ -27,18 +27,9 @@ IN: project-euler.022
<PRIVATE <PRIVATE
: (source-022) ( -- path )
[
"project-euler.022" vocab-root ?resource-path %
os "windows" = [
"\\project-euler\\022\\names.txt" %
] [
"/project-euler/022/names.txt" %
] if
] "" make ;
: source-022 ( -- seq ) : source-022 ( -- seq )
(source-022) file-contents [ quotable? ] subset "," split ; "extra/project-euler/022/names.txt" resource-path
file-contents [ quotable? ] subset "," split ;
: alpha-value ( str -- n ) : alpha-value ( str -- n )
string>digits [ 9 - ] sigma ; string>digits [ 9 - ] sigma ;

View File

@ -37,14 +37,14 @@ IN: project-euler.067
<PRIVATE <PRIVATE
: pyramid ( -- seq ) : source-067 ( -- seq )
"resource:extra/project-euler/067/triangle.txt" ?resource-path "extra/project-euler/067/triangle.txt" resource-path
<file-reader> lines [ " " split [ string>number ] map ] map ; <file-reader> lines [ " " split [ string>number ] map ] map ;
PRIVATE> PRIVATE>
: euler067 ( -- answer ) : euler067 ( -- answer )
pyramid propagate-all first first ; source-067 propagate-all first first ;
! [ euler067 ] 100 ave-time ! [ euler067 ] 100 ave-time
! 18 ms run / 0 ms GC time ! 18 ms run / 0 ms GC time
@ -53,30 +53,13 @@ PRIVATE>
! ALTERNATE SOLUTIONS ! ALTERNATE SOLUTIONS
! ------------------- ! -------------------
<PRIVATE
: (source-067a) ( -- path )
[
"project-euler.067" vocab-root ?resource-path %
os "windows" = [
"\\project-euler\\067\\triangle.txt" %
] [
"/project-euler/067/triangle.txt" %
] if
] "" make ;
: source-067a ( -- triangle )
(source-067a) <file-reader> lines [ " " split [ string>number ] map ] map ;
PRIVATE>
: euler067a ( -- answer ) : euler067a ( -- answer )
source-067a max-path ; source-067 max-path ;
! [ euler067a ] 100 ave-time ! [ euler067a ] 100 ave-time
! 15 ms run / 0 ms GC ave time - 100 trials ! 15 ms run / 0 ms GC ave time - 100 trials
! source-067a [ max-path ] curry 100 ave-time ! source-067 [ max-path ] curry 100 ave-time
! 3 ms run / 0 ms GC ave time - 100 trials ! 3 ms run / 0 ms GC ave time - 100 trials
MAIN: euler067a MAIN: euler067a