🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.funkcyjne
Article #259

Re: newbi: Co to jest i z czym to sie je? :)

#259
From: Michal Przybylek
Date: Wed, 12 Feb 2003 16:24
50 lines
3142 bytes
"Ryszard Szopa" <bies@dont.ask.stupid.questions> wrote:

> nie jestem miarodajny, ale afaik chodzi o to, że (w językach
> funkcyjnych) prawie każde wyrażenie
> a) jest funkcją
> b) jako taka może zwracać.
> > jakis krotki przyklad kodu? (np. w porownaniu do jakiegos OOP)
> lisp nie jest językiem czysto funkcyjnym, ale można napisac coś takiego:
> (if (if (> x y) (> x z) (> y z))
> t
> nil)
> mamy warunek w części warunkowej innego ifa... w c się tak afair nie da
> (przynajmniej bezpośrednio ;)

Oj, Ryszardzie :-)

[takze i od Przemka wymagam chwili skupienia]


Prosze, nie probuj definiowac pojecia "jezyk funkcyjny". Albowiem proba taka
jest z gory skazana na: a) niepowodzenie, lub b) dojscie do definicji
bezwartosciowej.


Niepowodzenie, jezeli bedzies skupial sie na cechach jezykow uwazanych za
funkcyjne i staral sie znalezc ich wspolny rdzen. Pewien zbior wlasnosci,
dla nich wspolnych. Nie istnieje cos takiego. Jezyki funkcyjne czestokroc
roznia sie bardziej miedzy soba niz miedzy ich obiektowymi kuzynami.


Dojscie do definicji bezwartosciowej, kiedy bedziesz probowal dociec co tak
naprawde czyni jezyk funkcyjnym. Bo, niestety, jezyk jest jezykiem
funkcyjnym iff jego autorzy zalozyli, ze on funkcyjnym bedzie. Na to sklada
sie w szczegolnosci wyglad standardowej biblioteki i propagowanie danego
(tu. funkcyjnego) stylu programowania. Funkcyjny styl programowania kladzie
nacisk na dekompozycje programu za pomoca matematycznych funkcji.
Matematyczna funkcja najprosciej mowiac - to taka mala czarodziejska
skrzyneczka, do ktorej z jedenj strony wkladamy jakas rzecz (np. krowe), a
z drugiej zaraz wyciagamy cos zupelnie innego (np. krolika). Przy czym wazne
jest, ze kazde kolejne wlozenia do owej skrzyneczki tej samej rzeczy co
poprzednio, owocuje nam pojawieniem sie identycznego produktu na wyjsciu.


Przyklad, ktory dalej dajesz w Lisp'ie jest zupelnie niezalezny od
funkcyjnosci. Ciezko mi to dokladniej skomentowac. Jest to zarazem
niepotrzebne. Za kilka dni, wglebiajac sie w CL'a, a najdalej kilka tygodzi,
sam do tego dojdziesz. Uwierz na slowo ;-)


mp
Technical Details
Message-ID: <b2dsso$pue$1@atlantis.news.tpi.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!newsfeed.tpinternet.pl!atlantis.news.tpi.pl!news.tpi.pl!not-for-mail
References: <b2ap0k$cum$1@atlantis.news.tpi.pl> <slrnb4kc1l.ljp.bies@hell.org.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!newsfeed.tpinternet.pl!atlantis.news.tpi.pl!news.tpi.pl!not-for-mail
From: "Michal Przybylek" <pkmichal@poczta.onet.pl>
Newsgroups: pl.comp.lang.funkcyjne
Subject: Re: newbi: Co to jest i z czym to sie je? :)
Date: Wed, 12 Feb 2003 17:24:27 +0100
Organization: tp.internet - http://www.tpi.pl/
Lines: 52
Message-ID: <b2dsso$pue$1@atlantis.news.tpi.pl>
References: <b2ap0k$cum$1@atlantis.news.tpi.pl> <slrnb4kc1l.ljp.bies@hell.org.pl>
NNTP-Posting-Host: 62.244.143.69
X-Trace: atlantis.news.tpi.pl 1045067481 26574 62.244.143.69 (12 Feb 2003 16:31:21 GMT)
X-Complaints-To: usenet@tpi.pl
NNTP-Posting-Date: Wed, 12 Feb 2003 16:31:21 +0000 (UTC)
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2600.0000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit