Le variabili in python e la gestione della memoria tramite il reference count: posso applicare queste tecnologie alle modalità di attacco nel gioco negli scacchi?

Assegnare un nome a una variabile in Python significa indirizzare un puntatore verso un oggetto che ha caratteristiche precise la cui identità viene assegnata in automatico. Ad esempio a = 20 genera un nome a cui viene assegnata una variabile di tipo intero che ha valore 20 tramnite l’operatore di assegnazione = da non confondere con == che serve a testare alcune condizioni nelle istruzioni condizionali. In Python esistono gli oggetti che hanno tre caratteristiche: identità, tipo e valore. Questi oggetti possono essere condivisi ad esempio a=20 e b=a genera una situazione condivisa non 2 oggetti di tipo diverso. Serve però un elemento di gestione e cioé un contatore che viene definito come reference count per la gestione della memoria nel caso specifico se faccio a=20 genero un indice uno nel reference count mentre b=a genera un indice due, posso anche dare un del b e scalo automaticamente in decremento di nuovo a indice zero. Quando l’indice arriva a zero la garbage collection elimina automaticamente l’oggetto che occupa memoria. Gli array di PHP qui si chiamano semplicemente LISTE e sono oggetti che hanno una carta di identità diversa rispetto a stringhe ed interi. Con la versione 3 di Python i nomi delle variabili accettano anche caratteri unicode, per approfndimenti visitare link https://it.wikipedia.org/wiki/Unicode. Con queste premesse veniamo a valutare se una idea di incremento come quella vista in python con la reference possa essere utile anche all’ agonista di scacchi che attaccando deve buttare costantemente legna da ardere nel caminetto per alimentare complicazioni. Un esempio di partita che ha queste caratteristiche é la prima commentata da Aagard nel manuale del giocatore di attacco del 2010 che risulta essere molto interessante perché la singola funzionalità delle mosse viene spiegata con l’esperienza del maestro e anche con il supporto di valutazioni informatiche. Essendo del 2010 qualche piccolo dettaglio nelle analisi di Aagard non viene colto ma non potrebbe essere altrimenti perché le situazioni sono molto complesse e anche le idee diverse e multiformi. Del resto come precisa l’autore l’importante non é analizzare tutto alla perfezione ma capire perché il gioco di attacco ha bisogno di certe caratteristiche come potrebbe essere quella analitica del reference count di Python. Niklic – Jungle corrispondenza 1980 apertura Orang-Utang

1. b4 e5! 2. Bb2 Bxb4 3. Bxe5 Nf6 4. Nf3 Nc6 5. Bb2 O-O 6. e3 d5 7. c4 Re8 8. cxd5 Nxd5 9. Be2 Rxe3 !?

(9… Bg4)

10. fxe3 Nxe3 11. Qb3

[11. Qa4 ?! Qe7 (11… Bd7 !); 11. Qc1 Bf5 12. Na3 Nxg2+ (12… Bxa3 13. dxe3) 13. Kf2 Nf4 14. Bf1 Bxa3 15. Bxa3 Ne5 16. Qc3 Ned3+ 17. Bxd3 Nxd3+ 18. Kg3 c5 19. Rhf1 Qd6+]

11… Qe7 12. Kf2 ?

(12. Ne5 Nxg2+ 13. Kd1 Nxe5 14. Qg3 Bxd2!! (14… f6 15. Qxg2 Bd7 16. Rg1 Bc6) 15. Qxe5 (15. Nxd2 Ng4) 15… Qxe5 16. Bxe5 Bh6)

12…Ng4+ 13. Kf1

(13. Ke1 Be6)

13… Be6 14. Qa4

(14. Qc2 Re8 15. Nc3 Qc5; 14. Qd3 Qc5 15. Bd4 Qc1+ 16. Ne1 Nxd4 17. Qxd4 c5)

14… Re8

(14… Bc4 15. Bxc4 Qc5 16. Bxf7+ Kxf7 17. Nd4 Rf8)

15. Nc3

(15. Na3 Bxd2 16. Nxd2 Bf5 17. Re1 Qe3; 15. h3 Bb3 16. Qb5 a6 17. Qd3 Bc2 18. hxg4 Bxd3 19. Bxd3)

15… Bd5! 16. Qb5

(16. Re1 Bxf3 17. gxf3 Qh4 18. fxg4 Qh3+ 19. Kf2 Bc5+; 16. Qd1 Qc5 17. d4 Ne3+ 18. Kg1 Nxd1 19. dxc5 Nxc3 20. Bxc3 Bxc3)

16… Bxc3 17. Bxc3 a6 18. Qd3 Be4! 19. Bb4

[19. Qc4 b5 20. Bf6 (20. Qb3 Bc2) 20… Nxf6 21. Qb3 Bd5 22. Qe3 Qd6 23. Qf2 Ng4 24. Qg3 Bxf3 25. Qxf3 Nd4 26. Qxg4 Qf6+]

19… Nxb4 20. Qa3 Bd3! 21. Bxd3 Qc5 22. Bxh7+ Kxh7 23. d4 Qc2 24. Ng5+ Kg6 25. Qg3 Qc4+ 0-1

Annunci

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione /  Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione /  Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione /  Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione /  Modifica )

Connessione a %s...