Domanda

Io sono un pò confuso leggere la definizione tra i due. Possono in realtà si intersecano in termini di definizione? O sto completamente perso? Grazie.

È stato utile?

Soluzione

Chiusure, come la parola tende ad essere utilizzato, sono solo funzioni (o blocchi di codice, se si vuole) che si può trattare come un pezzo di dati e passare ad altre funzioni, ecc ( "chiuso" bit è che ovunque alla fine si chiami, si comporta proprio come farebbe se si chiama è cui è stato originariamente definito). Una monade è (approssimativamente) più come un contesto in cui funzioni possono essere concatenati in modo sequenziale, e controlla come i dati vengono passati da una funzione all'altra.

Altri suggerimenti

Sono molto diversi, anche se monadi spesso utilizzo chiusure per catturare la logica.

Personalmente vorrei cercare di ottenere solida sulla definizione di chiusure (essenzialmente un pezzo di logica che cattura anche il suo ambiente, vale a dire le variabili locali, ecc) prima di preoccuparsi monadi. Essi possono venire più tardi:)

Ci sono diverse domande su chiusure a Stack Overflow - il migliore per aiutare voi dipenderà da quale piattaforma si sta lavorando. Per esempio, ci sono:

Personalmente sto solo iniziando a "Grok" monadi (grazie al libro che sto aiutando a). Un giorno vado a prendere in giro a scrivere un articolo su di loro, quando mi sento li capisco abbastanza bene:)

A "chiusura" è un oggetto comprendente 1) una funzione, e 2) i valori delle sue variabili libere dove è costruito.

A "monade" è una classe di funzioni che possono essere composti in un certo modo, cioè usando associato bind e ritorno operatori funzione di ordine superiore, per produrre altre funzioni.

Credo che le monadi sono un po 'più complicato di chiusure a causa chiusure sono solo blocchi di codice che ricordano qualcosa dal punto di loro definizioni e monadi sono un costrutto per "torcendo" la solita operazione di composizione funzione.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top