-
11. Data: 2011-05-29 21:48:51
Temat: Re: Functional languages - jeszcze nie
Od: Andrzej Jarzabek <a...@g...com>
On 28/05/2011 22:40, A.L. wrote:
>
> Mysle ze poki co, functional languages cierpia na "syndrom klucza":
> Mamy oto klucz ale nie mamy zamka ktory mozemy tym kluczem otworzyc. I
> rozpaczliwie tego zamka szukamy.
>
> Jakos nei widze powodu dla ktorego firma uprawiajaca od 10 lat jave i
> majaca iles tam milionow linii kodu mialaby to wszystko wyrzucic i
> zaczac programowac w jezyku Scala.
Ponoć Guardian tak właśnie zrobił - z tym, że nie wiem, ile mieli linii
kodu.
> Jezeli jezyki funkcyjne rozwiazuja COS lepiej, to jakos do tej pory
> nikt nei potrafil mi odpowiedziac na pytanie CO rozwiazuja lepiej?
Niektórzy mówią, że współbieżność jest takim zamkiem.
-
12. Data: 2011-05-29 22:07:45
Temat: Re: Functional languages - jeszcze nie
Od: A.L. <l...@a...com>
On Sun, 29 May 2011 22:48:51 +0100, Andrzej Jarzabek
<a...@g...com> wrote:
>On 28/05/2011 22:40, A.L. wrote:
>>
>> Mysle ze poki co, functional languages cierpia na "syndrom klucza":
>> Mamy oto klucz ale nie mamy zamka ktory mozemy tym kluczem otworzyc. I
>> rozpaczliwie tego zamka szukamy.
>>
>> Jakos nei widze powodu dla ktorego firma uprawiajaca od 10 lat jave i
>> majaca iles tam milionow linii kodu mialaby to wszystko wyrzucic i
>> zaczac programowac w jezyku Scala.
>
>Ponoć Guardian tak właśnie zrobił - z tym, że nie wiem, ile mieli linii
>kodu.
No wlasnie. Ile?
>
>> Jezeli jezyki funkcyjne rozwiazuja COS lepiej, to jakos do tej pory
>> nikt nei potrafil mi odpowiedziac na pytanie CO rozwiazuja lepiej?
>
>Niektórzy mówią, że współbieżność jest takim zamkiem.
Poko co - "mow sie". Ale nei ma pzrekonywujacych dowodow, z wyjatkiem
byc moze Erlanga. Ale jest to zasluga architektury runtime a
neispecjalnie jego funkcjonalnosci
A.L.
-
13. Data: 2011-05-30 06:08:37
Temat: Re: Functional languages - jeszcze nie
Od: Maciej Pilichowski <P...@g...com>
On Sat, 28 May 2011 13:50:02 -0700 (PDT), Maciej Sobczak
<s...@g...com> wrote:
>Wła?nie trafiłem na ciekawy artykuł nt. języków funkcjonalnych:
>
>http://goodstuff.im/functional-languages-will-rule-
but-not-this-y
>
>Ogólnie autor jest wielkim fanem takich języków, ale (pobieżnie)
>opisuje problemy, które stoj? na drodze ich popularyzacji. My?lę, że
>czę?ć z nich jest trafna.
Przyjemny tekst, dzieki. Niedawno tez bylo krotko w Dr.Dobbsie o
problemach jezykow funkcyjnych, tj. czemu nie sa popularne.
Dlaczego do mnie osobiscie jak na razie wszystkie te jezyki nie
przemawiaja:
* kod wyglada jakby byl zaszyfrowany -- wszystko maksymalnie
upakowane, nawet jesli to moj wlasny kod, to po kwadransie musze
ponownie dochodzic do tego jaki byl tego sens. Albo inaczej, w
jezykach funkcyjnych kod jest zapisany "sprytnie", w zlym sensie
* nawet przy jezykach, ktore dostaja blogoslawienstwo duzych graczy
brak jest ksiazek -- czy ktos widzial np. "Building websites with
ASP.Net and F#"? Ja nie
* no i wymieniony juz problem -- w czym sa one lepsze? Albo inaczej,
potrzebuje np. typedefa w C# tu, teraz, ASAP, dynamicznych tupli, itd.
Wole miec lepszy C# niz F#, w ktorego za kazdym razem musze sie
wgryzac
Wydaje mi sie i jednoczesnie mam nadzieje, ze tradycyjne jezyki
dostana tylko zabawek z jezykow funkcyjnych, ze zniknie potrzeba
dokonywania calosciowego przeskoku na klasyczne jezyki funkcyjne.
milego dnia, hej
PS. Just in case, nie chodzi mi o Tuple z C#, tylko o dynamiczne
tuple, zebym mogl pisac
(a,b) = foo();
zakladajac, ze foo zwraca dwuelementowe tuple.
--
Moja wyprzedaz wszystkiego: ksiazki, plyty, filmy.
http://www.garaz.pol.pl/
-
14. Data: 2011-05-30 06:10:53
Temat: Re: Functional languages - jeszcze nie
Od: Maciej Pilichowski <P...@g...com>
On Sun, 29 May 2011 07:45:54 +0000 (UTC), Adam Przybyla
<a...@r...pl> wrote:
> ... w sumie dwa problemy pokonaly te jezyki: trudniejsza
>forma zapisu dla osob przywyczajonych juz do algorytmicznego w sensie
>iteracyjnym podejsciem do definiowania problemow
Ja nawet nie wiem czy to, czy jeszcze glebiej.
Ile z nas jest przyzwyczajonych do dodawania
+ 2 5
moze jak w szkolach podstawowych uczyliby takiej skladni...
Inna sprawa, jak MY jako ludzie myslimy tak naprawde? A co jest
przyzwyczajeniem. Czy czlowiek pierwotny:
* dodawal dwie krowy do pieciu
* czy do dwoch krow dodawal jeszcze 5
?
milego dnia zycze
--
Moja wyprzedaz wszystkiego: ksiazki, plyty, filmy.
http://www.garaz.pol.pl/
-
15. Data: 2011-05-30 11:24:24
Temat: Re: Functional languages - jeszcze nie
Od: Adam Przybyla <a...@r...pl>
Maciej Pilichowski <P...@g...com> wrote:
> On Sun, 29 May 2011 07:45:54 +0000 (UTC), Adam Przybyla
> <a...@r...pl> wrote:
>
>> ... w sumie dwa problemy pokonaly te jezyki: trudniejsza
>>forma zapisu dla osob przywyczajonych juz do algorytmicznego w sensie
>>iteracyjnym podejsciem do definiowania problemow
>
> Ja nawet nie wiem czy to, czy jeszcze glebiej.
>
> Ile z nas jest przyzwyczajonych do dodawania
> + 2 5
>
> moze jak w szkolach podstawowych uczyliby takiej skladni...
>
>
> Inna sprawa, jak MY jako ludzie myslimy tak naprawde? A co jest
> przyzwyczajeniem. Czy czlowiek pierwotny:
> * dodawal dwie krowy do pieciu
> * czy do dwoch krow dodawal jeszcze 5
... pamietal wszystkei krowy z imienia a nie abstrakcyjna
ich liczbe;-) I lub pamietal, ze osoba ktora mu to powiedziala
mogal sie mylic, jak bardzo mylic i ... miec racje;-) Bez rozstrzygania
o tym od razu;-) Z powazaniem
Adam Przybyla
-
16. Data: 2011-05-30 11:40:26
Temat: Re: Functional languages - jeszcze nie
Od: Andrzej Jarzabek <a...@g...com>
On 30/05/2011 07:08, Maciej Pilichowski wrote:
> On Sat, 28 May 2011 13:50:02 -0700 (PDT), Maciej Sobczak
> <s...@g...com> wrote:
>
> Dlaczego do mnie osobiscie jak na razie wszystkie te jezyki nie
> przemawiaja:
> * kod wyglada jakby byl zaszyfrowany -- wszystko maksymalnie
> upakowane, nawet jesli to moj wlasny kod, to po kwadransie musze
> ponownie dochodzic do tego jaki byl tego sens. Albo inaczej, w
> jezykach funkcyjnych kod jest zapisany "sprytnie", w zlym sensie
Z drugiej strony języki C-podobne też mają "zaszyfrowaną" składnię, a
wygrały popularnością z bardziej czytelną składnią języków
pascalo-podobnych.
> * nawet przy jezykach, ktore dostaja blogoslawienstwo duzych graczy
> brak jest ksiazek -- czy ktos widzial np. "Building websites with
> ASP.Net and F#"? Ja nie
O F# są książki, może nie takie, jak napisałeś, ale przecież o wielu
rzeczach nie ma specjalnej książki np. "Building order-routing systems
in C++ on Unix", a jednak się je robi.
> * no i wymieniony juz problem -- w czym sa one lepsze? Albo inaczej,
> potrzebuje np. typedefa w C# tu, teraz, ASAP, dynamicznych tupli, itd.
> Wole miec lepszy C# niz F#, w ktorego za kazdym razem musze sie
> wgryzac
Oj, to każdy tak woli. Ja np. musiałbym się wgryzać w C#, więc mógłbym
zadać to samo pytanie: w czym on lepszy?
Z kolei wiem o sytuacjach, gdzie instytucje mają problem z językiem
imperatywnym w postaci takiej, że reguły biznesowe rozpisane na postać
imperatywną są strasznie trudnym do zrozumienia i utrzymania gąszczem
if-ów i else-ów, który w dodatku ciągle sie zmienia pod wpływem nowych
wymagań napływających z biznesu. W wielu takich przypadkach szuka się
alternatywnych sposobów wyrażenia tych reguł i języki funkcyjne niekiedy
bywają do tego używane (ale szczegółów nie znam, więc nie rozwinę).
W końcu też problemem wszystkich języków imperatywnych jest
programowanie współbieżne: ręczny podział problemu na wątki i
synchronizacja są trudne i błędogenne, a to, które rozwiązanie będzie
wydajniejsze mocno zależy od parametrów, które się zmieniają od systemu
do systemu.
Napisanie programu tak, żeby kompilator lub runtime mógł sam decydować
co się opłaca zrównoleglić, a co nie, kiedy kopiować dane, a kiedy
chronić muteksem itd., wymaga zmiany paradygmatu. Języki funkcyjne są
jedną z odnóg badań w tym kierunku.
-
17. Data: 2011-05-30 11:55:09
Temat: Re: Functional languages - jeszcze nie
Od: Andrzej Jarzabek <a...@g...com>
On 29/05/2011 23:07, A.L. wrote:
> On Sun, 29 May 2011 22:48:51 +0100, Andrzej Jarzabek
> <a...@g...com> wrote:
>
>> Ponoć Guardian tak właśnie zrobił - z tym, że nie wiem, ile mieli linii
>> kodu.
>
> No wlasnie. Ile?
Według google - sto tysięcy.
>>> Jezeli jezyki funkcyjne rozwiazuja COS lepiej, to jakos do tej pory
>>> nikt nei potrafil mi odpowiedziac na pytanie CO rozwiazuja lepiej?
>>
>> Niektórzy mówią, że współbieżność jest takim zamkiem.
>
> Poko co - "mow sie". Ale nei ma pzrekonywujacych dowodow, z wyjatkiem
> byc moze Erlanga. Ale jest to zasluga architektury runtime a
> neispecjalnie jego funkcjonalnosci
Jak rozumiem temat jest w fazie badań. Ale ja nie siedzę w tym temacie,
wiem tylko tyle, co przeczytam w gazetach.
-
18. Data: 2011-05-30 14:05:15
Temat: Re: Functional languages - jeszcze nie
Od: Krzysiek Kowaliczek <k...@g...com>
Użytkownik Maciej Sobczak napisał:
>> Jezeli jezyki funkcyjne rozwiazuja COS lepiej, to jakos do tej pory
>> nikt nei potrafil mi odpowiedziac na pytanie CO rozwiazuja lepiej?
>
> Właśnie to pytanie próbowałem zadać w moim poprzednim zespole za
> każdym razem jak ktoś się nakręcał na Scalę, ale nigdy nie uzyskałem
> precyzyjnej odpowiedzi.
> Pierwsze rzuty oka na Scalę żadnego dreszczyka emocji u mnie nie
> wywołały a przyznam, że w ramach dobrej woli rzucałem więcej, niż raz.
Jeżeli chodzi o języki funkcyjne podobają mi się algebraiczne typy
danych oraz dopasowanie do wzorca. Ciekawi mnie dlaczego te rozwiązania
nie występują powszechnie w językach imperatywnych*, bo nie widzę
żadnych przeciwwskazań.
*) pomijając jakieś niszowe języki czy koślawe C++owe namiastki w stylu
union czy boost::variant.
Pozdrawiam
KK
-
19. Data: 2011-05-31 04:24:30
Temat: Re: Functional languages - jeszcze nie
Od: Maciej Pilichowski <P...@g...com>
On Mon, 30 May 2011 12:40:26 +0100, Andrzej Jarzabek
<a...@g...com> wrote:
>Z drugiej strony języki C-podobne też mają "zaszyfrowaną" składnię, a
>wygrały popularnością z bardziej czytelną składnią języków
>pascalo-podobnych.
if a> 5 then
begin
...
if (x>5)
{
...
hmm...
Bez przesady, to ta sama klasa jezykow, bez wiekszych odstepst. To
Perl, czy Ruby sa w pewnym sensie, zaszyfrowane, bo mozna w nich
odwrocic blok decyzji i wykonania.
>> * nawet przy jezykach, ktore dostaja blogoslawienstwo duzych graczy
>> brak jest ksiazek -- czy ktos widzial np. "Building websites with
>> ASP.Net and F#"? Ja nie
>
>O F# są książki,
W granicach bledu pomiaru.
> może nie takie,
Powiem Ci jakie sa. "F#", mozesz sobie wybrac jedna z az 3.
Nie zartuj, kogo obchodzi dzis goly jezyk bez nawiazania do bibliotek?
Przeciez to jest wlasnie to co decyduje o sukcesie lub porazce (vide
D).
>Oj, to każdy tak woli. Ja np. musiałbym się wgryzać w C#, więc mógłbym
>zadać to samo pytanie: w czym on lepszy?
Lepszy od czego?
milego dnia
--
Moja wyprzedaz wszystkiego: ksiazki, plyty, filmy.
http://www.garaz.pol.pl/
-
20. Data: 2011-05-31 06:54:08
Temat: Re: Functional languages - jeszcze nie
Od: Andrzej Jarzabek <a...@g...com>
On 31/05/2011 05:24, Maciej Pilichowski wrote:
> On Mon, 30 May 2011 12:40:26 +0100, Andrzej Jarzabek
> <a...@g...com> wrote:
>
>> Z drugiej strony języki C-podobne też mają "zaszyfrowaną" składnię, a
>> wygrały popularnością z bardziej czytelną składnią języków
>> pascalo-podobnych.
>
> if a> 5 then
> begin
> ...
>
> if (x>5)
> {
> ...
>
> hmm...
>
> Bez przesady, to ta sama klasa jezykow, bez wiekszych odstepst. To
Bo jesteś oswojony z konwencją, że {} to początek i koniec bloku kodu. A
takich rzeczy jest więcej. Np:
a b;
to definicja zmiennej b typu a;
p q(r s)
{
...
}
definicja 'funkcji'
void e(f g)
{
...
}
i tak dalej.
> Perl, czy Ruby sa w pewnym sensie, zaszyfrowane, bo mozna w nich
> odwrocic blok decyzji i wykonania.
Perl to w ogóle jest "zaszyfrowany" na 1000 różnych sposobów.