Wskazówki dotyczące gry w golfa w Io

10

Jakie masz ogólne wskazówki na temat gry w golfa w Io ? Szukam pomysłów, które można by zastosować do ogólnych problemów z golfem, które są przynajmniej nieco specyficzne dla Io (np. „Usuń komentarze” nie jest odpowiedzią). Proszę zamieścić jedną wskazówkę na odpowiedź.

Animesh „the CODER”
źródło
1
Czy możesz dodać link do Io?
caird coinheringaahing

Odpowiedzi:

1

Możesz przykleić metody na odwrocie większości literałów

"text" print    # 12 bytes
"text"print     # 11 bytes

12 print        # 8 bytes
12print         # 7 bytes

(0<1,0,1) print # 15 bytes
(0<1,0,1)print  # 14 bytes

Nie wszystko

0x12print # prints nothing
Asone Tuhid
źródło
1

Możesz pominąć pozostałą część funkcji if

Nie ma tego w dokumentacji ... Początkowo myślałem, że musisz dołączyć inną część, jak operator elvis w innych językach; okazuje się, że mogę pominąć część else. ( Proszę dodaj to do samouczka / dokumentacja!)

if("bug"size>2,"True",nil)

Tak więc, jeśli nie chcesz, aby część else zwróciła cokolwiek, możesz po prostu zrobić

if("bug"size>2,"True")
Λ̸̸
źródło
1

Skrótowa funkcja wyższego poziomu

To wydaje się całkiem interesującym punktem golfowym. Na przykład

list(1,2,3)map(i,i+1)print

Jednak Io jest dość liberalny, jeśli nie podaje licznika; treść mapy może być używana jako funkcja bez punktów, ponieważ Io próbuje wypełnić operand tego wyrażenia. Można w to zagrać w golfa

list(1,2,3)map(+1)print
Λ̸̸
źródło