Articles of programmazione funzionale

Vincoli di tipo membro statico F #

Sto cercando di definire una funzione, fattorizzazione, che utilizza i vincoli di tipo strutturale (richiede membri statici Zero, Uno, + e /) simile a Seq.sum in modo che possa essere utilizzato con int, long, bigint, ecc. I non riesco a trovare la syntax giusta, e non riesco a trovare molte risorse sull’argomento. Questo è quello […]

Scopo del terzo argomento per ridurre la funzione nella programmazione funzionale di Java 8

In quali circostanze è il terzo argomento a ‘ridurre’ chiamato in Java 8 flussi? Il codice seguente tenta di attraversare un elenco di stringhe e sumre i valori del punto di codice del primo carattere di ciascuno. Il valore restituito dal lambda finale non sembra mai essere usato e, se si inserisce un println, non […]

Perché niente farmaci generici in Go?

Disclaimer: ho giocato con Go per un solo giorno ora, quindi ci sono buone probabilità che mi sia mancato molto. Qualcuno sa perché non c’è un vero supporto per generici / modelli / whatsInAName in Go? Quindi c’è una map generica, ma fornita dal compilatore, mentre un programmatore Go non può scrivere la propria implementazione. […]

Inoltra il tubo in C #

Continuando le mie ricerche sull’esprimere idee F # in C #, volevo un operatore pipe forward. Per tutto ciò che è racchiuso in un object IEnumerable, lo abbiamo già, come è ansible .NextFunc () per il contenuto del tuo cuore. Ad esempio, se alla fine hai una riduzione simile a una piega, non puoi inserire […]

Combina memoization e coda-ricorsione

È ansible combinare memoization e coda-ricorsione in qualche modo? Sto imparando F # al momento e capisco entrambi i concetti ma non riesco a combinarli. Supponiamo di avere la seguente funzione di memoize (da Real-World Functional Programming ): let memoize f = let cache = new Dictionary() (fun x -> match cache.TryGetValue(x) with | true, […]

Ci sono problemi che non possono essere scritti usando la ricorsione della coda?

La ricorsione della coda è un’importante strategia di ottimizzazione delle prestazioni nei linguaggi funzionali perché consente alle chiamate ricorsive di consumare stack costanti (anziché O (n)). Ci sono problemi che semplicemente non possono essere scritti in uno stile coda-ricorsivo, o è sempre ansible convertire una funzione ricorsivamente ingenua in una coda ricorsiva? In tal caso, […]

Perché evitare la sottotitolazione?

Ho visto molte persone della comunità di Scala consigliare di evitare la sottotitoli “come una piaga”. Quali sono le varie ragioni contro l’uso di sottotipizzazione? Quali sono le alternative?

Javascript come linguaggio funzionale

Sto cercando di fare i conti con i concetti di programmazione funzionale. Ho usato Javascript per molti anni per lo scripting lato client in applicazioni Web e oltre all’uso di prototipi era tutto semplice manipolazione DOM, convalida dell’input, ecc. Di recente, ho letto spesso che Javascript è una delle lingue che supporta la programmazione funzionale. […]

Java SE 8 ha coppie o tuple?

Sto giocando con le pigre operazioni funzionali in Java SE 8, e voglio map un indice i ad una coppia / tupla (i, value[i]) , quindi filter base al secondo elemento value[i] e alla fine emettere solo gli indici. Devo ancora soffrire questo: qual è l’equivalente della coppia C ++ in Java? nell’audace nuova era […]

Programmazione orientata agli oggetti in Haskell

Sto cercando di ottenere una comprensione della programmazione di stile orientata agli oggetti in Haskell, sapendo che le cose saranno un po ‘diverse a causa della mancanza di mutevolezza. Ho giocato con le classi di tipi, ma la mia comprensione di esse è limitata a esse come interfacce. Quindi ho codificato un esempio in C […]