-
Data: 2017-08-23 12:14:59
Temat: Re: Co jest nie tak z C++ (było: Rust)
Od: Maciej Sobczak <s...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]> > Musiał. Musiał przeczytać o hd, tl, ttl, nil i null oraz wiedzieć, co robią
operatory v oraz &. I jeszcze parę innych rzeczy.
>
> Nie.
Urodził się z tą wiedzą? Naprawdę?
> Musiał nauczyć się języka, który potem zmieścił się w jego głowie.
To stwierdzenie dotyczy wszystkich języków. Mam wrażenie, że ideologizujesz i
dorabiasz mitologię do czegoś, co na to nie zasługuje.
> Ale przynajmniej będziesz miał szanse je wypowiedzieć bez dokumentacji.
Ale przecież operatory w Wolframie też można wypowiedzieć. Np. operator indeksowania
(to te podwójne nawiasy) nazywa się Part. I co ciekawe, jest to po prostu inna
składnia na to samo, więc a[[idx]] oraz Part[a,idx] to są te same operacje. Różnią
się tylko w pisowni. Podobnie, x+y to Plus[x,y]. Itd.
Oznacza to też, że każdy program w Wolframie można napisać nie używając żadnych
operatorów. Czyli jeśli nieczytelne operatory są dla Ciebie problemem i wolisz
samodokumentujący się zapis słowny, to w Wolframie możesz mieć tego nawet więcej, niż
w SmallTalku.
> Jednak w moim odczuciu linijka
>
> oddsEvens(x) = append(odds(x), evens(x))
>
> jest zdecydowanie czytelniejsza od
>
> oddsEvens[x_] := Join[x[[1 ;; ;; 2]], x[[2 ;; ;; 2]]]
No bez jaj. Naprawdę nie zrozumiałeś?
oddsEvens[x_] := Join[odds[x], evens[x]]
Teraz lepiej? Oczywiście, teraz potrzebujesz zdefiniować osobno czym jest odds[x_]
oraz evens[x_], np.:
odds[x_]:=x[[1 ;; ;; 2]]
evens[x_]:=x[[2 ;; ;; 2]]
albo nawet:
odds[x_]:=Part[x, 1 ;; ;; 2]
evens[x_]:=Part[x, 2 ;; ;; 2]
jeśli bardzo nie lubisz podwójnych nawiasów.
Ale uznałem, że taka "refaktoryzacja" jest tutaj przesadą, bo jeśli jakaś funkcja
pomocnicza jest implementowana jedną operacją, to nie ma po co takiej funkcji
definiować i można od razu rozwiązać właściwy (ten zadany) problem.
> Nie przekonał do czego?
A do czego miał przekonać? :-)
> Że język jest narzędziem do myślenia.
Każdy jest. Dlatego ten Twój przykład niczego szczególnego w tym zakresie nie
pokazał. Ot, dawno temu jakiś koleś napisał długi i skomplikowany program na
zrobienie prostej rzeczy. Dzisiaj proste rzeczy robi się krótkimi programami, dzięki
czemu można podnieść poziom i łatwiej/szybciej myśleć o rzeczach bardziej
skomplikowanych.
--
Maciej Sobczak * http://www.inspirel.com
Następne wpisy z tego wątku
- 23.08.17 13:42 g...@g...com
- 23.08.17 15:13 slawek
- 23.08.17 15:22 slawek
- 23.08.17 15:24 slawek
- 23.08.17 17:05 g...@g...com
- 23.08.17 17:18 g...@g...com
- 23.08.17 17:31 slawek
- 23.08.17 17:35 slawek
- 23.08.17 17:38 slawek
- 23.08.17 18:15 Piotr Chamera
- 23.08.17 20:52 AK
- 23.08.17 21:00 AK
- 23.08.17 22:02 AK
- 23.08.17 22:11 AK
- 23.08.17 22:17 AK
Najnowsze wątki z tej grupy
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- U nas propagują modę na SI, a w Chinach naukowcy SI po kolei umierają w wieku 40-50lat
- C++. Podróż Po Języku - komentarz
Najnowsze wątki
- 2025-07-03 Trybik
- 2025-07-04 Renault Symbioz
- 2025-07-04 Architektura IIIRP: Wyjątkowa, a prymitywniejsza niż stodoła pod zaborami
- 2025-07-04 Warszawa => International Freight Forwarder <=
- 2025-07-04 Wrocław => SAP ABAP Developer <=
- 2025-07-04 Warszawa => Mid/Senior IT Recruiter <=
- 2025-07-04 Białystok => Kotlin Developer <=
- 2025-07-04 Bieruń => Spedytor Międzynarodowy (handel ładunkami/prowadzenie flo
- 2025-07-04 Warszawa => Specjalista wsparcia IT - analiza techniczna sprzętu IT <
- 2025-07-04 Zakrzewo => Konsultant SAP HCM <=
- 2025-07-04 Łódź => Programista Mainframe (z/OS, Assembler) <=
- 2025-07-04 Szczecin => Key Account Manager IT <=
- 2025-07-04 Warszawa => Technik IT - Konfiguracja i Wsparcie Sprzętowe <=
- 2025-07-04 Warszawa => Technique IT - Hardware Configuration and Support <=
- 2025-07-04 Warszawa => Specjalista ds. Sprzętu IT i Wsparcia Technicznego <=