-
Data: 2019-08-07 22:32:22
Temat: Re: "Najbardziej imponujący kod, jaki widziałem"
Od: Maciej Sobczak <s...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]> Całkowicie się nie zgadzam.
> Nigdy nie miałem w szkole wprowadzanego zapisu x^2.
No tak. Bo widzisz - w Mathematice ten zapis wygląda dokładnie tak jak w szkole.
Natomiast po skopiowaniu go do grup dyskusyjnych jest x^2, bo w okienku, gdzie pisze
tego posta, jest tylko taki font i nie ma superscriptu.
> Użycie symbolu ^ do wyrażenia potęgowania jest może uznane przez garstkę osób
piszących w raczej niszowych językach.
https://en.wikipedia.org/wiki/Exponentiation#In_prog
ramming_languages
MATLAB, Wolfram, R, Excel, Analytica, TeX, "most computer algebra systems".
"Garstka osób w niszowych językach", tak? Łomatko...
Sami użytkownicy Excela pewnie przykryliby liczebnie fanów wszystkich innych
zapisów... Pozostali to ludzie zajmujący się profesjonalnie inżynierią i matematyką.
Niech będzie, że to nieistotna garstka.
> No właśnie. Ile godzin spędziliśmy w szkole, przyzwyczajając się do tej notacji?
Nie ważne ile. Ważne, że to była inwestycja, na której można bezpiecznie budować.
Programiści nie startują od zera i zwykle są to ludzie z jakimś istniejącym już
fundamentem intelektualnym. No chyba że robimy język dla kosmitów, jak w filmach
sci-fi i zakładamy, że odbiorca nie kuma kompletnie nic.
> List comprehensions mają jednak pewną przewagę nad map. Przy pomocy map nie
napiszesz czegoś takiego:
>
> [(x, y, z) | x <- [1 .. 100], y <- [1 .. 100], z <- [1 .. 100], x^2+y^2==z^2]
To, że w Twoim ulubionym języku nie napiszę, to jest Twój problem a nie mój. :-)
Map[
Function[triple,
Apply[Function[{x, y, z}, If[x^2 + y^2 == z^2, {x, y, z}, Nothing]], triple]
],
Tuples[Range[100], 3]
]
Nieco dłużej, ale Ty osiągnąłeś limit swojego zapisu a moja mapa nawet się nie
rozgrzała.
W tym przypadku jednak nie użyłbym mapy, bo to jest system z ograniczeniami a nie
transformacja i od mapy lepszy jest filtr:
Cases[Tuples[Range[100], 3], {x_, y_, z_} /; x^2 + y^2 == z^2]
Nawet działa >2x szybciej. I tak bym to zostawił.
> A w przypadku człowieka dlaczego nie chcesz, żeby był jak najprostszy?
Bo polegam na tym, co człowiek już wie ze szkoły. To jest koszt, który już został
poniesiony, więc mogę z niego za darmo skorzystać.
> Zrobiłem ankietę na Twitterze. Jak do tej pory zagłosowały 32 osoby.
> Wygląda na to, że spośród nich zgadza się z Tobą dokładnie 0 osób.
Ale znasz tą teorię psychologiczną, że otaczamy się ludźmi, którzy potwierdzają nasze
poglądy (bo innych nie lubimy, więc nie chcemy ich mieć w kręgu znajomych)? Wiesz, co
by wyszło, gdyby Wolfram taką ankietę zrobił na swoim profilu?
> Cały czas nie znam kontekstu, w którym ta druga notacja z haszami i małpami byłaby
efektywniejsza.
Problem w tym (podobnie jak w wielu poprzednich tematach), że nie da się ustawić
obiektywnej granicy pomiędzy znaczkami rozsądnymi a nierozsądnymi. Od nawiasów, przez
podstawowe operatory, po strzałki po hasze i małpy. Dla Ciebie małpa jest
nieczytelna, dla kogoś innego nieczytelny będzie znak plusa.
Granica czytelności jest subiektywna i zależy od... kręgu znajomych.
--
Maciej Sobczak * http://www.inspirel.com
Następne wpisy z tego wątku
- 08.08.19 00:44 AK
- 08.08.19 09:06 Maciej Sobczak
- 08.08.19 17:44 AK
- 08.08.19 22:04 Maciej Sobczak
- 24.09.21 01:11 Bischoop
Najnowsze wątki z tej grupy
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 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
Najnowsze wątki
- 2025-01-06 Jeździ, skręca, hamuje
- 2025-01-06 Białystok => System Architect (Java background) <=
- 2025-01-06 Gliwice => Specjalista ds. public relations <=
- 2025-01-06 Białystok => Solution Architect (Java background) <=
- 2025-01-06 Zielona GĂłra => Konsultant WdroĹźeniowy Comarch XL/Optima (KsiÄgowoĹ
- 2025-01-06 Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- 2025-01-06 Ostrów Wielkopolski => Area Sales Manager OZE <=
- 2025-01-06 Do IO i innych elektrooszolomow, tu macie prawdziwe smrody
- 2025-01-06 Białystok => Full Stack .Net Engineer <=
- 2025-01-06 Kraków => Business Development Manager - Network and Network Security
- 2025-01-06 Katowice => Regionalny Kierownik Sprzedaży (OZE) <=
- 2025-01-06 Warszawa => Spedytor Międzynarodowy <=
- 2025-01-06 Lublin => Programista Delphi <=
- 2025-01-06 Gdańsk => Specjalista ds. Sprzedaży <=
- 2025-01-06 śnieg