Voglio che sia
generazione di codice nativo // In grado di compilare con qualcosa come GHC
multipiattaforma (win / linux)
Funzionale e un po 'orientato agli oggetti
lambda, pattern matching, tuple e altre cose funzionali
Ottimo suppo...
Nei linguaggi imperativi, è banale escogitare un test di programmazione dell'uso della lingua della "semantica del valore" o della "semantica di riferimento". Si potrebbe fare quanto segue e controllare il valore di a (dove Vertex {one,...
Sto cercando di capire come gestire i valori delle variabili di default quando si eseguono funzioni senza effetti collaterali e si è finito con quanto segue:
function getDefaultSeparator() {
return ':';
}
function process(input, separator...
Per anni ho svolto attività algoritmiche, scrivendo strutture di dati scalabili per la ricerca su Internet, ad esempio Randomized Binary Search Trees per Auto Recommendation, BitMaps, Wisdom of Crowd based Algorithms usando Graphs, scrivendo alc...
Secondo wikipedia, Lingue di programmazione funzionale , che sono dichiarative, non consentono effetti collaterali. Programmazione dichiarativa in generale, tenta di minimizzare o eliminare gli effetti collaterali.
Inoltre, secondo wikiped...
Stavo facendo una presentazione su F # e stavo discutendo del tipo di opzione quando qualcuno del pubblico mi chiedeva se il tipo di opzione fosse l'implementazione di F # della forse monade. So che non è il caso, ma volevo chiedere in che modo...
In Haskell, posso usare il tipo a -> Maybe b per modellare una funzione che restituisce un valore di tipo b , o restituisce nulla (non riesce).
Se ho tipi a1, ..., a(n+1) e funzioni f1, ..., fn , con fi :: ai -> Mayb...
Ho letto articoli sulla programmazione funzionale ogni giorno e ho cercato di applicare alcune pratiche il più possibile. Ma non capisco cosa sia unico nel currying o nell'applicazione parziale.
Prendi questo codice Groovy come esempio:
def...
Sto esaminando questa series . L'autore menziona che dal momento che lo stato è mantenuto in programmazione orientata agli oggetti, è più difficile scrivere test unitari. Dice anche che dal momento che la programmazione funzionale non ha lo sta...
Casi di switch di lunga durata o costrutti if-else-if sono evitati in OOP usando il polimorfismo ovunque sia applicabile.
invece di ramificarsi facendo corrispondere un valore, la ramificazione viene eseguita a livello di classe stessa.
In...