ITPW 2008

0

Chyba nie sposób znaleźć zapalonego programistę, który nie słyszał o tym konkursie.

Ciekawe jakie zadanie tym razem przygotują nam organizatorzy.
Ja po cichu liczę na jakąś heurezę :)

http://www.mimuw.edu.pl/KNI/ITPW/

0

Hm, albo mi się zdaje albo w poprzednich latach Ocamla nie było. Buce jedne, mogli dać Haskella jak już cos z funkcyjnych dają. Chociaż z Ocamlem da się żyć, jak dla mnie to lepiej pasuje do tego rodzaju zadań niż pozostałe dozwolone języki. Cóż, zobaczymy.

A datę z tematu poprawiłem, 2007 już był ;-P.

0

Ocaml i Java doszły niedawno.

Ps. Nigdy nie zrozumiem ludzi, którzy z przyjemnością klepią w językach funkcyjnych ;)

0

sprobuj cos napisac w rubym, nie jest on 100% funkcyjny, ale moze to Cie oswieci..

0

Ruby tylko wspiera programowanie funkcyjne ale jest ono niewygodne generalnie. Lispy też czysto funkcyjne nie są, do tego składnia potrafi odstraszyć na początku. W sumie najbardziej eleganckim i najprzyjemniejszym językiem funkcyjnyjnym, z którym pracowałem jest Haskell. Jak ma się trochę pojęcia o programowaniu funkcyjnym to jest językiem szalenie naturalnym.

Co jest takiego przyjemnego w programowaniu funkcyjnym? O tym można książkę napisać, jakieś arty na 4P o tym nawet były. Upraszczając - zupełnie inne podejście do programowania, zdecydowanie wyższa abstrakcja, więcej myślenia niż klepania, kod jest krótszy i czytelniejszy... ogółem bliższe to matematyki niż machania łopatą.

Szczerze powiedziawszy to gdy wracam od Haskella do C++ to mnie szlag trafia po prostu, brak leniwej ewaluacji, brak silnego typowania, inny model funkcji... no i nawet z STL+Boost sporo klepania więcej.

0
deus napisał(a)

Jak ma się trochę pojęcia o programowaniu funkcyjnym to jest językiem szalenie naturalnym.

Co jest takiego przyjemnego w programowaniu funkcyjnym? O tym można książkę napisać, jakieś arty na 4P o tym nawet były. Upraszczając - zupełnie inne podejście do programowania, zdecydowanie wyższa abstrakcja, więcej myślenia niż klepania, kod jest krótszy i czytelniejszy... ogółem bliższe to matematyki niż machania łopatą.

Dobrze rozumiem? Mówisz o wyższości języka (czy programowania?) funkcyjnego nad obiektowym czy ogólnie o zaletach funkcyjnego?

0

Wiesz, np. Ocaml udostępnia OOP, Common Lisp ma jeden z najlepszych systemów OOP jakie w ogóle powstały, ale to nie są języki czysto funkcyjne. Pomiędzy OOP a funkcyjnością nie ma porównania. To inne podejścia do rozwiązania i reprezentacji problemu w ogóle. Funkcyjność jest bardziej ścisła, wiele klas problemów w imperatywnym OOP przedstawia się zdecydowanie gorzej. Co nie zmienia faktu, że są języki łączące atuty OOP i funkcyjności, jak wspomniany CL, Ruby czy np. Smalltalk.
Programowanie czysto funkcyjne bez wsparcia w postaci monad czy innych mechanizmów ma też trochę minusów - ze względu na to, że obiekty są stałe, nie mozna ich modyfikować, nie wszystkie algorytmy da się zaimplementować w optymalnej złożoności.

Po prostu istnieje podejście odmienne niż wykonywanie kolejnych instrukcji... programowanie deklaratywne daje wyższą abstrakcę, pozwala opisać problem a nie drobiazgi rozwiązania, tutaj leży jego przewaga.

1 użytkowników online, w tym zalogowanych: 0, gości: 1