Wpis z mikrobloga

@teraz_fred_wyrucha_was: Np możesz zwrócić funkcję: partially applied, nie wspominając już o tym, że możesz sobie zrobić fabrykę funkcji. Generalnie to nie daje żadnych magicznych możliwości w porównaniu do tego co ma Java poza ładniejszym kodem i mniejszą ilością boilerplate.
  • Odpowiedz
@teraz_fred_wyrucha_was: masa zastosowań np. :

- tak zaimplementowany jest bind
- wykorzystanie domknięcia do stworzenia predefiniowanych strategii (np. var pow2 = createPow(2))
- tworzenie prywatnych właściwości (kiedy nasza funkcja jest konstruktorem/fabryką)
- tail calls

Ogólnie pytanie w stylu: po co w js są obiekty, ale skoro nie ma głupich pytań to wstrzymam się z uszczypliwością :)

  • Odpowiedz
@teraz_fred_wyrucha_was: Na przykład dla emulacji leniwości. Zamiast zwracania wyniku .. zwracasz funkcję obliczającą wynik. Jeśli potem wywołasz tą zwróconą funkcję to obliczy ona potrzebny wynik, jeśli nie to będzie mniej obliczeń. (Miejsce wywołania funkcji może nie być pewne czy wynik będzie potrzebny w przyszłości).
  • Odpowiedz