Newsgroup: it.comp.lang.c
Titolo: [OT]...los - Provocazione gratuita per gente inutile = FLAME

Sono convinto che il C rende antipatici o che tutti quelli che ne hanno
acquisito una certa conoscenza abbiano coltivato arroganza, impazienza e
pigrizia che non mancano di mostrare ogni volta gli si presenti
occasione...insomma il programmatore C vero, quello che programma sporco
 forse anche perchè si lava poco a causa del troppo studiare ), deve per
forza compiacersi di se stesso a dismisura rispetto alle sue capacità, come
un professore pazzo, un eremita che vive nel delirio di se stesso.
Il C forse è frustrante....ma forse più per noi che per voi ;-)

Lunga meditazione per arrivare a un simile risultato,eh?!
+:>)-~

un professore pazzo, un eremita che vive nel delirio di se stesso.
Non basta. Ti ricordo che qui siamo pienamente convinti che Dio abbia
scritto il mondo in C.
Guarapito blasfemo.

 Il C forse è frustrante....ma forse più per noi che per voi ;-)
Da dove ti viene tutto quest'astio? Qui normalmente cerchiamo di aiutare
chi ha bisogno e di discutere serenamente degli argomenti che ci
interessano.
EMG


GRANDE


Noi chi e voi chi?
Io non mi metto tra quelli che "programmano duro" ma in questo flame mi
metto dalla parte di quelli che attacchi, perche' si legge da lontano che
non hai argomentazioni ma solo tempo da perdere. Oppure hai molti problemi
per sollevare simili questioni di principio. Problemi di infanzia, vero?
Spero che tu li risolva al piu' presto.
Non perdo altro tempo.

 >





 Non perdo altro tempo.
Bravo Addio e Grazie lo stesso per averci provato


ICQ #34602650

 occasione...
Non l'ho mica capita, sai?
Ho dato un'occhiata ai vecchi messaggi del gruppo, hai postato un paio
di domande con l'alias fikko e hai avuto risposte educate e esaustive.
Sii esplicito e dicci a che episodio ti riferisci.


