Passo dopo passo la formica dove arriva?

programmazione

#1

Mesi fa avevo parlato di automi cellulari con la mia versione del game of life, oggi vi voglio far vedere un altro “giochino” che si presta molto bene al essere trasformato in codice, la formica di Langton.
Di cosa si tratta? Abbiamo un piano pieno di caselle, inizialmente tutte bianche. In mezzo c’è la nostra formica.
Se la casella dove si trova la formica è bianca, la formica andrà nella casella alla sua sinistra, e la cella dove si trovava inizialmente diventa nera. Se la casella dove si trova la formica invece è nera, la formica andrà a destra e la casella dove si trovava diventerà bianca.
Come sarà il nostro campo dopo x passi? Di seguito vediamo che fine ha fatto la nostra formica dopo 25000 passi in un campo di grandezza 200x200.
download
Qui la mia versione in javascript che scrissi qualche tempo fa.

Queste sono le regole di base. Altri hanno aggiunto nuove regole abbinandole ad altri colori, con risultati interessanti.


#2

Te lo avevo già segnalato nell’altra discussione, ma forse ti è sfuggito il riferimento: AoC2017/22.


#3

Avevo visto il post ma non ero andato più avanti :sweat_smile:


#4

Di tutte le implementazioni del “Game of Life” in cui mi sono imbattuto, la più illuminante è sicuramente quella in APL. Splendido linguaggio di programmazione. Peccato che nelle sue incarnazioni moderne (principalmente q/kdb+) sia utilizzato quasi esclusivamente in ambito bancario/finanziario, che non è propriamente il mio campo di interesse.


#5

è una mia impressione o ci sono linguaggi “vecchi” che sono al passo col tempo ma vengono disdegnati perché vecchi?


#6

Non è tanto una questione di età quanto della cultura dominante che deriva dal C. Se non fai come C, sei strano, e se sei strano puoi essere valido quanto vuoi ma avrai una vita complicata.
Storicamente APL è stato rifiutato a priori da molti perché utilizzava dei caratteri non ASCII, e richiedeva una tastiera particolare, come ad esempio questa meraviglia. Implementazioni più recenti utilizzano solo caratteri ASCII ed a volte intere parole chiave nel tentativo di rendere il linguaggio più digeribile, perdendo però quella eleganza matematica che lo identificava. Resta comunque strano ai più, non fosse altro perché si legge da destra a sinistra, caratteristica comune anche a Forth, che è la base su cui è stato implementato prima il postscript e poi il pdf, a dimostrare come anche se di un linguaggio non se ne sente spesso parlare, capita spesso di utilizzarlo quotidianamente senza saperlo.
Detto questo, a me i linguaggi “strani” piacciono assai…


#7

[OT]Avevo visto un video qualche settimana fa che parlava della space cadet.
Mi piacerebbe mettere le mani su una lisp machine. è affascinante l’idea di una macchina concepita per uno specifico linguaggio, dove tutto è scritto in quel linguaggio e tutto può essere modificato.[/OT]