-
Data: 2019-08-23 10:34:37
Temat: Re: Sortowanie bąbelkowe
Od: Maciej Sobczak <s...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]> A dlaczego rekurencja jest fuj?
Bo sortowanie bąbelkowe jest procesem fizycznym, który ani się na rekurencji nie
opiera ani też nie odnosi się do niej w swoim opisie. Właśnie brak odniesienia do
rekurencji w opisie tego procesu sprawia, że rekurencja jest tam obcą konstrukcją.
Można byłoby się z niej wytłumaczyć, gdyby była artefaktem implementacyjnym,
wymaganym przez użytą technologię (coś w stylu - dlaczego w silniku benzynowym jest
świeca zapłonowa). Ale nie jest.
Ot, jakiś fan programowania funkcyjnego się popisał.
> (I dlaczego Stephen Wolfram zdecydował się ją wesprzeć w swoim języku?)
A dlaczego uważasz, że się zdecydował albo że ją wsparł? W takiej formie jak powyżej,
możliwość użycia rekurencji jest raczej przypadkowym efektem ubocznym innych reguł. O
innych językach też tak można powiedzieć - funkcja może zawołać funkcję; właściwie
może zawołać dowolną, bo niby czemu nie; o kurczę, sama siebie też może zawołać, a to
dopiero ciekawostka!
Należałoby raczej powiedzieć, że jej nie zabronił. Bo i nie było potrzeby zabraniać.
Ale żeby robić z tego fetysz?
Zwłaszcza, że wersja bez rekurencji nie jest ani trochę dłuższa. A przy użyciu lambdy
można było całość zapisać jednym wyrażeniem:
FixedPoint[#/.{pre___,a_,b_,post___}/;a>b->{pre,b,a,
post}&,testData]
I tego już rekurencja nie potrafi. A nadal jest zgodnie z opisem.
--
Maciej Sobczak * http://www.inspirel.com
Najnowsze wątki z tej grupy
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
- Ada 2022 Language Reference Manual to be Published by Springer
- Press Release - AEiC 2023, Ada-Europe Reliable Softw. Technol.
- Ada-Europe - AEiC 2023 early registration deadline approaching
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2023
- Ile cykli zajmuje mnożenie liczb 64-bitowych?
Najnowsze wątki
- 2024-05-17 ZŁOMNIK o pracy w TVN TURBO, nowych przepisach i współczesnej motoryzacji. Turbo Taryfa!
- 2024-05-17 Białystok => DevOps Engineer Conexa First (Contractor) <=
- 2024-05-17 Warszawa => Starszy inżynier oprogramowania (Rust) <=
- 2024-05-17 Zabrze => Junior HelpDesk <=
- 2024-05-17 Bieruń => Administrator i wdrożeniowiec Lotus Notes/Domino <=
- 2024-05-17 Warszawa => Senior Software Engineer PHP (BillPro) Contractor <=
- 2024-05-17 Warszawa => International freight forwarder <=
- 2024-05-17 Warszawa => Fullastack (Java) Developer <=
- 2024-05-17 Lublin => Business Development Manager - obszar bezpieczeństwa IT <=
- 2024-05-17 Warszawa => Mid PHP Developer (Laravel) <=
- 2024-05-17 Warszawa => Mid PHP Developer (Laravel) <=
- 2024-05-17 Warszawa => Senior PHP Developer (Symfony) <=
- 2024-05-18 wojna wojno a kredyt trzeba spłacać
- 2024-05-16 Samo rozładowywanie baterii trakcyjnej w elektryku.
- 2024-05-16 Warszawa => Senior PHP Developer (Symfony) <=