Domande taggate «language-design»

Domande riguardanti la progettazione e la struttura dei linguaggi di programmazione.


2
Quanto dovrebbe essere semplice utilizzare un framework di sviluppo linguistico?
Questo fa parte di una serie di domande che si concentra su un progetto chiamato Abstraction Project, che mira ad astrarre i concetti utilizzati nella progettazione del linguaggio sotto forma di un quadro. Un'altra pagina ad essa associata relativa alla tipizzazione strutturale può essere visualizzata qui . Il meta-argomento associato …





1
Le continuazioni di prima classe sono utili nei moderni linguaggi di programmazione orientati agli oggetti?
Le continuazioni sono estremamente utili nei linguaggi di programmazione funzionale (ad esempio la Contmonade in Haskell) perché consentono una notazione semplice e regolare per il codice in stile imperativo. Sono utili anche in alcuni linguaggi imperativi più vecchi perché possono essere utilizzati per implementare funzionalità linguistiche mancanti (ad es. Eccezioni, …


3
Come implementare la valutazione pigra di if ()
Attualmente sto implementando un valutatore di espressioni (espressioni a riga singola, come formule) basato su quanto segue: l'espressione inserita viene tokenizzata per separare letterali booleani, numeri interi, decimali, stringhe, funzioni, identificatori (variabili) Ho implementato l'algoritmo Shunting-yard (leggermente modificato per gestire le funzioni con un numero variabile di argomenti) per sbarazzarsi …





1
Nome della tecnica per inferire argomenti di tipo di un parametro di tipo?
Setup: supponiamo di avere un tipo chiamato Iteratorche ha un parametro type Element: interface Iterator<Element> {} Quindi abbiamo un'interfaccia Iterableche ha un metodo che restituirà un Iterator. // T has an upper bound of Iterator interface Iterable<T: Iterator> { getIterator(): T } Il problema con l' Iteratoressere generico è che …

4
Avere una struttura linguistica del generatore come `yield` è una buona idea?
PHP, C #, Python e probabilmente alcune altre lingue hanno una yieldparola chiave che viene utilizzata per creare funzioni del generatore. In PHP: http://php.net/manual/en/language.generators.syntax.php In Python: https://www.pythoncentral.io/python-generators-and-yield-keyword/ In C #: https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/yield Sono preoccupato che, come caratteristica / funzione del linguaggio, yieldrompa alcune convenzioni. Uno di questi è ciò a cui …

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.