home
/
code
/
cellular-automata.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
7f96860
)
No need to recalculate X(W) and Y(H) again.
author
Siraaj Khandkar
<siraaj@khandkar.net>
Wed, 8 Aug 2012 23:19:56 +0000
(19:19 -0400)
committer
Siraaj Khandkar
<siraaj@khandkar.net>
Wed, 8 Aug 2012 23:19:56 +0000
(19:19 -0400)
003/src/life.erl
patch
|
blob
|
blame
|
history
diff --git
a/003/src/life.erl
b/003/src/life.erl
index
2e7114c
..
806d2cb
100644
(file)
--- a/
003/src/life.erl
+++ b/
003/src/life.erl
@@
-15,17
+15,17
@@
bang(Args) ->
[X, Y] = [atom_to_integer(A) || A <- Args],
Board = init_board(X, Y),
bang(Args) ->
[X, Y] = [atom_to_integer(A) || A <- Args],
Board = init_board(X, Y),
- life_loop(Board).
+ life_loop(
X, Y,
Board).
%% ============================================================================
%% Internal
%% ============================================================================
%% ============================================================================
%% Internal
%% ============================================================================
-life_loop(Board) ->
+life_loop(
X, Y,
Board) ->
ok = do_print_board(Board),
timer:sleep(?INTERVAL),
ok = do_print_board(Board),
timer:sleep(?INTERVAL),
- life_loop(
next_generation(
Board)).
+ life_loop(
X, Y, next_generation(X, Y,
Board)).
do_print_board(Board) ->
do_print_board(Board) ->
@@
-57,10
+57,7
@@
state_to_char(0) -> ?CHAR_DEAD;
state_to_char(1) -> ?CHAR_ALIVE.
state_to_char(1) -> ?CHAR_ALIVE.
-next_generation(Board) ->
- H = array:size(Board),
- W = array:size(array:get(0, Board)),
-
+next_generation(W, H, Board) ->
array:map(
fun(Y, Row) ->
array:map(
array:map(
fun(Y, Row) ->
array:map(
This page took
0.025183 seconds
and
4
git commands to generate.