Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > pl.comp.programming > #32860
| Newsgroups | pl.comp.programming |
|---|---|
| Date | 2019-08-23 00:29 -0700 |
| References | <5889b9db-7fee-49e4-acd6-1f037733f5f3@googlegroups.com> <bb74ad83-47d5-486e-87cc-6c8bc019f58b@googlegroups.com> <3e644be6-ca29-4ef0-a44c-8424f2123a7d@googlegroups.com> |
| Message-ID | <d242764a-e79c-4430-bc1c-e66de6e96cd2@googlegroups.com> (permalink) |
| Subject | Re: Sortowanie bąbelkowe |
| From | godek.maciek@gmail.com |
W dniu piątek, 23 sierpnia 2019 08:18:35 UTC+2 użytkownik Maciej Sobczak napisał:
> > Spośród rozwiązań na Rosetta Code to w Wolframie jest niewątpliwie najładniejsze:
> >
> > bubbleSort[{w___, x_, y_, z___}] /; x > y := bubbleSort[{w, y, x, z}]
> > bubbleSort[sortedList_] := sortedList
>
> Tak, w tym wypadku wzorzec (i to razem z warunkiem) jest w "sygnaturze" funkcji. To pokazuje, że w Wolframie wywołanie funkcji nie działa tak samo jak w innych językach, tylko jest podmianą pasującego wzorca. Z punktu widzenia innych języków to powyżej to "przeciążanie" funkcji, ale widać, że wtedy przeciążanie na podstawie liczby albo typów argumentów to zaledwie kropelka w morzu tego, co da się takim mechanizmem zrobić.
> Przyznam jednak, że o ile ten mechanizm ma wysoką teoretyczną estetykę (pomijając rekurencję w tym przykładzie, która to rekurencja nie ma żadnej wartości dodanej i jest ogólnie fuj), to mam opory przed jego szerszym użyciem. Może ograniczają mnie stare przyzwyczajenia, ale pewniej się czuję z wzorcami ukrytymi wewnątrz funkcji, tak jak w moim pierwszym przykładzie. To, że te dwa podejścia są wymienne widać też po tym, że nawet ilość kodu jest taka sama (ale rekurencja jest fuj).
A dlaczego rekurencja jest fuj?
(I dlaczego Stephen Wolfram zdecydował się ją wesprzeć w swoim języku?)
Back to pl.comp.programming | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Sortowanie bąbelkowe Maciej Sobczak <see.my.homepage@gmail.com> - 2019-08-22 01:57 -0700
Re: Sortowanie bąbelkowe godek.maciek@gmail.com - 2019-08-22 02:13 -0700
Re: Sortowanie bąbelkowe Maciej Sobczak <see.my.homepage@gmail.com> - 2019-08-22 23:18 -0700
Re: Sortowanie bąbelkowe godek.maciek@gmail.com - 2019-08-23 00:29 -0700
Re: Sortowanie bąbelkowe Maciej Sobczak <see.my.homepage@gmail.com> - 2019-08-23 01:34 -0700
csiph-web