Autore Topic: Sapevate che il "C" secondo "Nonciclopedia" è....  (Letto 815 volte)

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.606
  • Ne mors quidem nos iunget
    • Mostra profilo
Sapevate che il "C" secondo "Nonciclopedia" è....
« il: 14 Settembre 2012, 18:21:58 »
" Il C è il linguaggio più potente dell'universo. Permette di aprire buchi neri, creare nuove dimensioni spaziali, distruggere la materia e quadrare il cerchio. In genere è il linguaggio preferito dai Veri Programmatori e dagli ingegneri, che tendono a emarginare, schernire e stuprare analmente chi usa linguaggi diversi. Attualmente il C si basa sul paradigma di programmazione Nerd Oriented.

Esempio di codice C:
Codice: [Seleziona]
#include <prcdio.h> 

int main(void)
{
  int *a;
  a = malloc(n * sizeof(int));
  destroy(world);
  return 0;
}
Questo frammento di codice crea dal nulla una torta alle fragole. L'efficienza dell'algoritmo qui riportato è dovuta al fatto che, per poter avere fragole in ogni stagione, trasforma in buco nero una stella ogni volta che viene eseguito. E se lo diventa il sole sono cazzi amari. Nuove e ancora più letali versioni di C (come C++) sono stati successivamente creati, ma l'UNESCU ne limita l'utilizzo per motivi umanitari. "

http://nonciclopedia.wikia.com/wiki/Linguaggi_di_programmazione#C
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline Top Fuel

  • Gran Maestro dei Gamberi
  • *****
  • Post: 960
    • Mostra profilo
Re: Sapevate che il "C" secondo "Nonciclopedia" è....
« Risposta #1 il: 14 Settembre 2012, 20:58:42 »
Piuttosto di programmare in C :evil: mi metto a programmare in html.
Dear youtube administrators, your search bar is broken. When I type the letter "J" it appears justin bieber when it should appear Jimi Hendrix. Fix this, please.

Offline md9327

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.840
    • Mostra profilo
Re: Sapevate che il "C" secondo "Nonciclopedia" è....
« Risposta #2 il: 16 Settembre 2012, 11:41:46 »
E mò non tocchiamo il C...  :evil:

E poi che c'entra il'html con il C?!?  :evil:

Mò me fate arrabbià sul serio...

...
...

 :D

Il C può sembrare un linguaggio molto ostico, ma questo visto da chi non ci ha mai programmato, e non ci ha fatto qualcosa di davvero utile, e senza usare la grafica. Questo lo dico a ragion veduta, in quanto ci ho lavorato per parecchi anni, e in ambienti dove serviva un linguaggio efficiente e non dipendente da sistemi e/o interfaccie grafiche varie.
E' il linguaggio che più si avvicina al puro linguaggio macchina, mantenendo comunque una certa maneggevolezza per chi lo utilizza.
Dato questo, è sicuramente anche un'ottima scuola per chi vuol programmare seriamente, in quanto è quello che ti dà la vera senzazione di manipolare l'hardware. Questo suttintende che il controllo è completamente in mano al programmatore, e quindi è il programmatore che ha la piena responsabilità di quello che scrive.
Con l'inserimento della parte grafica, e in particolare con i sistemi operativi che si basano fondamentalmente sull'interfacciamento utente tramite ambiente grafico, e quindi con l'inserimento di uno strato di controllo automatizzato, ha tolto gran parte del controllo al programmatore, relegandolo ad un semplice utilizzatore.
Non dico che questo sia negativo, dopotutto il computer è un'oggetto che deve servire a risolvere le cose, e non solo per puro studio di come fare per ottenere un risultato. Purtroppo però questo ha causato una perdita di concezione su come si programma, la perdita di come opera un hardware, e l'introduzione ovvia di cattive logiche, con la conseguenza di cattivi e brutti programmi.
Tutto ciò, quindi, ha portato, almeno secondo me, alla mancanza di un pezzo fondamentale, ovvero il raggiungimento del fine con lo strumento giusto e corretto.

