-
Data: 2010-12-17 07:28:00
Temat: Re: Jaki j?zyk - ceny?
Od: Mariusz Kruk <M...@e...eu.org> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]epsilon$ while read LINE; do echo \>"$LINE"; done < "Maciej Sobczak"
>> >Nie popadajmy w skrajność. Można być przyjaznym dla maszyny nie będąc
>> >jednocześnie aż tak niskopoziomowym.
>> Nie można. Każda forma niebędąca kodem maszynowym jest nieprzyjazna
>> i musi być tłumaczona na postać wynikową.
>Przyjazność dla maszyny to właśnie miara łatwości tego tłumaczenia.
>Niektóre języki są wysokopoziomowe zachowując jednocześnie prostotę i
>intuicyjność translacji. Zwłaszcza te imperatywne. Niestety o językach
>funkcjonalnych nie można tego powiedzieć.
OK. Każdy język jest nieprzyjazny. Jeden może bardziej, inny mniej, ale
to średnio dobry argument. Kwestia "dobroci" kompilatora.
>Kiedyś widziałem dość krótki artykuł, w którym autor zastanawiał się
>nad Haskellem. Była tam funkcja sortująca, bodajże quicksort w dwóch
>(!) linijkach. Zapis ścinał z nóg. Gorzej z wydajnością. Okazało się,
>że ten zajefajny zapis ma się nijak to tego, co się dzieje w pamięci i
>co robi CPU.
Trochę mi się przypomina argumentacja przeciwko programowaniu
obiektowemu podpierana tym, jak to pięknie można w asemblerze
przyoszczędzić kilkanaście bajtów.
W pewnych warunkach to faktycznie może mieć znaczenie. Ale w wielu
innych nie będzie miało takiego, jak to, że piszemy szybko i w miarę
bezbłędnie.
>> Nie róbmy na siłę kalki z angielskiego.
>Nie rób se jaj.
Nie robię sobie jaj. Lóknij przez łindoł na korner czy kar jeszcze stoi.
>Po pierwsze, w tej branży kalki to najlepsze co można
>zrobić, przynajmniej jest zgodnie ze wszystkimi innymi kalkami.
No właśnie niekoniecznie i nie zawsze.
>Po
>drugie, "funkcyjny", jak rozumiem, absolutnie żadną kalką nie jest,
>tak?
Owszem, nie jest.
>Niby w czym kalka "funkcyjny" jest lepsza od kalki
>"funkcjonalny"?
http://sjp.pwn.pl/slownik/2460400/funkcyjny_I
http://sjp.pwn.pl/slownik/2558726/funkcjonalny
>> >> Funkcjonalne języki, w przeciwieństwie do języków niefunkcjonalnych
>> >> (Brainf*ck anyone?) dają jednak jakieś możliwości.
>> >Jakie?
>> Skoro niektóre są funkcjonalne, to inne muszą być niefunkcjonalne.
>No sam widzisz, że nie bardzo jest co wymieniać.
Oczywiście, że jest. Choćby większość (wszystkie?) ezoteryczne są
niefunkcjonalne. Bo i nie po to były tworzone.
>> >Ponownie to samo pytanie: dlaczego nie wygrały tych zawodów o T1000?
>> >Może jednak nie dają tych możliwości, co wszyscy myślą, że dają?
>> Odpowiem pytaniem na pytanie - dlaczego w tym roku w F1 wygrał człowiek
>> z nazwiskiem zaczynającym się na "V"? Może jednak inne litery nie dają
>> takich możliwości?
>Słabe.
Owszem. Twoje pytanie było słabe. Nie dość, że usiłowałeś generalizować
z pojedynczego przypadku, to jeszcze usiłujesz przekształcić korelację
w implikację. Większe błędy logiczne ciężko byłoby popełnić.
>Powtórzę: języki funkcjonalne nie wnoszą niczego (w szczególności
>żadnego "paradygmatu"), co fundamentalnie przyczyniłoby się do
>efektywności w systemach współbieżnych, względem istniejących technik.
Ę? Jak nie, jak tak? Weźmy w szczególności ten haskell i quicksort
(i nie przypierniczaj mi się do wydajności konretnego kompilatora,
bo to rzecz wtórna).
#v+
quicksort [] = []
quicksort (s:xs) = quicksort [x|x <- xs,x < s] ++ [s] ++ quicksort [x|x <- xs,x >= s]
#v-
W sposób oczywisty widać, że kolejne wywołania rekurencyjne mają szansę w sposób
naturalny zostać zrównoleglone. Napisz to teraz w C pilnując ręcznie
wszystkiego, czego trzeba pilnować.
--
Kruk@ -\ |
}-> epsilon.eu.org |
http:// -/ |
|
Następne wpisy z tego wątku
- 17.12.10 08:03 Przemysław Osmański
- 17.12.10 08:56 Maciej Sobczak
- 17.12.10 09:08 Stachu 'Dozzie' K.
- 17.12.10 09:14 Krzysiek Kowaliczek
- 17.12.10 09:19 Mariusz Kruk
- 17.12.10 09:23 Mariusz Kruk
- 17.12.10 09:54 Krzysiek Kowaliczek
- 17.12.10 10:00 Mariusz Kruk
- 17.12.10 10:11 Krzysiek Kowaliczek
- 17.12.10 10:28 Mariusz Kruk
- 17.12.10 14:05 Yarael Poof
- 17.12.10 15:25 A.L.
- 17.12.10 15:32 A.L.
- 17.12.10 15:38 A.L.
- 17.12.10 16:15 Michoo
Najnowsze wątki z tej grupy
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- 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
Najnowsze wątki
- 2024-11-29 Dławik CM
- 2024-11-29 [OT] Lewe oprogramowanie
- 2024-11-29 Błonie => Sales Specialist <=
- 2024-11-29 Warszawa => IT Expert (Network Systems area) <=
- 2024-11-29 Warszawa => Ekspert IT (obszar systemów sieciowych) <=
- 2024-11-29 Warszawa => Head of International Freight Forwarding Department <=
- 2024-11-29 Białystok => Inżynier Serwisu Sprzętu Medycznego <=
- 2024-11-29 Pómpy ciepła darmo rozdajoo
- 2024-11-29 Białystok => Application Security Engineer <=
- 2024-11-29 Białystok => Programista Full Stack (.Net Core) <=
- 2024-11-29 Gdańsk => Software .Net Developer <=
- 2024-11-29 Wrocław => Key Account Manager <=
- 2024-11-29 Gdańsk => Specjalista ds. Sprzedaży <=
- 2024-11-29 Chrzanów => Specjalista ds. public relations <=
- 2024-11-27 Re: UseGalileo -- PRODUKTY I APLIKACJE UŻYWAJĄ JUŻ DZIŚ SYSTEMU GALILEO