-
151. Data: 2019-01-16 15:23:03
Temat: Re: Jaki język polecić początkującemu? - komentarz do artykułu w Programista 9/2018
Od: AK <n...@n...net>
On 2019-01-16 13:37, g...@g...com wrote:
> Wydaje się, że "programowanie funkcyjne" powoli bardziej się uciera w języku (o
czym świadczy np. istnienie artykułu na Wikipedii), i bardziej nadaje się do
tłumaczenia złośliwych gierek słownych (disfunctional -> dysfunkcyjny), ale to raczej
kwestia historycznego przypadku, niż jakiejś głębokiej prawdy o świecie.
1. Juz dawno sie utarlo "jezyk funkcyjny" (jeszcze pozne lata 50te).
2. Nie byl to przypadek. Tak orzekli/postanowili polonisci.
PS: Zeby nie bylo:)
Z wieloznacznscia slowa "funkcyjny" tez nie jest idealnie:)
W/g slownik apolskiego:
funkcyjny
1. <<dotyczący funkcji, zastosowania czegoś>>
2. <<dotyczący pełnionej funkcji, obowiązków>>
3. <<pełniący określoną funkcję o charakterze porządkowym>>
4. <<dotyczący funkcji matematycznej>>
No ale jednak to tu jest wyraznie wymienione znaczenie 4.,
a nie przy slowie "funkcjonalny" .
> Dlatego nie zamierzam poświęcać temu zagadnieniu ani jednego słowa więcej.
Uuuuuuu.... ;)
AK
-
152. Data: 2019-01-16 18:29:00
Temat: Re: Jaki język polecić początkującemu? - komentarz do artykułu w Programista 9/2018
Od: g...@g...com
W dniu środa, 16 stycznia 2019 12:28:10 UTC+1 użytkownik Maciej Sobczak napisał:
> > Pytam dlaczego podział na czyste funkcje i dokonujące efektów procedury jest
dobry.
>
> Bo, jak każda inna konwencja, również ta jest dodatkowym kanałem komunikacji między
autorem a czytelnikiem kodu. Co więcej, w odróżnieniu od komentarzy, taka konwencja
może być też zrozumiała dla automatów analizujących kod.
Nie wiem, czy "jak każda inna konwencja".
Gdybyśmy ustalili, że wszystkie funkcje nazywamy np. f1, f2, ...,
a wszystkie zmienne - x, y itd., to w typowym kodzie produkcyjnym
raczej nie poprawiłoby to czytelności (pomimo że można by ją było
łatwo weryfikować automatycznie)
-
153. Data: 2019-01-16 20:56:06
Temat: Re: Jaki język polecić początkującemu? - komentarz do artykułu w Programista 9/2018
Od: g...@g...com
W dniu środa, 16 stycznia 2019 18:29:01 UTC+1 użytkownik g...@g...com napisał:
> W dniu środa, 16 stycznia 2019 12:28:10 UTC+1 użytkownik Maciej Sobczak napisał:
>
> > > Pytam dlaczego podział na czyste funkcje i dokonujące efektów procedury jest
dobry.
> >
> > Bo, jak każda inna konwencja, również ta jest dodatkowym kanałem komunikacji
między autorem a czytelnikiem kodu. Co więcej, w odróżnieniu od komentarzy, taka
konwencja może być też zrozumiała dla automatów analizujących kod.
>
> Nie wiem, czy "jak każda inna konwencja".
> Gdybyśmy ustalili, że wszystkie funkcje nazywamy np. f1, f2, ...,
> a wszystkie zmienne - x, y itd., to w typowym kodzie produkcyjnym
> raczej nie poprawiłoby to czytelności (pomimo że można by ją było
> łatwo weryfikować automatycznie)
Ale być może ciekawsze jest pytanie: dlaczego
komunikowane tego, czy dana funkcja/procedura jest czysta,
czy też ma efekty uboczne, miałoby być istotne dla osoby czytającej kod?
-
154. Data: 2019-01-16 20:58:13
Temat: Re: Jaki język polecić początkującemu? - komentarz do artykułu w Programista 9/2018
Od: g...@g...com
W dniu środa, 16 stycznia 2019 15:23:08 UTC+1 użytkownik AK napisał:
> > Wydaje się, że "programowanie funkcyjne" powoli bardziej się uciera w języku (o
czym świadczy np. istnienie artykułu na Wikipedii), i bardziej nadaje się do
tłumaczenia złośliwych gierek słownych (disfunctional -> dysfunkcyjny), ale to raczej
kwestia historycznego przypadku, niż jakiejś głębokiej prawdy o świecie.
>
> 1. Juz dawno sie utarlo "jezyk funkcyjny" (jeszcze pozne lata 50te).
Wydaje mi się to mało prawdopodobne.
Masz jakieś źródła, które by to potwierdzały?
-
155. Data: 2019-01-17 09:35:16
Temat: Re: Jaki język polecić początkującemu? - komentarz do artykułu w Programista 9/2018
Od: Maciej Sobczak <s...@g...com>
> Dlatego numeryczne jezyki (Algol, Fortran) _gwarantowaly_ kolejnosc
> obliczen od lewej do prawej, jak rowniez mozna ja bylo wymusic/zmienic
> nawiasami (wczesniej byly wykonywane dzialania w nawiasach
> nawet przy rownorzednych priorytetowo operatorach).
> W C/C++ czy Free/ISO Pasalu (co jest dla mnie zaskoczeniem - dobrze
> ze sobie dalej spokoj z innymi Pascalami poza Turbo) _sie nie da_
Jak się nie da. C i C++ gwarantują kolejność takich obliczeń od lewej do prawej. I
dobrze, że właśnie to gwarantują.
--
Maciej Sobczak * http://www.inspirel.com
-
156. Data: 2019-01-17 09:45:04
Temat: Re: Jaki język polecić początkującemu? - komentarz do artykułu w Programista 9/2018
Od: Maciej Sobczak <s...@g...com>
> > Poprawne według kogo?
>
> W/g slownika jezyka polskiego i w/g polonistow.
https://sjp.pl/programowanie+funkcjonalne
"Nie występuje w słowniku."
Możesz podać jakieś źródło? Nawet "mój szwagier jest programującym polonistą" będzie
OK.
> Wazne, ze w jezyku polskim "funkcjonalny/ne" _jest juz zarezerowane
Gdzie się rezerwuje takie rzeczy? Jest jakaś formatka? Jakieś koszty albo chociaż
znaczki skarbowe? Zarezerwowałbym sobie to i owo.
Jedyne co dzisiaj mamy (i tak już chyba zostanie) to automaty tłumaczące, bo
poloniści białkowi oddali teren bez walki. Dlatego jesteśmy skazani na takie rzeczy:
https://docs.microsoft.com/pl-pl/dotnet/csharp/progr
amming-guide/concepts/linq/functional-programming-vs
-imperative-programming
A wracając do autorów białkowych (nie polonistów, ale np. wykładowców na uczelniach):
https://www.google.com/search?q=programowanie+funkcj
onalne&nirf=programowanie+funkcyjne
Nie wiem, jak poloniści chcieliby z tym walczyć, bo to nie ich teren. Mogą to co
najwyżej... zatwierdzić.
--
Maciej Sobczak * http://www.inspirel.com
-
157. Data: 2019-01-17 09:58:40
Temat: Re: Jaki język polecić początkującemu? - komentarz do artykułu w Programista 9/2018
Od: Maciej Sobczak <s...@g...com>
> Ale być może ciekawsze jest pytanie: dlaczego
> komunikowane tego, czy dana funkcja/procedura jest czysta,
> czy też ma efekty uboczne, miałoby być istotne dla osoby czytającej kod?
Bo data flow jest częścią kontraktu. W szczególności ten kontrakt mówi, czy można
wywołania bezpiecznie przestawiać, czy nie. I nie jest to informacja wyłącznie dla
optymalizatora albo provera - człowiek też powinien wiedzieć, na czym stoi np. robiąc
refaktoring kodu.
Można sobie też wyobrazić konwencję, że jedne operacje nazywamy małymi a inne
wielkimi literami. Albo np. że jedne mają nazwy zaczynające się od 'p' (jak "pure") a
inne 'se' (od "side effects"). Ale wtedy zatoczylibyśmy koło do niesławnej notacji
węgierskiej (albo tego co tak niesłusznie nazywano) i ponownie odkrylibyśmy, dlaczego
takie konwencje są słabe. Do mnie też (subiektywnie) struktura kodu przemawia
bardziej, niż ortografia a podział na funkcje i procedury to właśnie konwencja
strukturalna i gramatyczna.
--
Maciej Sobczak * http://www.inspirel.com
-
158. Data: 2019-01-17 10:23:26
Temat: Re: Jaki język polecić początkującemu? - komentarz do artykułu w Programista 9/2018
Od: AK <n...@n...net>
On 2019-01-17 09:45, Maciej Sobczak wrote:
>> Wazne, ze w jezyku polskim "funkcjonalny/ne" _jest juz zarezerowane
>
> Gdzie się rezerwuje takie rzeczy? Jest jakaś formatka?
[...]
Po prostu bredzisz (jak kazdy fanatyk), zamiast zaczac uzywac poprawnej
i "od wiekow" stosowanej dobrej terminologii.
PS: Nawet nie zauwazyliscie obaj prowokacyjki. Uzywalem odmian:
Fortran-u, Algol-u, ale uzywalem "Waszego" Lisp-a, a nie Lisp-u jak
"w moich czasach".
AK
-
159. Data: 2019-01-18 07:46:06
Temat: Re: Jaki język polecić początkującemu? - komentarz do artykułu w Programista 9/2018
Od: Maciej Sobczak <s...@g...com>
> Po prostu bredzisz (jak kazdy fanatyk), zamiast zaczac uzywac poprawnej
> i "od wiekow" stosowanej dobrej terminologii.
Ale jednak nie odpowiedziałeś na podane przeze mnie przykłady.
Szkoda, po raz N-ty nie dojdziemy do żadnego wniosku w tej sprawie (bo ta sprawa to
zjawisko okresowe). :-)
> PS: Nawet nie zauwazyliscie obaj prowokacyjki. Uzywalem odmian:
> Fortran-u, Algol-u, ale uzywalem "Waszego" Lisp-a, a nie Lisp-u jak
> "w moich czasach".
"Naszego"? Musiałeś mnie z kimś pomylić, ja Lispa nie lubię, jest dla mnie za mało...
funkcjonalny. :-D
--
Maciej Sobczak * http://www.inspirel.com
-
160. Data: 2019-01-18 10:40:31
Temat: Re: Jaki język polecić początkującemu? - komentarz do artykułu w Programista 9/2018
Od: AK <n...@n...net>
On 2019-01-18 07:46, Maciej Sobczak wrote:
>> Po prostu bredzisz (jak kazdy fanatyk), zamiast zaczac uzywac poprawnej
>> i "od wiekow" stosowanej dobrej terminologii.
>
> Ale jednak nie odpowiedziałeś na podane przeze mnie przykłady.
Nie mam w zwyczaju odpowiadac na brednie. Szkoda czasu.
PS: Troche szkoda.. konczy sie (wzorem pl.comp.lang.c i innych
zAyatolahiałych) juz ostatnia usenetowa polska grupa.
Czołem Panowie! - do nieusłyszenia.
AK