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ź.


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

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")

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
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.