Sono 2 anni che seguo più o meno tacitamente questo newsgroup ( anche perchè
i miei impegni lavorativi non mi permettevano di dedicare tempo
all'apprendimento del C ), ho avuto vari nick ma ho postato raramente
richieste perchè sapevo che in fondo quello che poi non aveva il tempo di
approfondire ero io...uso il C sporadicamente, quando Java o VB non bastano
o sono semplicemente inadeguati ai compiti...
Le discussioni a cui mi riferisco non le sviluppo mai sul newsgroup ma
privatamente con il singolo individuo...è inutile e poco educato fare nomi
non trovi ?
Sono contento che qualcuno si sia posto il prob che tu hai tirato
fuori...come dicevo non tutti corrispondono alla descrizione provocatoria
che ho dato
Ciao

 Sono entrambi soggetti sottintesi ( impara l'italiano oltre che il C...
Visto che fai il pierino con la lingua italiana, mi permetto di fare un
appunto da professore di prima media. "Noi e voi" non sono per niente
soggetto della frase. Elementi di base dell'analisi logica...


 che ho dato
Eh, eh... non sei corretto <g>. Lo so, č antipatico rinfacciare le
parole scritte all'interessato, ma devo farlo:
---- CUT ---
Sono convinto che il C rende antipatici o che tutti quelli che ne hanno
acquisito una certa conoscenza abbiano coltivato arroganza, impazienza e
pigrizia che non mancano di mostrare ogni volta gli si presenti
occasione...
---- CUT ---
Adesso non puoi scrivere "come dicevo non tutti corrispondono alla
descrizione provocatoria" perchč non l'hai detto, hai detto il
contrario. 





 occasione...
Pensi che tutti i frequentatori del newsgroup siano programmatori C bravi o
mi prendi per il c**o ?
E' ovvio che solo alcuni sanno veramente il C
Immagino che ti ci metta in mezzo pure tu...!?!

 Immagino che ti ci metta in mezzo pure tu...!?!
La tua polemica si riferisce evidentemente al modo con cui vengono date
le risposte su newsgroup, siccome io sono fra quelli che danno risposte
(giuste e sbagliate, per caritą...) piuttosto che fare domande, mi sento
parte in causa delle tue (scusami) farneticazioni.


Allora non sai leggere perchè ho scritto che (...)"chiunque abbia una certa
dimestichezza" col C, il che implica non tutti...

 Io chiedo solo consigli qui...non paternali
Forse in qualche caso puoi avere ragione. Forse qualcuno (me compreso)
lo fa senza rendersene conto. Ma in generale chi partecipa ad un
newsgroup lo fa per passione e per imparare a sua volta qualcosa di
nuovo. Quindi cerchiamo di vedere le cose in modo positivo e
costruttivo.
EMG

Hai ragione, e se c'è una cosa che odio è avere preconcetti di questo
tipo...spero che mi sia sbagliato fin'ora e che mi renda conto
obiettivamente di avere esagerato.

> libro alla mano...
Caro (si fa per dire) Filippo Salotti alias Fikko, vediamo di darci un
taglio perche' non se ne puo' piu' di leggere le tue stronzate...
Tu non solo SEI ignorante rispetto a chi conosce il linguaggio, ma
sei, ancora peggio, molto presuntuoso e ineducato (perche' dai origine
e alimenti dei flame assolutamente privi di senso).
Pensi davvero di dimostrare, libro alla mano, che getch() e getche()
siano funzioni STANDARD ?
Pensi davvero che (parole tue) :
"Se parli in termini cosě ristretti anche una variabile int non č
portabile perchč a seconda della piattaforma cambia..."
E ancora (circa getch()/getche()) :
"Tu che sai tutto prova a leggere a pagina 97 de " Linguaggio C "
Kerninghan, Ritchie - seconda edizione che guarda caso in copertina ha
stampigliato ANSI C e poi riparleremo di quello che hai detto riguardo
alle funzioni fuori standard."
Non accusare gli altri di essere arroganti se ti rinfacciano, dopo
AVERTI CHIARITO le idee per la TERZA volta, che devi imparare bene il
termine PORTABILITA' e il termine STANDARD...
Smettila di coinvolgere gli altri in flame che turbano l'equilibrio
del ng, quando l'unica persona arrogante, ignorante, presuntuosa e
superba al punto da offendere gli altri (pur essendo NEL TORTO PIENO)
sei solo e soltanto TU.
 

taglio perche' non se ne puo' piu' di leggere le tue stronzate...
Chiedo scusa a Filippo Salotti ( che e' un'altra persona che non
c'entra nulla ! ;) ) mentre il cognome vero di tale "Fikko" e' Conti.

 
Forse si e' offeso quando EMG lo ha corretto dicendogli che "denyed" si
scrive "denied" (il post era *echo caratteri da tastiera su schermo*)...
ma non mi sembra il caso di prendersela per cosi' poco.
Ciao, Luca.
-- 
*******************************************************
       "Dio non e' morto.
        E' vivo e sta lavorando
        a un progetto
        meno ambizioso"
				    graffito anonimo
  Reply to 
bia...@maganet.net
*******************************************************

Filippo, Fikko o chiunque esso sia non ha di certo ragione ma non č del
tutto falso ciň che dice: č praticamente certo che ci sono persone piů
smaliziate di altre che si divertono a spulciare il newsgroup in cerca di
newbie da snobbare ( l'ho fatto anche io).

 un professore pazzo, un eremita che vive nel delirio di se stesso.


 scrive "denied"
Spero di no. Sarebbe assurdo...
EMG


Ma che senso ha?
EMG

 
Si?
Be'io no e penso molti altri qui.Cmq le "bugie"hanno le gambe corte ;-)
Inoltre fare certi ragionamenti in riferimento a persone che oltre a 
farsi venire il mal di testa sono magari sognatori non è proprio da 
persona corretta.
Ciao!

 portabile perchč a seconda della piattaforma cambia..."
Veramente ha detto str..simili??

 newbie da snobbare ( l'ho fatto anche io).
Puň darsi. 
Il 90% dei thread nascono da domande che nascondono problematiche da
newbie o da faq (puntatori, stringhe, come si compila un programma con
XXX, etc...).
Per quello che mi riguarda credo di aver risposto centinaia di volte a
problematiche da newbie in modo il piů possibile esaustivo (se non mi
sfugge qualche episodio isolato, proprio se avevo la luna storta). Cosě
come si possono fare almeno altri tre / quattro nomi di persone che
possono dire altrettanto. 
Senza contare che alcune persone si stanno impegnando a tradurre le faq
dalla versione inglese delle faq di comp.lang.c (a proposito, dovrei
fare delle domande, nessuno segue la lista??). Non che uno cerchi
riconoscenza, solo per dire che in questo gruppo se una persona si
rivolge in modo *decentemente* educato (non importa prostrarsi a
nessuno) č molto probabile che riceva delle risposte esaustive perchč
questo č lo spirito del gruppo. 
Certamente qualcuno puň avere incontrato degli episodi sfavorevoli,
perchč non tutti siamo uguali e non sempre ci alziamo la mattina allo
stesso modo. 
Poi ci sono i casi particolari. Se una persona giudica il fatto di
essere contraddetto una questione di "intolleranza da newbie" ha
sbagliato tutto. 


 Veramente ha detto str..simili??
Eppure è la pura verità: i tipi primitivi non sono portabili in senso
stretto.
EMG



Dal mio punto di vista e' sbagliato pensarla cosi'.
I tipi primitivi SONO portabili, perche' definiti in modo standard dal
linguaggio.
Non esiste, secondo me, una "portabilita' in senso stretto".

 stretto.
Diciamo che il discorso non è corretto alla radice. Non esiste la
portabilità dei tipi, esiste la portabilità del codice. I tipi dipendono
sotto vari aspetti (dimensione, byte order) dalla macchina e dal
compilatore: scrivere codice C portabile significa prescindere anche da
queste differenze, ovvero io so a priori che (ad esempio) la dimensione
di int non è garantita e il mio codice è scritto in modo da prescindere
dalla dimensione di int.
Ci sono casi in cui ovviamente non posso prescindere dalle differenze
fra le macchine, come ad esempio nell'interscambio di dati binari. E
infatti internet insegna che quando due macchine si scambiano dati fra
loro lo fanno attraverso 'ottetti', ovvero dei pacchetti di bit di
dimensione definita a priori.


 newbie da snobbare ( l'ho fatto anche io).
Argh!! Sacrileggio (si', con due "g") ! Allora sei un infame anzi, un
infamone! E io non scrivo piu', non sono piu' tuo amico e non gioco piu'
con te e con tutti gli altri bambini! :-DDD


 senso stretto.
  Quale sarebbe il "senso stretto" della portabilita`? I tipi primitivi
sono /portabili/ per definizione: il loro comportamento previsto dallo
standard si ripete con certezza su tutte le piattaforme per le quali
esiste un sistema di sviluppo conforme allo standard.
	Alla prossima,
		Marco

fare delle domande, nessuno segue la lista??). Non che uno cerchi
Credo che le uniche sezioni ad essere complete siano 6, 7 e 8.
Cioe' quella sui vettori e puntatori, sull'allocazione di memoria e
sui caratteri e stringhe.
 1. Declarations and Initializations
 2. Structures, Unions, and Enumerations
 3. Expressions        
 4. Pointers
 5. Null Pointers
 6. Arrays and Pointers..................(COMPLETA)
 7. Memory Allocation....................(COMPLETA)
 8. Characters and Strings...............(COMPLETA)
 9. Boolean Expressions and Variables
10. C Preprocessor
11. ANSI/ISO Standard C
12. Stdio
13. Library Functions
14. Floating Point
15. Variable-Length Argument Lists
16. Strange Problems
17. Style
18. Tools and Resources
19. System Dependencies
20. Miscellaneous
Sareste cosi' gentili da ricordarmi nuovamente quali sezioni state
traducendo ?
Io in questo momento sto traducendo la 3.
Ho appena spedito la sezione 8 completa alla mailing list.
Aspetto eventuali correzioni.

 fare delle domande, nessuno segue la lista??).
Io si. A proposito: come stanno andando le cose? Chi si incarica di
prendere il lavoro già fatto e organizzarlo? Andrea (Laforgia)?
EMG

 stretto.
Argh!Da te non mel'asoettavo!Non voglio esser eprolisso.
NOn capitera' mai di trovare un compilatore che alloca 4 byte per un int 
se creato per una piattaforma con int a due byte.
 
                             The End
Ciao!

 Non esiste, secondo me, una "portabilita' in senso stretto".
Intendevo riferirmi ad una portabilità assoluta e cioè: scrivo un
programma e quello funziona _sicuramente_ se ricompilato su un altro
sistema. Questo non accade se faccio assunzioni sulla dimensione dei
tipi primitivi.
EMG

 dalla dimensione di int.
E' esattamente ciò a cui mi riferivo.
EMG

 esiste un sistema di sviluppo conforme allo standard.
Vedi la mia risposta ad Andrea.
EMG

 traducendo ?
In questo momento nessuna. Aspetto di vedere la lista con quelle
prenotate altrimenti rischiamo di fare lavori doppi.
EMG

 stretto.
Argh!Da te non mel'asoettavo!
Non capitera' mai di trovare un compilatore che tenta o erra ad allocare 
4 byte per un int se la piattaforma su cui lavora ha int a due byte.
Sono definiti.                                                
Ciao!

 tipi primitivi.
Scusa che intendi fare assunzioni?Nel senso che assumi che il tipo int 
possa memorizzare p.e. 2e40 e quindi utilizzare valori analoghi su un 
altro sistema dove invece la dimensione max di int è minore?
Sarebbe overflow.
Ciao.

 dimensione definita a priori.
Si,ma questo merita un discorso a parte;si parla di codice sorgente C e 
non di udp,tcp,icmp,ecc.
Tutti gli standard per Internet e la maggior parte dei libri sui 
protocolli TCP/IP utilizzano il termine otteto al posto di byte.L'uso di 
questo termine simpatico e ricercato ha un origine storica in quanto i 
primi lavori sui protocolli TCP/IP furono svolti su sistemi com il DEC-10 
che non utilizzava byte composti da otto bit.
                                                   Richard Stevens
Poi riconosce che ai giorni nostri la maggior partye di calcolatori 
utilizza 8 bit per un byte e quindi prefersice utilizzare il termine 
byte...
Ciao!                                                   
 

tipi primitivi.
[vedi quanto detto sopra]
Fare assunzioni particolari sulla dimensione dei tipi e' uno sbaglio
del programmatore, in quanto lo standard gli ha fornito il modo di
scrivere codice portabile.

 se creato per una piattaforma con int a due byte.
E' appunto questo che rende l'eventuale programma non portabile. Leggi
anche la risposta che ho dato ad Andrea.
EMG

 tipi primitivi.
  Infatti: non e` assolutamente possibile farne. Un buon codice
portabile gestisce ugualmente il proprio compito *senza* fare assunzioni
di questo tipo. Eventuali perdite di ottimizzazione a livello di codice
saranno gestite dal compilatore.
	Alla prossima,
		Marco
(1) [#3] An object declared as type char is large enough to store any 
member of the basic execution character set. Committee Draft -- January
18, 1999  WG14/N869 (pagina 40).

 Sarebbe overflow.
Infatti. Per rendersi conto di questo problema non è che ci vuole tanto.
La maggior parte del codice che circola attualmente fa affidamento che
gli int siano almeno a 32 bit e quindi non funziona se ricompilato con
un compilatore a 16 bit. Mancanza di portabilità dei tipi, appunto.
EMG

 scrivere codice portabile.
Si, ma è solo un modo diverso di dire la stessa cosa che ho detto io.
EMG

 non di udp,tcp,icmp,ecc.
Ho fatto un esempio per rappresentare i problemi relativi
all'interscambio dei dati. Lo stesso problema lo posso avere se io
scrivo su un file in formato binario degli interi e dei float, e poi
pretendo di rileggere il file con lo stesso programma su un'altra
macchina. 


minuscola dell'alfabeto.
Anche se le costanti carattere in C vengono considerate "int".

 Anche se le costanti carattere in C vengono considerate "int".
  In che senso?
	Alla prossima,
		Marco

E questo non significa forse che non è portabile?
E' qui vedi che non ci intendiamo !
Non si puo' parlare di portabilita' per i tipi !!!!
Ma ti rendi conto ???
La portabilita' e' propria del codice che utilizza quei tipi !!!

  In che senso?
esegui il seguente programma :
#include <stdio.h>
main()
{
    printf ( "%d\n", sizeof ( 'a' ) ) ;
    printf ( "%d\n", sizeof ( char ) ) ;
    printf ( "%d\n", sizeof ( int ) ) ;
}
Estratto dalle FAQ :
8.9
---
D:	Credo  che qualcosa non funzioni con il mio compilatore : ho
  	notato che sizeof('a') vale 2, non 1 (cioe' sizeof(char)).
R:	Puo'  sembrare strano, ma le costanti carattere in C vengono
  	assunte   come  interi  e  quindi  sizeof('a')  equivale   a
  	sizeof(int).
  	(Il  C++,  comunque,  differisce anche da  questo  punto  di
  	vista).	(v. 7.8).
  	Riferimenti : 
  	ISO Sez. 6.1.3.4; H&S Sez. 2.7.3 p. 29.

 parametri che differiscono da macchina a macchina. 
Si che sbadato.Scusa la mia scrittura a volte svolazo tra le nuvole.
Cmq intendevo la compatibilita' nella portabilita' ovvero la 
portabilita'.:-)

 un compilatore a 16 bit. Mancanza di portabilitą dei tipi, appunto.
Il tutto puņ essere riassunto nel seguente dogma:
         Fidati del programmatore ;-)
Ciao!

 tipo. In effetti, perche` dovrebbe?
Sono d'accordo. Infatti la mia tesi non č che sia impossibile scrivere
codice portabile ma piů semplicemente che il tipo int, essendo
"implementation-defined", non č portabile.
EMG

 Anche se le costanti carattere in C vengono considerate "int".
Già, e grazie alla tua traduzione ora questo fatto mi rimane molto più
impresso nella mente.
EMG

 La portabilita' e' propria del codice che utilizza quei tipi !!!
Francamente non vedo la finezza. Comunque, nel mio messaggio precedente
sono passato ad indicare la cosa come "implementation-defined", va bene
così?
EMG

Sono un novellino nel mondo del C e mi domando se tu mi daresti una mano, visto
che sembri MOOLTO esperto di C.....
:-))))))
// Non vale la pena di prendersela!

> In che senso?
  Ehm... Dovrei leggere meglio i messaggi, prima di rispondere: appena
premuto il tasto "INVIA" mi sono "avvisto" della differenza tra cio` che
tu intendevi e quello che io avevo letto. ;)
  Comunque, il mio discorso era riferito al tipo /char/, sottindendendo
il /cast/ all'atto della definizione del simbolo:
	char a='a';	/* char a=(char)'a'; */
Effettivamente, facendo assegnamento sullo standard, ottieni la flebile
speranza che l'output di /a/ produca effettivamente una "a". :)
	Alla prossima,
		Marco

Ciao Enrico Maria, come va?
Enrico Maria Giordano ha scritto:

  Chiarendo: /int/ non fa assunzioni sulla portabilita`, e` l'uso che se
ne fa a renderlo tale. Mi associo alla corrente di pensiero che assume
la portabilita` associata al codice. ;)
	Alla prossima,
		Marco