The key question is
"what do you mean by improve"?
I'd start by asking
"what are you doing that you will still have to do in
part 2, and what won't
you do?"�� So looking at part 2, you will want to
convert the lines to
integers, and
�� input := Array
streamContents: [:lines |
�� �� 'input.txt'
asFileReference readStreamDo: [:in |
�� �� �� [in atEnd]
whileFalse: [lines nextPut: in nextLine asInteger]]].
gives you a chunk of
code you can use in both parts.�� So you might
want to have
Day1
�� changesFrom:
aFileName
�� �� ^Array
streamContents: [:changes |
�� �� �� aFileName
asFileReference readStreamDo: [:in |
�� �� �� �� [in atEnd]
whileFalse: [changes nextPut: in nextLine asInteger]]]
�� partOne: aFileName
�� �� ^(self
changesFrom: aFileName) sum
�� partTwo: aFileName
�� �� ...
The file name should
not be wired in because you want some test files.