<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">2015-03-27 22:12 GMT+01:00 Federico Fissore <span dir="ltr"><<a href="mailto:federico@fsfe.org" target="_blank">federico@fsfe.org</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Carlos Catucci ha scrito il 26/03/2015 alle 22:16:<span class=""><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Scopro solo ora (ni ritagli di tempo mi sto guardando questo linguaggio)<br>
che Go non ha le classi. Va considerao lo stesso un linguaggio OOP?<br>
<br>
</blockquote>
<br></span>
Fosse questo l'unica problema: prova ad scrivere un programma che apre file in 3 punti diversi, inserisci deliberatamente un baco e poi dallo ad un collega e misura quanto ci mette a trovarlo<br>
<br>
python ha questa cosa futuristica chiamata "traceback" che forse i programmatori di go non conoscevano. E sì che lo stack lo usano... :\<br>
<br></blockquote><div><br></div><div>Il traceback lo hai in Python, come lo hai in Go ed anche in C, utilizzando un debugger.</div><div>Ovviamente il livello di dettaglio è diverso, ma un qualsiasi programmatore è in grado di trovare il bug.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
quindi in python a individuare l'errore ci metti 0 secondi, perchè ti stampa il nome file e riga in cui si è generato l'errore;</blockquote><div><br></div><div>Anche in Go ed in gdb, ma sembra tu non li abbia mai usati.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> in go no, solo "no such file or directory", l'equivalente di un vaffa<br></blockquote><div><br></div><div>Ah, ecco.</div><div><br></div><div>Questo non ha niente a che fare con il traceback, ma nella differente gestione degli errori.</div><div>Python (e molti altri linguaggi) scelgono di gestire errori a runtime tramite una eccezione.<br></div><div>Guarda caso eccezione significa "eccezionale", ma cercare di aprire un file che non esiste secondo gli autori di Go non è poi così eccezionale.</div><div><br></div><div>Il bug in questo caso si trova facilmente con la ricerca di parti di codice dove il programmatore non controlla l'eventuale errore restituito da una funzione.</div><div></div></div><br></div><div class="gmail_extra"><br></div><div class="gmail_extra">Ciao Manlio</div></div>