Torna indietro   Hardware Upgrade Forum > Software > Programmazione

MSI PRO MAX EDGE AI+, Ryzen AI Max+ 395 e 128 GB per far girare in locale anche i modelli più grandi
MSI PRO MAX EDGE AI+, Ryzen AI Max+ 395 e 128 GB per far girare in locale anche i modelli più grandi
Abbiamo provato MSI PRO MAX EDGE AI+, un mini-PC professionale progettato per eseguire modelli di intelligenza artificiale in locale, senza dipendere dal cloud. Il sistema abbina il processore AMD Ryzen AI Max+ 395, 128 GB di memoria unificata e un telaio in alluminio da appena 4 litri, con l'obiettivo di offrire capacità di elaborazione elevate in un formato compatto.
Recensione vivo X500 Pro Max: la fotografia mobile ha un nuovo protagonista
Recensione vivo X500 Pro Max: la fotografia mobile ha un nuovo protagonista
Il nuovo top di gamma vivo punta su un comparto fotografico particolarmente articolato, con un teleobiettivo da 200 megapixel e teleconvertitori esterni capaci di arrivare a 400 mm equivalenti. Lo abbiamo provato a Tenerife, mettendo alla prova fotocamere, prestazioni, autonomia e accessori. Ecco come si è comportato.
WoW Forever: la beta è stato uno dei momenti più alti della storia dei videogiochi, e non si ripeterà
WoW Forever: la beta è stato uno dei momenti più alti della storia dei videogiochi, e non si ripeterà
Un mondo affollato e vivo, personaggi destinati a sparire a fine test e nessuno a inseguire l'oggetto giusto. Beta e stress test di World of Warcraft: Forever hanno fatto emergere un roleplay spontaneo, tra danze a Goldshire e code ordinate ai PNG
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 16-11-2005, 17:21   #1
>|HaRRyFocKer|
Senior Member
 
L'Avatar di >|HaRRyFocKer|
 
Iscritto dal: Jan 2003
Città: Roma / Napoli ---------------------- Vi PREGO, chiamatemi Marcello, non HarryFocker... Merci...
Messaggi: 1814
[CURIOSITA'] Come si scrive un linguaggio?

Sto seguendo all'università il corso di elementi di Informatica in cui sto studiando il c(++).
Ora che so che per scrivere un "programma" c'è bisogno di un linguaggio di programmazione, mi ponevo la suddetta domanda. Come si scrive? Si usa un linguaggio precedente? Se si, il primo linguagigo come è stato scritto?

Tutto questo su rieduchescional sciannel!

Grazie a chi mi risponderà...
__________________
LOVE WILL TEAR US APART.
--- Cisco Systems CCNA Certified --- MyLastFM --- My Deviations ---
Quando i 65daysofstatic si scioglieranno per problemi di droga del bassista... Io l'avevo già detto!
>|HaRRyFocKer| è offline   Rispondi citando il messaggio o parte di esso
Old 16-11-2005, 18:01   #2
franksisca
Senior Member
 
L'Avatar di franksisca
 
Iscritto dal: May 2005
Città: Roma
Messaggi: 7938
guarda, non mi reputo in grado di spiegartelo, ma ti consiglio di trovare "linguaggi e Traduttori"
__________________
My gaming placement
franksisca è offline   Rispondi citando il messaggio o parte di esso
Old 16-11-2005, 19:01   #3
shinya
Senior Member
 
L'Avatar di shinya
 
Iscritto dal: Jul 2005
Città: Bologna
Messaggi: 1130
Si usa un linguaggio per il quale esista un interprete. Per implementare il primo compilatore C (non conosco di preciso la storia, ma posso tirare ad indovinare), avranno usato un assembler, per il C++ il C e così via. Chiaro che puoi usare qualcunque linguaggio esistente per implementare il nuovissimo linguaggio ultra-figo X. Anzi, puoi usare anche il linguaggio stesso, una volta che hai pronto il "core".

La teoria dei compilatori è una branca piuttosto esoterica, ma molto affascinante. Se vuoi farti del male gratuitamente, studiala pure

Comincia con lo scrive un programma che dica se un espressione del tipo (3 * (9 + 15)) / 2 è corretta (come in questo caso) oppure no...scoprirai che non è tanto banale

EDIT: ho parlato di 'interprete', ma non fa molta differenza (a questo livello di discussione) con i linguaggi compilati.
shinya è offline   Rispondi citando il messaggio o parte di esso
Old 16-11-2005, 21:30   #4
DarkRevenge
Member
 
Iscritto dal: May 2005
Messaggi: 118
Quote:
Originariamente inviato da shinya
Si usa un linguaggio per il quale esista un interprete. Per implementare il primo compilatore C (non conosco di preciso la storia, ma posso tirare ad indovinare), avranno usato un assembler, per il C++ il C e così via. Chiaro che puoi usare qualcunque linguaggio esistente per implementare il nuovissimo linguaggio ultra-figo X. Anzi, puoi usare anche il linguaggio stesso, una volta che hai pronto il "core".

La teoria dei compilatori è una branca piuttosto esoterica, ma molto affascinante. Se vuoi farti del male gratuitamente, studiala pure

Comincia con lo scrive un programma che dica se un espressione del tipo (3 * (9 + 15)) / 2 è corretta (come in questo caso) oppure no...scoprirai che non è tanto banale

EDIT: ho parlato di 'interprete', ma non fa molta differenza (a questo livello di discussione) con i linguaggi compilati.
Quoto shinya e aggiungo questo link [click] che chiarisce forse un po' di più i vari "rami di discendenze" dei linguaggi di programmazione.
Come giustamente ha detto shinya, il C è nato dall'assembly, nel momento in cui si è deciso di creare un linguaggio molto più semplice (ma allo stesso tempo a basso livello come l'assembly) per riscrivere una primissima versione del codice di Unix scritta interamente in assembly. Tutto questo se la memoria non mi inganna
DarkRevenge è offline   Rispondi citando il messaggio o parte di esso
Old 16-11-2005, 22:11   #5
jappilas
Senior Member
 
