Qual è la differenza fondamentale tra la semantica operativa di piccole e grandi dimensioni? Sto facendo fatica a capire di cosa si tratta e la motivazione per avere i due.
Sto cercando un semplice calcolo che supporti il ragionamento sulla riflessione , ovvero l'introspezione e la manipolazione dei programmi in esecuzione. Esiste un'estensione -calculus non tipizzata che consente di convertire -terms in una forma che può essere sintatticamente manipolata e successivamente valutata?λλ\lambdaλλ\lambda Immagino che il calcolo abbia due principali termini …
Dato un sistema di transizione etichettato , dove S è un insieme di stati, Λ è un insieme di etichette e → ⊆ S × Λ × S è una relazione ternaria. Come al solito, scrivi p α → q per ( p , α , q ) ∈ → …
Nel documento "Un tipo di dati JSON replicato senza conflitti" , ho riscontrato questa notazione per la definizione formale di "regole": Come si chiama questa notazione? Come lo leggo? Per esempio: la DOCregola non ha nulla nel suo "numeratore" - perché no? le regole EXECe GETsembrano avere due termini separati …
Nei linguaggi di programmazione, le chiusure sono una caratteristica popolare e spesso desiderata. Wikipedia dice (enfasi sulla mia): In informatica, una chiusura (...) è una funzione insieme a un ambiente di riferimento per le variabili non locali di quella funzione. Una chiusura consente a una funzione di accedere a variabili …
Sto davvero lottando con questa proprietà: Let sia spazi coerenti e è una funzione monotona. è continuo se e solo se , per tutti tale che D sia un insieme diretto.X,YX,YX,Yf f ( ⋃ x ∈ D x ) = ⋃ x ∈ D f ( x ) D ⊆ …
Con riferimento a funzionalità in linguaggi come ruby (e javascript), che consentono a un programmatore di estendere / sovrascrivere le classi in qualsiasi momento dopo averlo definito (comprese le classi come String), è teoricamente fattibile progettare un linguaggio che consenta ai programmi di estenderli in seguito la sua semantica. es: …
Conosco la semantica operativa (sia piccoli che grandi) per definire i linguaggi di programmazione. Sono interessato anche all'apprendimento della semantica denotazionale, ma non sono sicuro che ne varrà la pena. Imparerò solo lo stesso materiale da un diverso punto di vista o ci sono intuizioni che posso ottenere solo dalla …
Supponiamo di avere un linguaggio semplice costituito dai termini: truetrue\mathtt{true} falsefalse\mathtt{false} se sono termini, allora lo è anchei ft1,t2,t3t1,t2,t3t_1,t_2,t_3ift1thent2elset3ift1thent2elset3\mathtt{if}\: t_1 \:\mathtt{then}\: t_2 \:\mathtt{else}\: t_3 Ora supponi le seguenti regole di valutazione logica: iftruethent2elset3→t2[E-IfTrue]iffalsethent2elset3→t3[E-IfFalse]t1→t′1ift1thent2elset3→ift′1thent2elset3[E-If]iftruethent2elset3→t2[E-IfTrue]iffalsethent2elset3→t3[E-IfFalse]t1→t1′ift1thent2elset3→ift1′thent2elset3[E-If] \begin{gather*} \dfrac{} {\mathtt{if}\: \mathtt{true} \:\mathtt{then}\: t_2 \:\mathtt{else}\: t_3 \to t_2} \text{[E-IfTrue]} \quad \dfrac{} {\mathtt{if}\: \mathtt{false} \:\mathtt{then}\: t_2 …
Penso di essere piuttosto confuso su ciò che viene chiamato un calcolo e ciò che viene chiamato un linguaggio di programmazione. Tendo a pensare, e potrebbe essere stato detto, che un calcolo è un sistema formale per ragionare sull'equivalenza dei programmi. I programmi hanno una semantica operativa specificata da una …
Ci sono molte lingue popolari. Ma gli informatici ci dicono che per capire il comportamento dei programmi in quelle lingue discutono in modo definitivo e inequivocabile del comportamento dei programmi (ad esempio, dimostrando la loro identità), dobbiamo tradurli in un altro linguaggio ben compreso. Chiamano tale linguaggio "una semantica". Gli …
Esiste uno strumento per la prototipazione di una semantica del linguaggio di programmazione e di un sistema di tipi che consenta anche una sorta di controllo del modello delle proprietà standard, come la solidità del tipo? Lo sto chiedendo, perché sto leggendo un libro su Alloy e fornisce l'esatta funzionalità …
Nella discussione intorno a questa domanda , Gilles menziona correttamente che qualsiasi prova di correttezza di un algoritmo che utilizza array deve dimostrare che non vi sono accessi fuori campo fuori campo; a seconda del modello di runtime, ciò provocherebbe un errore di runtime o l'accesso a elementi non array. …
Al lavoro mi è stato assegnato il compito di dedurre alcune informazioni sul tipo di un linguaggio dinamico. Riscrivo sequenze di affermazioni in letespressioni nidificate , in questo modo: return x; Z => x var x; Z => let x = undefined in Z x = y; Z => let …
Sto cercando risorse per iniziare con l' analisi del programma . L'unico libro che ho trovato sull'argomento è il libro Nielson & Nielson . Oltre a ciò, sembra che ci siano solo libri "compilatori" in cui "analisi del programma" sarebbe un capitolo o qualcosa del genere. Le persone conoscono altre …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.