2013-01-02 31 views
10

Tôi biết => trong Scala được sử dụng trong chức năng literals và có nghĩa là "chuyển đổi điều ở bên trái sang điều bên phải". Nhưng biểu tượng thực sự được gọi là gì? Bằng, ngụ ý, lambda? Gì?=> được gọi là gì trong Scala?

+3

Làm thế nào về 'mũi tên' hoặc' làm'? – SLaks

+3

Trong các ngôn ngữ khác nhau, tôi đã nhìn thấy nó được gọi là "mũi tên béo" trái ngược với "mũi tên mỏng" '->'. Xem này trên [mũi tên chất béo trong javascript] (http://css.dzone.com/articles/javascript-fat-city) hoặc điều này trên [béo và mũi tên mỏng trong Kotlin] (http://blog.jetbrains.com/ kotlin/2012/01/the-great-syntactic-shift /) –

Trả lời

16

Tôi nhớ đã đọc thuật ngữ "tên lửa" ở đâu đó, có thể là trong sách Programming Scala của Dean Wampler và Alex Payne. Tôi đã tìm thấy this related answer from Bill Venners on a forum:

Tôi đã hỏi Martin Odersky một thời gian lại những gì ông gọi và nói "mũi tên phải". Ron Hitchens đã đề xuất tên "viên đạn" cho tôi một vài tháng trước. Tôi đã sử dụng nó ở đây và ở đó, nhưng nó dường như không dính. Khoảng 2 tuần trước, tôi đã hỏi một vài người Ruby gọi họ là gì, và họ nói "băm tên lửa". Lý do cho "băm" là Ruby sử dụng nó để ánh xạ các khóa tới giá trị, nghĩa là "key => value" trong Ruby giống như "key -> value" trong Scala (nhưng không được nhập vào Ruby), và dĩ nhiên -> trong Scala là một thư viện trừu tượng, không phải là một phần của ngôn ngữ.

Vì vậy, tôi đề nghị chúng tôi gọi đó là "tên lửa". Nó thú vị hơn và ít bạo lực hơn đạn, và chúng ta có thể đặt tính từ trong đó để phân biệt các ứng dụng khác nhau trong Scala: có "tên lửa chức năng" trong các hàm ẩn danh, có thể là "trường hợp tên lửa" trong mệnh đề trường hợp trong biểu thức khớp hoặc một phần chức năng , v.v.

Cụm từ "chính thức" được Odersky sử dụng là "mũi tên phải".

10

Cũng thường được gọi là "chất béo mũi tên"

UPDATE: oh Tôi chỉ nhận thấy rằng Paolo Falabella đề cập đến nó trong một chú thích ở trên. Bất cứ điều gì, nó chỉ là cũng như để có một câu trả lời đúng ở đây là "mũi tên chất béo" là indeeed một tên rất phổ biến cho nó.

+0

Coffeescript có cả mũi tên phải 'béo' và 'mỏng'. Tính từ là cần thiết để phân biệt giữa chúng. Scala cơ bản là trong tình huống tương tự. –

+0

còn gọi là mũi tên 'gầy' ... lol – Trevor