L'Avatar di jappilas
 
Iscritto dal: Apr 2003
Città: Genova
Messaggi: 4747
Quote:
Originariamente inviato da DarkRevenge
il C è nato dall'assembly,
1) non tanto il C, quanto il suo compilatore: progettare un linguaggio implica definirne sintassi e semantica, costruendo una grammatica e le relative mappature, realizzare un compilatore equivale a codificare l' algoritmo che prendendo un testo lo analizza secondo la grammatica di cui sopra e lo trasforma in codice oggetto, per far questo si userà un altro linguaggio tra quelli esistenti

2) non tanto "dall", quanto "in": mancando altri compilatori si dovette usare direttamente il codice macchina , ma non si ha "parentela" tra assembly e C
__________________
Jappilas is a character created by a friend for his own comic - I feel honored he allowed me to bear his name
Saber's true name belongs to myth - a Heroic Soul out of legends, fighting in our time to fullfill her only wish
Let her image remind of her story, and of the emotions that flew from my heart when i assisted to her Fate
jappilas è offline   Rispondi citando il messaggio o parte di esso
Old 17-11-2005, 00:50   #6
The3DProgrammer
Senior Member
 
Iscritto dal: May 2000
Messaggi: 1459
Quote:
Originariamente inviato da jappilas
1) non tanto il C, quanto il suo compilatore: progettare un linguaggio implica definirne sintassi e semantica, costruendo una grammatica e le relative mappature, realizzare un compilatore equivale a codificare l' algoritmo che prendendo un testo lo analizza secondo la grammatica di cui sopra e lo trasforma in codice oggetto, per far questo si userà un altro linguaggio tra quelli esistenti
Esattamente, il primo passo per la nascita di un linguaggio è la definizione di una grammatica che lo descriva. Ti faccio un esempio:

<espressione> -> <termine>{<operatore><termine>}*
<termine> -> 0-1-2-3-4-5-6-7-8-9
<operatore> -> + - / *

