Quante istruzioni per una VM funzionante? / Programmazione

Subscribers:
4,410
Published on ● Video Link: https://www.youtube.com/watch?v=6Pdl-uX0x44



Duration: 48:31
445 views
30


Le Virtual Machines sono computer virtuali spesso utilizzati come interfaccia tra la programmazione ad alto livello e il linguaggio macchina nativo del computer su cui si sta lavorando. Qual è il numero minimo di istruzioni elementari necessarie per ottenere programmi che possano elaborare qualsiasi algoritmo? #programmazione #informatica
* https://www.youtube.com/watch?v=OBfrG6rbe30
* Il libro "Game Scripting Mastery": https://amzn.to/3uOCpLc
* The Dragon Book: https://amzn.to/3wxjLIl
(N.B. i referral links attribuiscono una piccola percentuale al creatore di contenuti senza maggiorazioni di prezzo per l'acquirente)
* Try it online: https://tio.run/#

Il video è una chiacchierata sui linguaggi di programmazione, in particolare su come creare un proprio linguaggio, una macchina virtuale e il numero minimo di istruzioni necessarie per realizzare un programma. Il video si basa su alcuni commenti ricevuti da un video precedente sulla top 10 dei linguaggi più ricercati.

+ 00:00 **La top 10 dei linguaggi di programmazione**
* Alcuni commenti sui linguaggi esoterici, amatoriali o goliardici
* La preferenza per il C e le parentesi graffe
* La proposta di una serie su come costruire un linguaggio da zero
+ 05:10 **Il libro Game Scripting Mastery**
* Un libro che spiega come creare un semplice linguaggio di scripting per un videogioco
* Il concetto di compilare un linguaggio ad alto livello in un codice a basso livello per una macchina virtuale
* Il riferimento al Dragon Book sui compilatori
+ 11:58 **Il byte code e la macchina virtuale**
* L'esempio di Java che viene compilato in un codice a basso livello basato su uno stack
* La differenza tra il byte code Java e il byte code Dalvik usato su Android
* La storia del Pascal e del P code machine
+ 19:50 **La macchina di Turing**
* Una macchina teorica che può eseguire qualsiasi algoritmo con un nastro infinito
* La proprietà di Turing completeness che hanno i computer reali
* I limiti della computabilità e il problema della terminazione
+ 25:36 **Il numero minimo di istruzioni**
* La domanda di quanti sono i comandi necessari per creare un linguaggio universale
* La risposta di una sola istruzione con il linguaggio esoterico Brainfuck
* Alcuni esempi di programmi scritti in Brainfuck







Tags:
programmazione
algortimi
compilatori
macchine virtuali
informatica
computabilità
dragon book