@laoong: Jak wrzucę kolejne nagrania z przed wakacji i z września to tam goście od Haskella mówią, że przeciętna biblioteka ma około 30 linii kodu (plus jakieś duperele by było przenośne) i bierze się za to grubą kasę. Zatem program w haskellu na 100 linii to całkiem duża aplikacja.
@koziolek666: Jasne, że kod funkcyjny jest bardzo skondensowany, ale myślałem sobie o zrobieniu jakiejś stronki w Happstacku i nietrywialne strony już takie kompaktowe nie są. W każdym razie tylko na myśleniu się skończyło, bo musiałbym okręcić sobie głowę wokół szyi kilka razy, żeby to garnąć.
Cześć programirki!

Jakiś czas temu opublikowałem post o kolektorach w #java8. Dzisiaj zauważyłem, że zapomniałem wam go udostępnić (,) W szczególności jeśli dobrze pamiętam to @hbpitero chciał żebym go zawołał jak już coś o kolektorach napiszę (i to było dawno temu).

W artykule opisałem czym jest kolektor, do czego służy, oraz pokazałem jak napisać własny (w tym przypadku akurat znajdowanie najpopularniejszego elementu listy).

Link: http://blog.radoszewski.pl/programming/java/2015/07/31/custom-java-8-collectors.html

Wołam #
@Cilthal: Pewnie część z nich tak. Prawda jest jednak taka, że niezależnie od tego ile zarabiasz to i tak zawsze robisz Google Driven Development (w szczególności często przechodzi to w Stack Overflow Driven Development) Wtedy ci ludzie mogą równie dobrze trafić na tę stronę. ( ͡º ͜ʖ͡º)
@korri: co Ty, nie przeszłoby. Z resztą wszystko co osiągnąłem póki co (niewiele :D) to zrobiłem sam.. jakimś cudem. Ehh tak tylko śmieję, bo mi się nie chce trochę już. Język może i fajny, ale bardzobardzo nie lubię czegoś robić z przymusu, nauka dla siebie to byłoby coś całkiem innego :)
@Veuch: Składniowo wszystko jest OK, ale w Haskellu odstępy są ważne. Widzę, że w ST masz ustawione tabulacje. To się może lekko gryźć ze spacjami. Ustaw, żeby tabulacje były robione spacjami i spróbuj wtedy odpalić.
@Hoff:
ref i := sa nie 'funkcyjne' ^^ . Twoj kod jest spoko, nie musisz na sile szukac rozwiazan funkcyjnych.

Natomiast sprobojmy to zmienic uzywajac rekurencji i operatora with ktory fajnie wspolgra jesli chodzi o tworzenie nowego recordu na bazie starego z nowa zmieniona wartoscia. Dzieki temu nie masz przypisani i mutacji stanu obiektu ale generowany ciagle nowy obiekt.

Inna ciekawostka, miast loopa uzylem rekurencji z matchem po kolekcji ( head::tail
@Hoff: Mam jedynie doswiadczenie w laczeniu F# jako mniejsze techniczne moduliki do robienia np migracji danych. Nigdy nie robilem czegos co corowo byloby oparte na F#.

Problemem F# jest :
- learning curve - jest to inne podejscie i wymaga nowego rodzaju wiedzy i doswiadczenia.
- dostepnosc programistow - F# nie jest popularny i ciezej o programmera
- stawki dla programisty - F# owiec w LND zarabia 20-30% wiecej od C#
Programirki! Dzisiaj opublikowałem na blogu post opisujący monady. Każdy, kto kiedykolwiek zetknął się z #programowaniefunkcyjne już pewnie słyszał o tych stworkach.

Chciałbym pokazać, że przydają się także, kiedy uskuteczniamy klasyczne #programowanie. Dodatkowo wołam @archlinuxuser bo chciałeś zobaczyć jak ten koncept wytłumaczę:

http://blog.radoszewski.pl/programming/scala/2015/05/31/mighty-monad.html

Post po angielsku, ale pisany językiem raczej prostym (i prawdopodobnie z błędami ;)). Zapraszam i miłej lektury!

Dodatkowo proszę mirków od #haskell aby przyjrzeli się moim przykładom i sprawdzili,
@moriturius: Dobry artykuł, plus za nieporównywanie monad do burrito tudzież biurka - te analogie zawsze prędzej czy później sprawiają, żę człowiek ma mętlik w głowie ; F

