Perché il tipo di opzione Scala non si chiama Forse, proprio come in Haskell? [chiuso]


13

Perché il tipo di opzione Scala non si chiama Forse, proprio come in Haskell?

Forse ha molto più "senso semantico" per me, ma forse Option ha un comportamento diverso di cui non sono a conoscenza.

C'è qualche motivo particolare per cui Option in Scala non è stato chiamato Forse?

Risposte:


23

Scala è anche ispirata a Ocaml, che utilizza Option .

Le opzioni sono di tipo standard Ocaml che può essere None(non definito) o Some xdove x può avere qualsiasi valore. Le opzioni sono ampiamente utilizzate in Ocaml per rappresentare valori indefiniti (un po 'come NULL in C, ma in modo sicuro per tipo e memoria) ...

Penso che il nome scelto sia una questione di gusti.


8
Anche F #. La pagina su Wikipedia è en.wikipedia.org/wiki/Option_type . Sembra essere un nome più standard diMaybe
KChaloux

2
Ocaml prende il nome da SML. In una rapida occhiata ai linguaggi di programmazione The Next 700 di Landin non ho notato un tipo di opzione, quindi SML potrebbe essere l'origine del nome.
Peter Taylor,

1
Un argomento a favore di Optionè che è un optionalvalore (o lo capisci o no). Maybeimplica un certo grado di incertezza da parte del programmatore. Forse c'è un valore? Non lo so .. Devo ottenere un valore? La formulazione optional valuesuona più intenzionale secondo me.
Jochem Kuijpers,

6

Una domanda migliore qui sarebbe perché viene chiamato il tipo di opzione di Haskell Maybe. Il tipo di opzione ML è probabilmente il nonno di tutti i tipi di opzione e si chiama option.

In ogni caso, questa è una domanda terminologica, quindi non avrà una risposta di principio. Alle persone che hanno scelto il nome in Haskell è piaciuto di più, tutto qui.


2
Cosa ti ha posseduto per ripetere le informazioni in una nuova risposta che è già ben coperta dalla risposta accettata e dai suoi commenti sottostanti?
Robert Harvey,

4
@RobertHarvey ML dopo aver impostato il precedente sono nuove informazioni, il vero problema è che la risposta è congetturare anche quella.
djechlin,

OK. Hai un riferimento o qualcosa di più di una semplice opinione? Perché le opinioni sono meglio rappresentate come commenti, non come risposte. Soprattutto il tuo secondo paragrafo.
Robert Harvey,

2
Def. Opzione: l'atto di scegliere; scelta. Def. Forse; possibilmente; Un'incertezza; Una risposta incerta. Per me questo dovrebbe dire Forse è il nome molto migliore da un punto di vista puramente linguistico. "Opzione" implica che ci sono (molteplici) scelte, mentre il nome monadico "Forse" è molto più evidente: una cosa o niente. Ma sì, ML (e quindi, Opzione) è venuto per primo, quindi potrebbe essere la ragione del cattivo nome del habbit (E vedi il commento di Peter Taylor alla risposta giusta sopra - fa riferimento a ML).
fnl,

@fnl Vedi il mio commento sull'altra risposta; Penso che ci sia un caso ragionevole per cui si optiontratta di un'abbreviazione optional. Nel qual caso le (multiple) scelte sono ridotte a solo due: o è lì o non lo è.
Jochem Kuijpers,
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.