Lời khuyên cho việc chơi golf ở Elixir


8

Elixir là một ngôn ngữ chức năng tương đối mới, mà tôi rất quan tâm. Tôi muốn có những lời khuyên chung về việc chơi golf trong Elixir và tìm hiểu các kỹ thuật có thể áp dụng cho các vấn đề về golf-code có phần cụ thể đối với Elixir nói chung .


Dựa trên rất nhiều câu hỏi tương tự về Python , Ruby , Javascript , v.v. Tôi cũng sẽ cố gắng đăng các mẹo khi tôi tìm hiểu thêm về ngôn ngữ.


Elixir chạy trên Erlang VM phải làm gì với ngôn ngữ Erlang?
Alex A.

Câu trả lời:


1

Đối số chuỗi và char không cần khoảng trắng

Ví dụ, IO.puts"Hello, World!"IO.puts'cat'là các chương trình hợp lệ.


1

Không sử dụng toán tử ống hoặc dấu ngoặc đơn cho các phương thức gọi

# With Pipe
arg |> M.a |> M.b |> M.c   # 24 Bytes
arg|>M.a|>M.b|>M.c         # 18 Bytes

# With Parenthesis
M.c(M.b(M.a(arg)))         # 18 Bytes

# Only Spaces
M.c M.b M.a arg            # 15 Bytes

1

Tiêm mã vào chuỗi

Thay vì nối một cái gì đó thành một chuỗi, như:

"prefix"<>code<>"suffix"

Bạn có thể sử dụng #{}để chèn nó vào chuỗi:

"prefix#{code}suffix"

Điều này sẽ tiết kiệm 3 byte.


0

Đối số bản đồ cũng không cần khoảng trắng

Giống như câu trả lời của LegionMammal978 , bạn có thể bỏ không gian khi chuyển Bản đồ làm đối số cho một phương thức:

IO.inspect%{a: 1,b: 2}

1
Bạn có thể loại bỏ tương tự các dấu cách sau dấu hai chấm?
Alex A.

Thật đáng buồn không. Nhưng bạn có thể xóa dấu cách sau dấu chấm phẩy và dấu phẩy.
Sheharyar
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.