Co do wołania Mirków od #haskell - nie jestem prawdziwym haskellfagiem (quicksort to szczyt moich możliwości aktualnie), ale spróbuję:
a) wydaje mi się, że z treści artykułu trochę za bardzo wynika powiązanie monad z kolejnością operacji i stanem, na co prawdziwi Haskellowcy by się
@moriturius: Uczyłem się monad zanim poszedłem na teorię kategorii i niespecjalnie mi to przeszkadzało. :) Wydaje mi się, że jeśli ktoś jest na tyle zdolny, żeby pojąć jedno, to pojmie i drugie (i na odwrót) - co w sumie nie jest dziwne, bo to ten sam temat, tylko inaczej przedstawiony. :) Tzn. oczywiście teoria kategorii jest o wiele szersza i porusza mnóstwo innych tematów, ale wydaje mi się zbędna nawet do
@alkan: Ja właściwie miałem podobnie. Miałem programowanie równościowe i funkcyjne na studiach i potem bawiłem się tym w domu, ale niestety sparzyłem się tak samo jak Ty na zupełnie innym podejściu. Programowanie imperatywne has no power here ;)

Podszedłem do tego zupełnie od innej strony - zacząłem się bawić Scalą i tam próbować wprowadzać różne koncepty funkcyjne, aż się z nimi nie oswoiłem. Ostatecznie monady nie wydają się niczym specjalnym. Ot
Mirki z #programowanie oraz #programowaniefunkcyjne (tutaj nieco mniej obserwujących ;) ). Pomyślałem, że może wam się spodobają treści na moim aktualnym blogu. W dzisiejszym odcinku opisałem do czego służy Optional w Javie 8. Ogólnie zamieszczam i zamierzam zamieszczać treści związane z programowaniem, programowaniem funkcyjnym, #scala, #java i co innego ciekawego przyjdzie mi do głowy :)

Link do aktualnego posta: http://blog.radoszewski.pl/programming/java/2015/04/19/java-optional.html

Miłego czytania!

Ach, zapomniałem wspomnieć, że czytanie odbywa się w języku
Twórcą jest @aseeon

Jako, że jego wpisy niedługo odejdą w niepamięć, robię mirror jego postów, aby dodać do ulubionych :)

#naukaprogramowania #programowaniefunkcyjne #programowanie

###################
# WSTĘP
###################

Tym razem będzie (prawie) sam zbiór materiałów, bo nie jestem na tyle kompetentny w dziedzinie programowania funkcyjnego żeby wnieść coś twórczego do tematu.

Będzie jednak więcej języków za jednym razem - kolejność przypadkowa.

Nie wrzucam wszystkich materiałów jakie istnieją. Starałem się wybrać te które wiem,
hej, potrafi ktoś na szybko podać przykład problemu, którego rozwiązanie w języku funkcyjnym będzie miało mniej linii kodu, będzie bardziej eleganckie niż w podejściu imperatywnym (głównie obiektowym). Taki kod pokazujący przewagę podejścia funkcyjnego. Pamiętam, że widziałem miażdżace przykłady czegoś takiego, tylko samych przykładów nie pamiętam i nie mogę na szybko czegoś znaleźć :) Z góry dzięki.

#programowanie #programowaniefunkcyjne #scala #kiciochpyta
#naukaprogramowania #programowaniefunkcyjne #programowanie

###################

# WSTĘP

###################

Tym razem będzie (prawie) sam zbiór materiałów, bo nie jestem na tyle kompetentny w dziedzinie programowania funkcyjnego żeby wnieść coś twórczego do tematu.

Będzie jednak więcej języków za jednym razem - kolejność przypadkowa.

Nie wrzucam wszystkich materiałów jakie istnieją. Starałem się wybrać te które wiem, że są dobre, te które są polecane jako dobre lub te które wyglądają jakby były dobre.

###################

# JAK SIĘ
Szanowni Mireczki i #januszeprogramowania ,

Ciągle szukam #wyjatkowiludzie do #programowanie w #erlang . Erlang to #programowanieboners ponieważ #programowaniefunkcyjne wywraca mózg na lewo strone - #programistycznymindfuck - i już tak zostaje... #ofertapracy w Warszawie, doświadczenie w #erlang niewymagane, ale wymagana chęć rozwijania umiejętności programistycznych w nieskończoność (czyli aż się naumie). Mile widziana znajomość dowolnego języka funkcyjnego np. #scala #lisp lub #haskell . #softwaredevelopment w obszarze #telekomunikacja #gsm #coregsm. Firma zamieszkuje spokojną część
Mireczki i #januszeprogramowania ,

Szukam #wyjatkowiludzie do #programowanie w #erlang . Erlang to generalnie #programowanieboners ponieważ #programowaniefunkcyjne wywraca mózg na lewo strone - #programistycznymindfuck - i już tak zostaje... #ofertapracy w Warszawie, doświadczenie w #erlang niewymagane, ale wymagana chęć rozwijania umiejętności programistycznych w nieskończoność (czyli aż się naumie). Mile widziana znajomość dowolnego języka funkcyjnego np. #scala #lisp lub #haskell . #softwaredevelopment w obszarze #telekomunikacja #gsm #coregsm. Firma zamieszkuje spokojną część Żoliborza