Page 4 of 5 FirstFirst 12345 LastLast
Results 46 to 60 of 69

Thread: Python If Annidati

  1. #46
    Master Chief Petty Officer Dr.Doomed's Avatar
    Join Date
    Jul 2005
    Location
    Latveria
    Posts
    2.067

    Default

    Quote Originally Posted by Hardcore View Post
    E' quello che sto cercando di dire, in C estetica non vuol dire funzionalità, non cambia assolutamente niente. Puoi tabbare o no, per rendere il codice leggibile, non hai aumenti di prestazioni.
    Ma poi dove avrei detto che mi da fastidio la tabulazione o avere un codice leggibile, ho pure scritto che dovrebbe essere obbligatorio scrivere codice leggibile.

    Per dovere di cronaca il codice di Carmack era veloce, quasi a livello di un SIMD, grazie a quel famoso Evil Number, che gli permetteva di approssimare la rsqrt. Non ha mai spiegato come l'abbia trovato o chi effettivamente l'abbia scoperto.
    Hai portato tu la questione su di un altro piano: dalla leggibilita` alla comprensibilita` del codice. Alla prima contribuisce grandemente l'uso logico delle tabulazioni, alla seconda un adeguato uso dei commenti. Il fatto che Carmack pisci sopra all'uso dei commenti e` una sua decisione personale, sta di fatto che poi e` dovuto andare a spiegare a voce a tutti, piu` o meno, il perche` di quella formula. Avesse commentato meglio il codice poteva spiegarlo una volta e basta.
    Cio` non inficia la qualita` del codice, chiaro, purche` l'algoritmo sia corretto, o meglio, purche` approssimi in modo tollerabile per quanto si vuole fare il comportamento desiderato.
    Le masse saranno sempre al di sotto della media. La maggiore età si abbasserà, la barriera del sesso cadrà, e la democrazia arriverà all'assurdo rimettendo la decisione intorno alle cose più grandi ai più incapaci.
    Sarà la punizione del suo principio astratto dell'uguaglianza, che dispensa l'ignorante di istruirsi, l'imbecille di giudicarsi, il bambino di essere uomo e il delinquente di correggersi. Il diritto pubblico fondato sulla uguaglianza andrà in pezzi a causa delle sue conseguenze.
    Perché non riconosce la disuguaglianza di valore, di merito, di esperienza, cioè la fatica individuale: culminerà nel trionfo della feccia e dell'appiattimento. L'adorazione delle apparenze si paga.
    "Frammenti di diario intimo", 12 giugno 1871

    They are entitled to their opinion but they suffer from the notable disadvantage of being completely wrong

    Discutere con certe persone è come giocare a scacchi con un piccione. Puoi essere anche il campione del mondo ma il piccione farà cadere tutti i pezzi, cagherà sulla scacchiera e poi se ne andrà camminando impettito come se avesse vinto lui.

    ~-~-~ νῦν μὴ κακά στοχάζομαι ~-~-~

  2. #47
    Master Chief Petty Officer Dr.Doomed's Avatar
    Join Date
    Jul 2005
    Location
    Latveria
    Posts
    2.067

    Default

    Quote Originally Posted by Hardcore View Post
    Esatto, a me pareva abbastanza chiaro che identare = aiutare una persona che legge il codice. Cosi come molti altri approcci nella codifica servono per rendere il codice comprensibile. Tutto il mio discorso era, mentre in C uso l'identazione per un utente, in python devo usarla anche riferito al compilatore. Ma i pro player non san leggere a quanto pare.
    Tab e graffe sempre un carattere sono: e` come stare a disquisire sul fatto che valga di piu` un euro tedesco o un euro francese.
    Circa fare una crociata per il diritto a scrivere codice di difficile lettura, liberissimo di farlo, ma non aspettarti approvazione globale e grande seguito.
    Le masse saranno sempre al di sotto della media. La maggiore età si abbasserà, la barriera del sesso cadrà, e la democrazia arriverà all'assurdo rimettendo la decisione intorno alle cose più grandi ai più incapaci.
    Sarà la punizione del suo principio astratto dell'uguaglianza, che dispensa l'ignorante di istruirsi, l'imbecille di giudicarsi, il bambino di essere uomo e il delinquente di correggersi. Il diritto pubblico fondato sulla uguaglianza andrà in pezzi a causa delle sue conseguenze.
    Perché non riconosce la disuguaglianza di valore, di merito, di esperienza, cioè la fatica individuale: culminerà nel trionfo della feccia e dell'appiattimento. L'adorazione delle apparenze si paga.
    "Frammenti di diario intimo", 12 giugno 1871

    They are entitled to their opinion but they suffer from the notable disadvantage of being completely wrong

    Discutere con certe persone è come giocare a scacchi con un piccione. Puoi essere anche il campione del mondo ma il piccione farà cadere tutti i pezzi, cagherà sulla scacchiera e poi se ne andrà camminando impettito come se avesse vinto lui.

    ~-~-~ νῦν μὴ κακά στοχάζομαι ~-~-~

  3. #48
    Ensign Hardcore's Avatar
    Join Date
    Sep 2006
    Location
    Modena
    Posts
    3.550

    Default

    Quote Originally Posted by Dr.Doomed View Post
    Tab e graffe sempre un carattere sono: e` come stare a disquisire sul fatto che valga di piu` un euro tedesco o un euro francese.
    Circa fare una crociata per il diritto a scrivere codice di difficile lettura, liberissimo di farlo, ma non aspettarti approvazione globale e grande seguito.
    Sei per caso Axet? No perchè io non ho mai detto niente di tutto questo.

    Quote Originally Posted by Hardcore View Post
    . Ergo l'estetica in C/Java/C++ si segue solo ed esclusivamente per rendere il codice leggibile, python ti obbliga a torto/ragione invece ad avere un codice esteticamente piacevole.
    Mi sembra che facciate i pro player per una questione che non esiste.
    Vuoi scrivere codice bello, fai pure. Io ho pagine di codice ottimizzato al cui interno vi sono sberle di SSE2, e segmenti __asm, e non è certo piacevole esteticamente.
    Sinceramente ritengo che scrivere del codice leggibile sia obbligatorio o comunque necessario per permettere successive modifiche o permettere a estranei di leggere il codice, ma questa è un regola di "educazione", non una regola dettata dal linguaggio o dal compilatore.
    Dove direi che bisogna scrivere codice illeggibile? Lo vedi solo tu.
    Ripeto un buon corso di comprensione dell'italiano vale 100 volte di piu di saper scrivere del codice.


  4. #49
    Hador's Avatar
    Join Date
    Mar 2004
    Location
    Milano
    Posts
    31.321

    Default

    il codice del magic number di carmack è chiarissimo ed è sempre stato chiarissimo, il problema stava nel capire perchè con quel numero funzionasse meglio. Ci sono molte altre implementazioni di sqrt in c che sono MOLTO più incomprensibili a livello di codice. Se vuoi fare le citazioni almeno falle bene

    A me non va di discutere, quel che intuisco però è che alla vostra università sono rimasti indietro di un 15-20 anni nell'insegnarvi a programmare :/

  5. #50
    Lieutenant Commander Axet's Avatar
    Join Date
    Sep 2003
    Location
    Ginevra
    Posts
    33.807

    Default

    E' qui la fuck fest?



    La scalata continua!

    edit:
    per esser pignoli si scrive INDENTARE, non IDENTARE. Ok che non sai che vuol dire ma almeno scrivilo bene

    I'm no hero. Never was. Never will be.
    -----
    Soul of the mind, key to life's ether
    Soul of the lost, withdrawn from its vessel
    May strength be granted so the world might be mended...
    So the world might be mended...

  6. #51
    Master Chief Petty Officer Dr.Doomed's Avatar
    Join Date
    Jul 2005
    Location
    Latveria
    Posts
    2.067

    Default

    Quote Originally Posted by Hardcore View Post
    Sei per caso Axet? No perchè io non ho mai detto niente di tutto questo.



    Dove direi che bisogna scrivere codice illeggibile? Lo vedi solo tu.
    Ripeto un buon corso di comprensione dell'italiano vale 100 volte di piu di saper scrivere del codice.
    Fare una crociata per il diritto a scrivere codice alla cazzo non e` scrivere codice a cazzo, come supportare i diritti dei gay non implica essere omosessuali, chiaro? Dobbiamo fare un disegno?

    Arrivi qui chiedendo aiuto su python, al primo reply ti forniscono la chiave per capire il problema e niente , al terzo lo esplicitano in toto e ancora a non capire, anzi ad insultare quando ti fanno pure notare la semplicita` della cosa.
    Perculi la scelta dell'indentazione forzata di python corroborando la tua visione con esempi contraddittori.
    Perculi gli agrari a tempo perso per motivi che sai solo tu, quando alla prossima solar flare degna di questo nome ci pisceranno in testa a tutti noi elettronici ed informatici
    Di tutti quelli che scrivono qui, l'unico che capisce quello che intendi sei tu e gli altri non sanno l'italiano. Come la barzelletta del matto contromano in autostrada.
    Ma la perla e` 3+2 anni di ing. informatica e non sapere che cos'e` l'indentazione.

    Dai stellina , prenditi una briosche, respira a fondo, lascia che il glucosio arrivi dove serve e poi torna qui a chiedere scusa per 'ste inutili 4 pagine di delirio informatico.
    Guarda, ti lascio un' ultima ancora di salvezza: bella trollata.
    Le masse saranno sempre al di sotto della media. La maggiore età si abbasserà, la barriera del sesso cadrà, e la democrazia arriverà all'assurdo rimettendo la decisione intorno alle cose più grandi ai più incapaci.
    Sarà la punizione del suo principio astratto dell'uguaglianza, che dispensa l'ignorante di istruirsi, l'imbecille di giudicarsi, il bambino di essere uomo e il delinquente di correggersi. Il diritto pubblico fondato sulla uguaglianza andrà in pezzi a causa delle sue conseguenze.
    Perché non riconosce la disuguaglianza di valore, di merito, di esperienza, cioè la fatica individuale: culminerà nel trionfo della feccia e dell'appiattimento. L'adorazione delle apparenze si paga.
    "Frammenti di diario intimo", 12 giugno 1871

    They are entitled to their opinion but they suffer from the notable disadvantage of being completely wrong

    Discutere con certe persone è come giocare a scacchi con un piccione. Puoi essere anche il campione del mondo ma il piccione farà cadere tutti i pezzi, cagherà sulla scacchiera e poi se ne andrà camminando impettito come se avesse vinto lui.

    ~-~-~ νῦν μὴ κακά στοχάζομαι ~-~-~

  7. #52
    Ensign Hardcore's Avatar
    Join Date
    Sep 2006
    Location
    Modena
    Posts
    3.550

    Default

    Quote Originally Posted by Hador View Post
    il codice del magic number di carmack è chiarissimo ed è sempre stato chiarissimo, il problema stava nel capire perchè con quel numero funzionasse meglio. Ci sono molte altre implementazioni di sqrt in c che sono MOLTO più incomprensibili a livello di codice. Se vuoi fare le citazioni almeno falle bene

    A me non va di discutere, quel che intuisco però è che alla vostra università sono rimasti indietro di un 15-20 anni nell'insegnarvi a programmare :/
    Fu talmente chiaro che Carmak lo dovette spiegare al QuakeCon come e perchè avesse usato quel numero. Ma sicuro in Bicocca lo sapevate già N anni prima

    Doomed guarda gli esempi di risposta alla mia domanda erano talmente corretti, che lanciati in python facevano tutt'altro...

    Ti ripeto dove farei una crociata per scrivere codice alla cazzo?

    Sicuramente noi siamo indietro e non siamo al livello di milano, peccato, mai detto di essere il migliore o che la mia facoltà sia la migliore
    Che abbiamo problemi sui linguaggi affrontati è vero ed è stato piu volte sottolineato, e sicuramente vi invidio per i linguaggi che vi vengono insegnati, non nascondo questo. Ma ti ricordo che io sono ingegnere, e molti corsi di programmazione che voi affrontate, giustamente, a ing non vengono fatti. Discussione vecchia sul perchè e se sia giusto, ma è così.

    Piccola nota. Sul manuale O Rilly viene affrontato in maniera alquanto dettagliata tutto questo problema, (peccato averlo trovato solo oggi) e viene piu volte sottolineato come a differenza del C l'identazione abbia un importanza fondamentale per il compilatore. Ma evidentemente solo io e il tipo della O Rilly pensiamo che sia una cosa da sottolineare.

    In ogni caso si può anche fermarci qua, il mio problema è stato risolto, se vogliamo andare avanti per pagine a dire cose che nessuno ha detto, beh facciamo pure.
    Last edited by Hardcore; 14th November 2011 at 15:23.


  8. #53
    Hador's Avatar
    Join Date
    Mar 2004
    Location
    Milano
    Posts
    31.321

    Default

    abbiamo scritto la stessa cosa, il magic number non era un problema di scrittura di codice, ma effettivamente dell'algoritmo. Il metodo di carmack non era incomprensibile per niente, è un'implementazione del solito metodo di newton. Il problema stava nel capire perchè quella costante, ma se lo avesse scritto in c, in python, in pseudo codice, la leggibilità del codice non centra nulla.

    Detto ciò il problema non è di conoscenza del o dei linguaggi, ma di atteggiamento. I linguaggi si imparano, l'impostazione si fa più fatica. È inaccettabile uscire da un'università oggi e pensare che le performance e l'ottimizzazione del codice siano il cruccio fondamentale e sentenziare che linguaggi vecchi di 20 anni siano mejo di quelli attuali.
    Ovviamente non è vero manco il contrario, non mi metto a fare i driver di una scheda di rete in java, è per questo che il confronto 1v1 tra i linguaggi non si fa, perchè hanno applicabilità diverse.

  9. #54
    Master Chief Petty Officer Dr.Doomed's Avatar
    Join Date
    Jul 2005
    Location
    Latveria
    Posts
    2.067

    Default

    Quote Originally Posted by Hardcore View Post
    Fu talmente chiaro che Carmak lo dovette spiegare al QuakeCon come e perchè avesse usato quel numero. Ma sicuro in Bicocca lo sapevate già N anni prima
    Carmack ha dovuto spiegare perche` ha usato quel numero in particolare e perche` funzionasse l'algoritmo, ma per se`il codice era leggibile.
    Questo perche`era una soluzione che non si capiva da dove fosse scaturita.
    Anche la crittografia RSA e` piuttosto complessa (in tutti i sensi, lol...), ma un conto e` la spiegazione matematica del perche` funziona (comprensibilita`) un altro capire ad una certa linea del codice a che punto sia l'algoritmo (leggibilita`).
    Tu confondi le due cose.

    Quote Originally Posted by Hardcore View Post
    Doomed guarda gli esempi di risposta alla mia domanda erano talmente corretti, che lanciati in python facevano tutt'altro...
    Gli esempi che ti hanno dato dovevano orientarti alla soluzione, non volevano essere La Soluzione: l'ha scritta in fretta qualcuno che probabilmente s'e` preso un po' di tempo ma non troppo per cercare di darti una mano.

    Quote Originally Posted by Hardcore View Post
    Ti ripeto dove farei una crociata per scrivere codice alla cazzo?
    crociata per il diritto a scrivere codice alla cazzo
    Se il codice non gira se indentato male ti stanno obbligando ad accettare le loro regole di indentazione per una maggiore leggibilita` del testo. Contestando questo implichi di sostenere la liberta` di scrivere il codice in liberta`, potenzialmente anche alla cazzo. Potenzialmente.

    Quote Originally Posted by Hardcore View Post
    Che abbiamo problemi sui linguaggi affrontati è vero ed è stato piu volte sottolineato, e sicuramente vi invidio per i linguaggi che vi vengono insegnati, non nascondo questo. Ma ti ricordo che io sono ingegnere, e molti corsi di programmazione che voi affrontate, giustamente, a ing non vengono fatti. Discussione vecchia sul perchè e se sia giusto, ma è così.
    Su questo, come ing informatico, non posso che convenire: al di fuori di C++ e Java, si demandava molto all'iniziativa personale.

    Quote Originally Posted by Hardcore View Post
    Piccola nota. Sul manuale O Rilly viene affrontato in maniera alquanto dettagliata tutto questo problema, (peccato averlo trovato solo oggi) e viene piu volte sottolineato come a differenza del C l'identazione abbia un importanza fondamentale per il compilatore. Ma evidentemente solo io e il tipo della O Rilly pensiamo che sia una cosa da sottolineare.
    Lo O'Reilly e` un libro dove ti insegnano il linguaggio, chiaro che esplicitino la cosa. Noi (almeno, cosi` era per me) non la si sottolineava perche` la si dava per scontata: nessuno contesta infatti che l'indentazione non conti un cazzo in C, bensi` che tu denigrassi l'uso della indentazione come strumento per l'identificazione dei blocchi logici unicamente sulla base del fatto che, appunto, in C e Java l'indentazione non conti un cazzo a livello di compilatore (e` come se uno fanboy Pascal contestasse la scelta delle graffe in C perche` anti-intuitive rispetto a begin/end). Nel caso di python a mio avviso si tratta di una soluzione intelligente per prendere due piccioni con una fava, facendo fronte ad un esigenza (quella delle leggibilita`) che si e` fatta sentire particolarmente forte solo in seguito all'introduzione di C e compagnia bella. Ma e` un'opinione personale, peraltro maturata dopo un certo scetticismo iniziale.
    Last edited by Dr.Doomed; 14th November 2011 at 16:08.
    Le masse saranno sempre al di sotto della media. La maggiore età si abbasserà, la barriera del sesso cadrà, e la democrazia arriverà all'assurdo rimettendo la decisione intorno alle cose più grandi ai più incapaci.
    Sarà la punizione del suo principio astratto dell'uguaglianza, che dispensa l'ignorante di istruirsi, l'imbecille di giudicarsi, il bambino di essere uomo e il delinquente di correggersi. Il diritto pubblico fondato sulla uguaglianza andrà in pezzi a causa delle sue conseguenze.
    Perché non riconosce la disuguaglianza di valore, di merito, di esperienza, cioè la fatica individuale: culminerà nel trionfo della feccia e dell'appiattimento. L'adorazione delle apparenze si paga.
    "Frammenti di diario intimo", 12 giugno 1871

    They are entitled to their opinion but they suffer from the notable disadvantage of being completely wrong

    Discutere con certe persone è come giocare a scacchi con un piccione. Puoi essere anche il campione del mondo ma il piccione farà cadere tutti i pezzi, cagherà sulla scacchiera e poi se ne andrà camminando impettito come se avesse vinto lui.

    ~-~-~ νῦν μὴ κακά στοχάζομαι ~-~-~

  10. #55
    Ensign Hardcore's Avatar
    Join Date
    Sep 2006
    Location
    Modena
    Posts
    3.550

    Default

    Prendo spunto dall'ultima frase, io ho nel bene o nel male sempre programmato con linguaggi basati sulla filosofia dei blocchi racchiusi in {}. Mi son trovato bene, forse perchè non ho mai avuto niente a che fare con linguaggi differenti, anche l'html per certi aspetti si base su una filosofia analoga del Begin End.
    Per ora su python la cosa non mi fa impazzire, anche se ammetto che il codice risulta molto piu leggibile, vedremo, magari cambio idea.


  11. #56
    Lieutenant
    Join Date
    Feb 2004
    Location
    Bresso
    Posts
    4.683

    Default

    Pero, e' diventato totalmente non sense sto thread

  12. #57
    Lieutenant Commander San Vegeta's Avatar
    Join Date
    Oct 2003
    Location
    Bologna
    Posts
    12.154

    Default

    Quote Originally Posted by Hardcore View Post
    Mi mancava il pro player della situazione...Forsr ignori che i compilatori C Java se ne fregano dell aspetto o degli spazi. quindi tabbare è sempre stato un mero vezzo estetico. cosa che qui non è.
    il pro player della situazione oltre a saper fare i costrutti base, sa leggere le regole base della sintassi di un linguaggio e capire come funziona python
    primo link da google http://programmazione.html.it/guide/...zioni-di-base/
    Ricordiamo che i gruppi di istruzione devono essere indentati nello stesso modo in quanto è solo l'indentazione che permette di strutturare l'istruzione if else.
    A differenza del C, o del Pascal, non esistono parole che delimitano l'inizio e la fine del blocco (le parentesi graffe del C o begin e end del pascal).
    il tutto senza chiamare in causa leggibilità stili o quello che ti pare. Per quanto riguarda Carmack, che ammiro moltissimo, ha ammesso che per colpa del codice scritto di fretta e senza commenti, non sa cosa ha scritto fino a poche settimana fa, se riguarda il codice se lo deve studiare come chiunque altro, perdendo tempo.

    Mo, china il capo e prendi atto di avere delle lacune DI BASE: è un buon inizio per colmarle.
    I rubinetti a casa di Chuck Norris non perdono, vincono.

    In the beginning there was nothing...then Chuck Norris Roundhouse kicked that nothing in the face and said "Get a job". That is the story of the universe.

    Quote Originally Posted by Wolfo View Post
    Concordo e propongo ban temporanei per chi critica la topa , la topa non si critica , dal trombabile in su non si commenta in modo sgradevole.
    la tua ignoranza in materia e' raccapricciante
    -cit. Estrema, 2022

  13. #58
    Ensign Hardcore's Avatar
    Join Date
    Sep 2006
    Location
    Modena
    Posts
    3.550

    Default

    Ma dai, ma non mi dire. E tutto questo cosa centra con la mia frase che dice: "Python a differenza del C richiede di tabbare come regola per il compilatore"? Parrebbe niente ma confido che tu abbia sicuramente una valida motivazione per andare avanti dicendo stronzate. In ogni caso viva la modestia
    Questo thread è veramente il teatro dell' assurdo, misto a una certa sboronaggine di personaggi di bassa lega.


  14. #59
    Lieutenant Commander Axet's Avatar
    Join Date
    Sep 2003
    Location
    Ginevra
    Posts
    33.807

    Default

    Esatto è il teatro dell'assurdo. 3 pagine per capire cosa vuol dire indentare più una gang bang 1 vs 10000

    I'm no hero. Never was. Never will be.
    -----
    Soul of the mind, key to life's ether
    Soul of the lost, withdrawn from its vessel
    May strength be granted so the world might be mended...
    So the world might be mended...

  15. #60
    Lieutenant Junior Grade Eltarion's Avatar
    Join Date
    Dec 2004
    Location
    Venaria
    Posts
    4.085

    Default

    Io penso che indentare OBBLIGATORIAMENTE sia una merda. Odio la tabulazione per chiudere i blocchi. Graffe forever!

    Io sono lo stronzo che scrive tutto su una riga appositamente per non permettere ai miei colleghi di capire.
    Realm Of Trollers
    while ( ! ( succeed = try() ) );
    Spoiler

Page 4 of 5 FirstFirst 12345 LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
[Output: 115.65 Kb. compressed to 100.29 Kb. by saving 15.36 Kb. (13.28%)]