[bcn-pm] Reunió aquest dijous.

mimosinnet mimosinnet a gmail.com
dis jun 18 13:57:01 PDT 2016


El Thursday, 09 de June del 2016 a les 09:22, Jose Luis Perez Diez va 
escriure:

>He pujat la meva solució amb un historials de commits  (mancarien test 
>per les funcions auxiliars ja que els volia fer amb boards de 2,2 que o 
>son solucions estàtiques o només duren un cicle; 4,4 blinkers; 5,5 
>spacehips ...
>
>https://github.com/barcelonapm/Game_Life_Dojo/tree/jluis_idea

M'he passat una estona mirant el codi i m'ha agradat molt la solució 
(treballar amb una línia de cèl·lules i fer la taula a partir de de les 
dimensions de la taula). Al provar-ho surt:

perl6 life_game.pl
4,5,0000000*00000*00***0
(4,5),
     00000
     00*00
     000*0
     0***0
(4,5),
     .*.*.
     .....
     .*.*.
     ..**.
(4,5),
     ...*.
     .....
     ...*.
     .*.**
(4,5),
     ..***
     .....
     ..***
     ...**
(4,5),
     ..*.*
     .....
     ..*.*
     *....

No sembla que es compleix aquesta regla:
1. Any live cell with fewer than two live neighbours dies, as if caused by underpopulation.

I resseguint el codi, m'he perdut en aquests càlculs:
---
   sub neighbours(Int $row,Int $col,Int $rows,Int $cols) {
          (
           (($row - 2) % $rows) * $cols + ($col -2) % $cols,
           (($row - 2) % $rows) * $cols + ($col -1) % $cols,
           (($row - 2) % $rows) * $cols + $col % $cols,
           (($row - 1) % $rows) * $cols + ($col -2) % $cols,
           (($row - 1) % $rows) * $cols + $col % $cols,
           ($row % $rows) * $cols + ($col -2) % $cols,
           ($row % $rows) * $cols + ($col -1) % $cols,
		   ($row % $rows) * $cols + $col % $cols)
   }
---

Si hi poso els valors, per la casella 1,1, la funció neighbours té els 
següents paràmetres: (1,1,4,5)

Curiosament, 

$ perl -e 'print ( (1 - 2) % 4) * 5  + (1 -2) % 5'
3

$ perl6 -e 'say  ( (1 - 2) % 4) * 5  + (1 -2) % 5'
19

bc 1.06.95
( (1 - 2) % 4) * 5  + (1 -2) % 5
-6

ಠ_ಠ    ಠ_ಠ    ಠ_ಠ    ಠ_ಠ    ಠ_ಠ  :O

En tot cas, el concepte està clar i mostra la facilitat d'escriptura i 
de lectura de perl6.

Moltes gràcies per fer el codi i compartir-lo! M'ha servit per aprendre 
forces coses de perl6. 

( ͡° ͜ʖ ͡°)    ( ͡° ͜ʖ ͡°)    ( ͡° ͜ʖ ͡°) 


Més informació sobre la llista de correu Barcelona-pm