2013-01-02 7 views
10

So che lo => in Scala è usato nei letterali di funzione e significa "converti la cosa a sinistra nella cosa a destra". Ma come si chiama effettivamente il simbolo? Uguale, implica, lambda? Che cosa?Cosa è => chiamato in Scala?

+3

Cosa dire di 'arrow' o' makes'? – SLaks

+3

In varie lingue l'ho visto come una "freccia grossa" in contrasto con la "freccia sottile" '->'. Vedi questo su [fat arrows in javascript] (http://css.dzone.com/articles/javascript-fat-city) o questo su [fat vs thin arrows in Kotlin] (http://blog.jetbrains.com/ kotlin/2012/01/the-great-sintattico-shift /) –

risposta

16

Ricordo di aver letto il termine "razzo" da qualche parte, probabilmente nel libro Programming Scala di Dean Wampler e Alex Payne. Ho trovato this related answer from Bill Venners on a forum:

Ho chiesto a Martin Odersky un po 'indietro quello che ha chiamato, e ha detto "freccia destra". Ron Hitchens mi ha suggerito il nome "proiettile" un paio di mesi fa. L'ho usato qua e là, ma non sembrava attaccare. Circa 2 settimane fa ho chiesto ad alcuni ragazzi di Ruby come lo chiamano, e hanno detto "razzo hash". Il motivo per "hash" è Ruby che lo utilizza per mappare le chiavi da valutare, cioè "chiave => valore" in Ruby è come "chiave -> valore" in Scala (ma non tipizzato in Ruby), e ovviamente -> in Scala è un'astrazione della biblioteca, non parte della lingua.

Quindi suggerisco di chiamarlo "razzo". È più eccitante e meno violento del proiettile, e possiamo mettere un aggettivo in là per differenziare i vari usi in Scala: c'è "funzione razzo" in funzioni anonime, forse un "caso razzo" in una clausola caso in corrispondenza di espressione o funzione parziale , ecc

Quindi il termine "ufficiale" usato da Odersky è "freccia destra".

10

comunemente chiamato anche "grasso freccia"

UPDATE: oh Ho appena notato che Paolo Falabella menzionato in un commento sopra. In ogni caso, è altrettanto opportuno avere una risposta adeguata qui, poiché "fat arrow" è un nome molto comune per questo.

+0

Coffeescript ha entrambe le frecce "grasse" e "sottili" a destra. L'aggettivo è essenziale per distinguere tra loro. Scala è essenzialmente nella stessa situazione. –

+0

alias frecce "magre" ... lol – Trevor