-
181. Data: 2012-06-14 20:00:46
Temat: Re: Czym jest programowanie?
Od: "slawek" <s...@h...pl>
Użytkownik "Andrzej Jarzabek" <a...@g...com> napisał w
wiadomości grup dyskusyjnych:jquqpo$e4k$...@i...gazeta.pl...
> wykonania w takiej kolejności". Program deklaratywny też można opisać jako
> "ciąg instrukcji" w szerszym znaczeniu, a w niektórych przypadkach
Wątpię czy istnieje jednoznaczność.
> nawet jako "zbiór instrukcji" (kiedy kolejność poszczególnych "instrukcji"
> nie ma znaczenia - raczej nie mamy do czynienia z paradygmatem
> imperatywnym).
Czyli program wielowątkowy nie może być napisany w C ?
(Dla mniej spostrzegawczych - program wielowątkowy nie gwarantuje
"kolejności instrukcji' - a język C jest językiem imperatywnym.)
> 2. Nie widziałeś "tego, co zostało z komputera", bo żadnej z tych maszyn
Jeżeli dobrze zrozumiałem w Oksfordzie są pokazywane autentyczne części.
Zapewne są to części maszyny różnicowej, ale Babbage chciał - w innej
konfiguracji - z nich robić maszynę analityczną.
Karty żakardowskie do obejrzenia w Białej Fabryce w mieście Łodzi.
(Najpiękniejsze w tym, że można z nich odtworzyć _cyfrowo_ wzory materiałów
sprzed około 150 lat.)
Nota bene, jak się nazywałby dziś człowiek przygotowujący takie karty?
Programistą!
> No więc właśnie według mnie to naturalna kolejność. Hardware się buduje
> jak wiadomo, że będzie użyteczny, a wykazać użyteczność komputera można na
> przykład pisząc program do niego jako proof of concept.
Ujmując filozoficznie... różne rzeczy się buduje... które są zupełnie
nieużyteczne. Ba! Część z nich nie jest nawet ładna (sztuka nie musi być
użyteczna).
> Zresztą właśnie jeśli chodzi o wspomnianą maszynę analityczną Babbage'a
> było właśnie tak, że hardware nigdy nie powstał, a programy owszem (patrz:
> dlaczego język Ada nazywa się właśnie tak).
Za dużo steampunka, za mało faktów. Nie wiem czy ocalał jakiś kod
źródłowy... czy też jest to mit (początki patentowego trollingu?)
Ale zgadzam się - do programowania nie są potrzebne komputery.
Dlatego definicja [programowania] nie powinna zawierać w swej treści pojęcia
komputera (ani innej maszyny).
-
182. Data: 2012-06-14 20:20:31
Temat: Re: Czym jest programowanie?
Od: "slawek" <s...@h...pl>
Użytkownik "Andrzej Jarzabek" <a...@g...com> napisał w
wiadomości grup dyskusyjnych:jqurnd$9gl$...@i...gazeta.pl...
> I co, czy chcemy odpowiedzieć na pytanie "co to jest programowanie" tak,
> żeby wyszło, że Euklides był programistą?
No dobrze, Euklides to był taki Knuth Starożytności. Napisał (podyktował?)
coś jakby pierwszy podręcznik geometrii... euklidesowej. A przy okazji
zapisał algorytm GCF.
Co prawda zapis był tylko w pseudo-kodzie, ale chyba nam to nie przeszkadza?
> A co do lenistwa, to Euklides przecież książkę napisał.
I podobno w zwyczaju było wtedy, pisaków suchościeralnych nie było,
kreślenie na piasku.
Piasek, zieleń, wiaterek lekki, dobre wino i ewentualnie niewolnice - niezłe
warunki do pracy naukowej i filozofowania.
-
183. Data: 2012-06-14 20:23:48
Temat: Re: Czym jest programowanie?
Od: "slawek" <s...@h...pl>
Użytkownik "Roman W" <b...@g...pl> napisał w wiadomości grup
dyskusyjnych:730e9120-4079-45d5-9fea-00c129264be2@go
oglegroups.com...
> Typowym uzasadnieniem jest, ze wystarczy troche zmienic opcje kompilatora
> i dwie wersje std::vector<double> staja sie niekompatybilne binarnie.
Bzdurki. Typowym rzeczywistym powodem jest niechęć do nauczenia się kobyły o
nazwie STL.
Nawet kosztem wymyślenia STL na nowo. Wtedy to my-STL staje się oswojone i
nie gryzie już tak bardzo.
-
184. Data: 2012-06-14 20:25:47
Temat: Re: Czym jest programowanie?
Od: "slawek" <s...@h...pl>
Użytkownik "A.L." <l...@a...com> napisał w wiadomości grup
dyskusyjnych:mpact71utmgcetmjik9ircck2pl5fv1c2s@4ax.
com...
> Fakt. Na PDP-11, 64 KB (kilobajty) pamieci na uzytkownika. A na
Dużo!
> wiekszych komputerach - 2 kompilacje tygodniowo :)
Trochę socjotechniki i byłby 2 batch'e dziennie.
-
185. Data: 2012-06-14 20:28:36
Temat: Re: Czym jest programowanie?
Od: "slawek" <s...@h...pl>
Użytkownik "A.L." <l...@a...com> napisał w wiadomości grup
dyskusyjnych:2nnct7lvjnd46p6j7b29cbbmk5p5r267ac@4ax.
com...
> "System templatow" to zwykly, ordynarny maroprocesor. Gorszy od tych
> ktore byly znane w latah 60. Badziewie zwykle, jak i caly C++
Zgadzam się. Ale to w sensie implementacji. Bo nigdzie (chyba!) nie jest
napisane, że to musi być takie badziewie. Więc teoretycznie...
-
186. Data: 2012-06-14 20:32:30
Temat: Re: c#
Od: "noma" <f...@g...SKASUJ-TO.pl>
> (...) 'koboldem wspólczesnosci'
aczkolwiek moze dodam 'pro forma' że rozmaite moje opinie
jak np ta moga nie być (a wrecz na pewno nie sa) jak to sie
mowi 'całkiem wiążące', bo mam wyrywkową wiedze, doswiadczenie
itp (aczkolwiek za c# _na pewno_ nie przepadam ;-)
--
Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
-
187. Data: 2012-06-14 21:18:20
Temat: Re: Czym jest programowanie?
Od: Michoo <m...@v...pl>
On 14.06.2012 12:31, Wojciech Muła wrote:
> W dniu czwartek, 14 czerwca 2012 01:39:27 UTC+2 użytkownik Michoo napisał:
>>> Ale nie żartujmy o C++ lambdach, bo dojdziemy do ściany
>>> a.k.a. closure. Lambdy bez podanych wprost argumentów nie
>>> mają dostępu do niczego z zewnętrznego zakresu, tak samo
>>> jest w phpie, tylko w phpie ciut ładniejsza składnia.
>>>
>> Przecież mają:
>> int b=64;
>> int a=32;
>> auto l = [&]()->int { return b+a; };
> ^^^^^
>
> A to co, jak nie podanie explicite zakresu dostępu.
Sposobu dostępu - wartość czy referencja (czy brak).
> O tym pisałem, że programista *musi* przy definicji
> ustalić, do czego funkcja ma dostęp.
Zarzucasz, że jeżyk daje za duże możliwości programiście zamiast
ograniczyć się do jedynej słusznej wersji? No bez jaj...
>
> BTW funkcje anonimowe są ogólnie przereklamowane.
Uważam, że są wygodne:
1. jak masz powtarzające się 3-4 linijki istotne tylko w obrębie
jakiegoś bloku to robienie z tego metody jest zaśmiecaniem klasy.
Funkcja anonimowa to rozwiązuje
2. callbacki/sygnały - główna zaleta w tym przypadku to "koncentracja"
kodu - miejsce użycia i deklaracja są zaraz obok, mniejszy narzut,
prostsze utrzymanie:
a) obj.registerSignal(NEW_DATA,
[&](vector<int> const &data) { buffer.add(data); });
b) obj.registerSignal(NEW_DATA, slotNewData);
...
void slotNewData(vector<int> const &data);
...
void foo::slotNewData(vector<int> const &data){
buffer.add(data);
}
--
Pozdrawiam
Michoo
-
188. Data: 2012-06-14 21:22:41
Temat: Re: Czym jest programowanie?
Od: "slawek" <s...@h...pl>
Użytkownik <n...@m...invalid> napisał w wiadomości grup
dyskusyjnych:jr62lb$m8o$...@n...icpnet.pl...
> IMHO, raczej laika, state-of-the-art współczesnego programowania
> spoczywa w językach typu Haskell/Prolog dla problemów deterministycznych
Prolog? Niewiele młodszy od Fortranu. Mało atrakcyjny i zbyt mocno
abstrakcyjny. Ortogonalny do OOP i CNC. No i nie da się w tym pisać
programów dla Androida.
> Podbudowę funkcjonalną pod to da napisanie gwarantowanie bezbłędnych
Ooooo... exception: fanatyzm detected!
Hasło "errare humanum est" jeszcze nigdy nie było tak aktualne jak dziś!
> Fundamenty zaś, przypuszczalnie, teoria kategorii, różne algebry i
> logiki (najpierw rozmyta dla procków fuzzy logic, następnie analogowe i
> mapy prawdopodobieństwa[?] dla quantum computing).
Dlatego przed naszymi kolegami, towarzyszami matematykami, jest gigantyczna
praca do wykonania.
> Niemniej, spowolni, o ile nie uniemożliwi, rozwijanie akademicko tych
> pól, jeżeli będzie postępować komercjalizacja szkolnictwa i robienie z
> uniwersytetów superzawodówek. Stary Fortran i stara Java zrobią robotę
> wystarczająco dobrze jak dla biznesu -- tak mi się wydaje.
Pierwsze primo. Co cię tak negatywnie nastawia do zawodówek? Że teraz
nazywają się juniverizitetami czy jakoś tak? Saint-Exupery słusznie
zauważył, że zapach róży nie zależy od tego jak ona się nazywa. A ja
przypominam... życie nie zawsze jest nimi usłane.
Drugie primo. Java jest nie stara - ale po prostu popularna. I stąd
wrażenie, że jest "od zawsze". Nie, nie jest. Java jest młodsza od Prologu.
Stary Fortran robi robotę zadziwiająco dobrze... w zadziwiających
problemach. W których te twoje prologi-srologi zwyczajnie są zupełnie
nieprzydatne. Podobnie jak okazały się mało przydatne do np. tworzenia
systemów operacyjnych, gier komputerowych, sterowania obrabiarkami,
programowania smartfonów i WWW. Witamy w realnym świecie!
Secundo. Nie pytałem "w czym programować?" Pytanie, przypominam, brzmi:
"czym jest programowanie?" Trochę koncentracji i może zauważysz różnicę.
-
189. Data: 2012-06-14 21:28:40
Temat: Re: Czym jest programowanie?
Od: "slawek" <s...@h...pl>
Użytkownik "AK" <n...@n...com> napisał w wiadomości grup
dyskusyjnych:jr6tnj$7kr$...@i...gazeta.pl...
> To prawda. Plaszczaki sa super zadowolone zap..jąc po kuli
> bo po prostu nie wiedza wiedza, ze jest trzeci (i inne) wymiar.
Jak rozumiem ty sam podróżujesz z miejsca na miejsce po odcinku prostej
łączącej punkt A z punktem B w przestrzeni czterowymiarowej?
Znaczy się, zakładasz kask i jedziesz po cięciwie wagonikiem górniczym? [*]
Przypominam - tematem dyskusji jest "jak zdefiniować czym jest
programowanie" - z dodatkowym zastrzeżeniem, że definicja ma być
nieograniczona do "ciągów instrukcji" itp. określeń, tzn. uwzględniać
dokładnie wszystkie paradygmaty.
* -- kiepski pomysł, lepiej od razu przez wormhole (fizycy), lub zdefiniować
że tam jest tu (matematycy)
-
190. Data: 2012-06-14 21:33:52
Temat: Re: Czym jest programowanie?
Od: Wojciech Muła <w...@g...com>
W dniu czwartek, 14 czerwca 2012 17:52:48 UTC+2 użytkownik Roman W napisał:
> No jakos sobie radzi, skoro tyle dobrego oprogramowania napisano w C.
To wynika tylko z popularności i zaszłości.
Nie świadczy o jakiś wyjątkowych zaletach C.
w.