una grammatica del genere dovrebbe (a meno di lapsus, data l'ora ) riconoscere espressioni aritmetiche semplici del tipo

5+9-6 o 6+8 o anche un solo numero, ad es 5 (il carattere * indica che il contenuto tra parentesi graffe può essere ripetuto 0, 1 o n volte). Se non ricordo male (è passato un annetto dal corso di linguaggi) tale grammatica è detta EBNF. La grammatica va poi analizzata (va costruita la tabella dei simboli, va fatta l'analisi FIRST/FOLLOWS etc) per giungere alla realizzazione di un parser. Ad esempio un generico e poco dettagliato parser per la grammatica che ho scritto prima potrebbe essere:

void espressione(){

Termine();
AltraEspressione();

}

void AltraEspressione(){

Operatore();
Termine();

if(è finito il file di cui si sta facendo il parsing)
return;

AltraEspressione();

}

void Operatore(){

...
}

void Termine(){

...

}

A questo punto un parser siffatto è in grado di dire se un file è sintatticamente corretto, ma non è in grado di verificarne la semantica (ad es una espressione tipo 10/0 per il parser è corretta, ma non ha significato). Quindi il passo successivo è quello di realizzare un modulo di controllo semantico, poi uno di interpretazione (se ad es si vuole sapere il valore di un'espressione) e così via.

Ora, considera che un linguaggio di alto livello può essere composto da centinaia se non migliaia di regole sintattiche che compongono la grammatica, e inoltre l'analisi semantica è estremamente complicata (basti pensare ad es al solo type checking) e bisogna fare la conversione in codice macchina. I ragionamenti che ho esposto tra l'altro valgono solo x alcuni tipi di grammatiche (dette LL(1), in quanto è possibile distinguere tra le varie entità sintattiche guardando il solo primo carattere di un token, cioè una unità di testo) e possono essere estesi alle grammatiche LL(k), ma ci sono altre grammatiche a cui si approccia in modo radicalmente differente (se nn ricordo male ne avevo viste alcune tipo SLR(1), ma potrebbe essere una castroneria). Quindi, se vuoi interessarti seriamente all'argomento, pensa che tutto quello ke ho scritto va moltiplicato x 10^32

ciauz
The3DProgrammer è offline   Rispondi citando il messaggio o parte di esso
Old 17-11-2005, 01:25   #7
The3DProgrammer
Senior Member
 
Iscritto dal: May 2000
Messaggi: 1459
ah, tra l'altro mi accorgo che sto pseudo parser che ho scritto è riferito ad una grammatica di forma + semplice (ho fatto il casting automatico ) chiamata BNF.
The3DProgrammer è offline   Rispondi citando il messaggio o parte di esso
Old 17-11-2005, 09:35   #8
franksisca
Senior Member
 
L'Avatar di franksisca
 
Iscritto dal: May 2005
Città: Roma
Messaggi: 7938
3dprog, a parte i complimenti per la spiegazione davvero esaurinte, una picola sottolineatura...
la firma tre righi (i mod sono pignoli, non famoli inc......)
__________________
My gaming placement
franksisca è offline   Rispondi citando il messaggio o parte di esso
Old 17-11-2005, 10:55   #9
okay
Senior Member
 
Iscritto dal: Feb 2002
Messaggi: 906
io mi sono cimentato in questo è ho lasciato il progetto per cose + alla mia portata.

vorrei tanto che intervenisse repscasb su questo 3d la quale a collaborato al compilatoreTc 3.1 della borland.....
okay è offline   Rispondi citando il messaggio o parte di esso
Old 17-11-2005, 11:05   #10
fek
Senior Member
 
L'Avatar di fek
 
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
fek è offline   Rispondi citando il messaggio o parte di esso
Old 17-11-2005, 11:50   #11
shinya
Senior Member
 
L'Avatar di shinya
 
Iscritto dal: Jul 2005
Città: Bologna
Messaggi: 1130
x fek: non l'ho mica capita...

x altri: se vi interessa il parsing c'è un libro aggratis molto esaustivo a questo indirizzo: http://www.cs.vu.nl/~dick/PTAPG.html

Così vi viene il vomito
shinya è offline   Rispondi citando il messaggio o parte di esso
Old 17-11-2005, 12:18   #12
shinya
Senior Member
 
L'Avatar di shinya
 
Iscritto dal: Jul 2005
Città: Bologna
Messaggi: 1130
A proposito di compilatori e interpreti...facciamo una gara?
Vediamo chi riesce a risolvere per primo questo problema http://spoj.sphere.pl/problems/FOOL/

Chi ce la fa posti il sorgente! (In realtà è una scusa, perchè io ci ho provato a mettermici lì una sera e non ci sono riuscito...ma forse dovrei mettermici più d'impegno! :P)
shinya è offline   Rispondi citando il messaggio o parte di esso
Old 17-11-2005, 12:52   #13
jappilas
Senior Member
 
L'Avatar di jappilas
 
Iscritto dal: Apr 2003
Città: Genova
Messaggi: 4747
Quote:
Originariamente inviato da shinya
non l'ho mica capita...
< immagine postata da fek > ->(op di sostituzione)
"sì e poi c' era la marmotta che confezionava la cioccolata"
__________________
Jappilas is a character created by a friend for his own comic - I feel honored he allowed me to bear his name
Saber's true name belongs to myth - a Heroic Soul out of legends, fighting in our time to fullfill her only wish
Let her image remind of her story, and of the emotions that flew from my heart when i assisted to her Fate

Ultima modifica di jappilas : 17-11-2005 alle 14:30.
jappilas è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


MSI PRO MAX EDGE AI+, Ryzen AI Max+ 395 e 128 GB per far girare in locale anche i modelli più grandi MSI PRO MAX EDGE AI+, Ryzen AI Max+ 395 e 128 GB...
Recensione vivo X500 Pro Max: la fotografia mobile ha un nuovo protagonista Recensione vivo X500 Pro Max: la fotografia mobi...
WoW Forever: la beta è stato uno dei momenti più alti della storia dei videogiochi, e non si ripeterà WoW Forever: la beta è stato uno dei mome...
Oracle AI World 2026: in Europa prima la sovranità, poi la sicurezza e solo dopo l'IA Oracle AI World 2026: in Europa prima la sovrani...
DS N°7 E-Tense: il SUV premium made in Melfi che punta su autonomia e comfort DS N°7 E-Tense: il SUV premium made in Melfi...
Contatori del condominio, la data da seg...
Windows 11, 8 GB di RAM non sono pi&ugra...
Octopus Energy ritira la tariffa Flex Mu...
Disegnare la superconduttività co...
Il razzo spaziale NASA SLS per la missio...
Il drone NASA Dragonfly ha volato per la...
GTA 6, preload dal 10 novembre: servono ...
The Elder Scrolls VI: Sentinel, Bethesda...
Un doppio disco di detriti attorno a una...
Windows 11: risolta la disattivazione fo...
42AI, l'intelligenza artificiale anticip...
Windows 11 26H2 gira con appena 128 MB d...
GPT-6.2 Astra compare in Codex, Claude F...
Record assoluto per Linux 7.4: quasi mez...
Datacenter “standard” esonerato dalla va...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 02:55.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v