Garantie de satisfaction à 100% Disponible immédiatement après paiement En ligne et en PDF Tu n'es attaché à rien
logo-home
Samenvatting hoofdstuk 1: Meta-circulaire Interpretatie €2,99
Ajouter au panier

Resume

Samenvatting hoofdstuk 1: Meta-circulaire Interpretatie

1 vérifier
 86 vues  22 fois vendu

Dit is de samenvatting van het eerste hoofdstuk van het vak Interpretatie van Computerprogramma's I. In deze samenvatting werd zowel alle informatie uit de slides als bijkomende informatie uit eigen notities opgenomen. EINDRESULTAAT: 16/20

Aperçu 3 sur 19  pages

  • Non
  • Hoofdstuk 4.1
  • 27 juillet 2022
  • 19
  • 2019/2020
  • Resume
book image

Titre de l’ouvrage:

Auteur(s):

  • Édition:
  • ISBN:
  • Édition:
Tous les documents sur ce sujet (8)

1  vérifier

review-writer-avatar

Par: baptistevandereecken49 • 6 mois de cela

avatar-seller
lennyS
Hoofdstuk 1: Meta-circulaire interpretatie
1 Interpreters
“An interpreter (or evaluator) for a programming language is a procedure that, when applied to an
expression of the language, performs the actions required to evaluate that expression.”

= een programma




Waarom bestuderen?

• interpreters dwingen taalontwerpers (en studenten) semantiek expliciet te maken
o precisie en volledigheid zijn vereist om een proces in een programmeertaal uit te
drukken
▪ volgorde van de evaluatie van argumenten voor een functie-applicatie
▪ omgevingsmodel zonder figuren
▪ iteratief proces voor recursieve procedure via staartrecursie-optimalisatie
• interpreters stellen taalontwerpers (en studenten) in staat alternatieve semantieken te
onderzoeken
o nieuwe soorten expressies ondersteunen
▪ if-let, while, throw …
o nieuwe syntax of semantiek voor expressies
▪ argumenten voor een functie-applicatie pas evalueren wanneer hun waarde
nodig is
▪ dynamisch bereik in plaats van lexicaal bereik
• interpreters worden vaak als uitbreidingsmedium binnen applicatie gebruikt

(+ 1 2)

+ = operator

1, 2 = operands

Volgorde van evaluatie operands is afhankelijk van de implementatie → interessant om effecten te
bestuderen.

1.1 Een meta-circulaire interpreter voor Scheme
Meta(in scheme)-cirulaire(aanvaard eigen definitie) interpreter(tolk)



1
Samenvatting Interpretatie van Computerprogramma’s I

,1.1.1 Interpretatie-fasen: read-eval-print




s-expressie = symbolische expressie

• evaluator is een lijstbewerkingsprogramma!
o we gebruiken domein-specifieke abstracties voor car en cdr

1.2 Implementatie van read-eval-print loop

(define input-prompt ";;; M-Eval input:")
(define output-prompt ";;; M-Eval value:")

(define (driver-loop)
(prompt-for-input input-prompt)
(let ((input (read)))
Verwacht invoer van de gebruiker.
(let ((output (eval input the-global-environment)))
Eval input the-global-env = kern van de code → verwerkt de invoer
van de gebruiker
(announce-output output-prompt)
(user-print output)))
Output (= verwerkte invoer) wordt terug gegeven
(driver-loop))

(define the-global-environment (setup-environment))
De globale omgeving wordt geinitialiseerd als een setup-env =
omgeving met primitieve uitdrukkingen die ondersteund worden.
(driver-loop)
Driver-loop wordt opgeroepen


2
Samenvatting Interpretatie van Computerprogramma’s I

, 1.2.1 Read-eval-print loop: print

(define (prompt-for-input string)
(newline) (newline) (display string) (newline))

(define (announce-output string)
(newline) (display string) (newline))

(define (user-print object)
(if (compound-procedure? object)
(display (list 'compound-procedure
(procedure-parameters object)
(procedure-body object)
'<env>))
(display object)))
Procedure equivalent aan display behalve voor expressies die naar
een procedure als waarde evalueren.

1.2.2 Read-eval-print loop: read

• vraagt de gebruiker om een string als invoer
• splitst de ingegeven string in een lineaire reeks van tokens
• vormt de reeks van tokens om naar een boom in de vorm van een geldige s-expressie




eval evalueert operator naar procedure,
evalueert operands naar lijst van waarden
apply past procedure toe op lijst van waarden,
roept eval om de procedure-body te evalueren
• Werken steeds samen.




3
Samenvatting Interpretatie van Computerprogramma’s I

Les avantages d'acheter des résumés chez Stuvia:

Qualité garantie par les avis des clients

Qualité garantie par les avis des clients

Les clients de Stuvia ont évalués plus de 700 000 résumés. C'est comme ça que vous savez que vous achetez les meilleurs documents.

L’achat facile et rapide

L’achat facile et rapide

Vous pouvez payer rapidement avec iDeal, carte de crédit ou Stuvia-crédit pour les résumés. Il n'y a pas d'adhésion nécessaire.

Focus sur l’essentiel

Focus sur l’essentiel

Vos camarades écrivent eux-mêmes les notes d’étude, c’est pourquoi les documents sont toujours fiables et à jour. Cela garantit que vous arrivez rapidement au coeur du matériel.

Foire aux questions

Qu'est-ce que j'obtiens en achetant ce document ?

Vous obtenez un PDF, disponible immédiatement après votre achat. Le document acheté est accessible à tout moment, n'importe où et indéfiniment via votre profil.

Garantie de remboursement : comment ça marche ?

Notre garantie de satisfaction garantit que vous trouverez toujours un document d'étude qui vous convient. Vous remplissez un formulaire et notre équipe du service client s'occupe du reste.

Auprès de qui est-ce que j'achète ce résumé ?

Stuvia est une place de marché. Alors, vous n'achetez donc pas ce document chez nous, mais auprès du vendeur lennyS. Stuvia facilite les paiements au vendeur.

Est-ce que j'aurai un abonnement?

Non, vous n'achetez ce résumé que pour €2,99. Vous n'êtes lié à rien après votre achat.

Peut-on faire confiance à Stuvia ?

4.6 étoiles sur Google & Trustpilot (+1000 avis)

48298 résumés ont été vendus ces 30 derniers jours

Fondée en 2010, la référence pour acheter des résumés depuis déjà 15 ans

Commencez à vendre!
€2,99  22x  vendu
  • (1)
Ajouter au panier
Ajouté