Mi dispiace, ma anche nello scherzo, questa discussione mi ha stimolato a scrivere queste due righe, e forse vuott voleva proprio questo...  ;)

Offline Top Fuel

  • Gran Maestro dei Gamberi
  • *****
  • Post: 960
    • Mostra profilo
Re: Sapevate che il "C" secondo "Nonciclopedia" è....
« Risposta #3 il: 16 Settembre 2012, 22:56:32 »
L'html riguarda l'altro thread in cui dico che non mi piace.
In ogni caso io provengo dal mitico Quick Basic 4.5, che di grafico non aveva niente e dovevi costruirti tutto a manina, e anche se Gambas è visuale, il background di fare a mano e ottimizzare se possibile l'elaborazione mi è rimasto. Certo adesso è tutto più facile ma certe cose non si scordano.
Dear youtube administrators, your search bar is broken. When I type the letter "J" it appears justin bieber when it should appear Jimi Hendrix. Fix this, please.

Offline Picavbg

  • Senatore Gambero
  • ******
  • Post: 1.620
    • Mostra profilo
Re: Sapevate che il "C" secondo "Nonciclopedia" è....
« Risposta #4 il: 16 Settembre 2012, 23:25:32 »
L'html riguarda l'altro thread in cui dico che non mi piace.
In ogni caso io provengo dal mitico Quick Basic 4.5, che di grafico non aveva niente e dovevi costruirti tutto a manina, e anche se Gambas è visuale, il background di fare a mano e ottimizzare se possibile l'elaborazione mi è rimasto. Certo adesso è tutto più facile ma certe cose non si scordano.
Allora, visto che concordi col piacere di avere tutto un programma sotto il tuo personale controllo, mi sembra che ti si stia presentando l'occasione buona per conoscere il "C". Io l'ho cominciato, ma il mio piccolo problema è che non trovo più il tempo per continuarne lo studio. Ho potuto constatare, per quel poco che ho potuto studiare, che mi è tornato utille anche per giostrarmi meglio in Gambas.  ;)
 :ciao:
:ciao:

Offline Top Fuel

  • Gran Maestro dei Gamberi
  • *****
  • Post: 960
    • Mostra profilo
Re: Sapevate che il "C" secondo "Nonciclopedia" è....
« Risposta #5 il: 18 Settembre 2012, 00:53:25 »
In C e in C++ non ho mai programmato ma li conosco bene, visto che 15-20 anni fà mi sono comprato parecchi numeri di Computer Programming, dove venivano usati a badilate.
Ho imparato ad odiarli li, sopratutto quando tentavo di tradurre i programmi meno complicati in Basic (e 2 o 3 volte ci sono pure riuscito 8) ).
Anche se sono piuttosto vecchiotte (periodo '93-'96 ca.) quelle riviste le ho ancora; se ti serve qualcosa... ;)
Dear youtube administrators, your search bar is broken. When I type the letter "J" it appears justin bieber when it should appear Jimi Hendrix. Fix this, please.

Offline Picavbg

  • Senatore Gambero
  • ******
  • Post: 1.620
    • Mostra profilo
Re: Sapevate che il "C" secondo "Nonciclopedia" è....
« Risposta #6 il: 18 Settembre 2012, 08:49:21 »
In C e in C++ non ho mai programmato ma li conosco bene, visto che 15-20 anni fà mi sono comprato parecchi numeri di Computer Programming, dove venivano usati a badilate.
Ho imparato ad odiarli li, sopratutto quando tentavo di tradurre i programmi meno complicati in Basic (e 2 o 3 volte ci sono pure riuscito 8) ).
Anche se sono piuttosto vecchiotte (periodo '93-'96 ca.) quelle riviste le ho ancora; se ti serve qualcosa... ;)
Ogni linguaggio, come certamente saprai, é strutturato secondo una certa logica, quella del suo ideatore. Il programmatore utente non può fare altro che adeguarsi, cercando di sfruttare al massimo le potenzialità offerte dal linguaggio che usa al momento. Gambas é radicato nel "C", quindi dato che già conosci quest'ultimo, sarai certamente largamente avvantaggiato. Mi auguro solo che che non odierai il parente più giovane come odi quello più vechio.  ;D
Io conosco pochissimo il "C". Ho svolto solamente qualche esercitazione. Ho deciso di conoscerlo allo scopo di migliorare i rapporti con Gambas e, fin dove sono riuscito ad applicarmi, ho potuto trarne benefici. Nel 2008 ho comprato un volume, scritto sotto forma di manuale da corso di programmazione, che comprende l'illustrazione degli argomenti, i test di verifica e le esercitazioni relative. Lo ritenmgo pertanto sufficiente a svolgere il compito di mio personale istruttore. Ti ringrazio comunque per la tua disponibilità.  :)
 :ciao:
:ciao:

Offline md9327

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.840
    • Mostra profilo
Re: Sapevate che il "C" secondo "Nonciclopedia" è....
« Risposta #7 il: 18 Settembre 2012, 10:55:40 »
In realtà il C è più un'interfaccia più umana per programmare un computer. L'alternativa è il linguaggio macchina vero e proprio e/o l'asm.

Il fatto che sia diventato un linguaggio potente, che già di per sè lo è visto che parla binario diretto con l'hardware, è dato dal fatto che sopra ci sono state sviluppate librerie. L'esempio più tangibile è la sua evoluzione Plus (C++), che introduce la gestione degli oggetti.

Dato che, come ho detto, è un tramite un pò più umano per interfacciare l'utente con la macchina, la sua potenza e quasi pari al programmare i registri direttamente del processore.
Di suo non ha controlli, non fornisce aiuto, e non controlla quello che stai facendo. Quello è tutto compito del programmatore, che DEVE sapere cosa stà facendo. Se si utilizza un puntatore su un'area di memoria, il programmatore DEVE sapere se questa memoria appartiene alla ram, al rom dle bios, alla scheda video, o alla cache del processore, e quindi DEVE sapere perchè la stà utilizzando, come utilizzarla, e i dati che e come trattarli.
Da qui che nasce un sistema operativo, e dovete tener conto che tutti, e dico tutti, i linguaggi hanno il 90% del codice compilato scritto in C, il resto è asm puro (solo per risolvere casi particolarissimi).
Se prendiamo anche un linguaggio come Java, è da tener presente che, per poter essere trasportabile, deve poter usare le specifiche logiche di quel determinato sistema, e quindi essere compilato per quel specifico ambiente. Ad ogni modo, praticamente tutto il motore di Java è scritto con un linguaggio, e questo è il C.
Se prendiamo i motori di database, vedi PostgreSQL, MySQL e SQLite (tanto per citare solo quelli open), sono scritti in C (e neppure il C++, proprio e solo in C).
La velocità di esecuzione, ovviamente se il programma è scritto bene, e ben ottimizzato, non può essere eguagliata da nessun altro linguaggio.

Insomma, tutto quello che vediamo oggi, sia che si tratti di linguaggi che di sistemi operativi, hanno la stessa base.

Tutto ciò che vediamo ora, sono applicativi, per costruire altre applicazioni in modo più o meno facile, e/o più o meno artisticamente bello, in cui conta di più il raggiungimento dell'obiettivo in modo più semplice e facile possibile, ma senza aver la benchè minima conoscenza di quello che avviene sotto, e di conseguenza il non avere quel minimo di sensibilità per lavorare al meglio delle nostre possibilità e delle possibilità della macchina.

Come qualcuno ha accennato, io sono contento di essere passato per un'epoca in cui era molto a livello sperimentale, che mi è servito a farmi le osse, conoscenza e particolare sensibilità in questo ambiente, che mi ha permesso, e mi permette tuttore, di capire e risolvere problemi, anche se non ho una conoscenza diretta, e questo perchè sò qual'è la base comune da cui tutto parte, e su cui si fondano le strutture di oggi, nonostante qualcuno se ne dimentichi.