Discussion:
C is number one (znowu)
(Wiadomość utworzona zbyt dawno temu. Odpowiedź niemożliwa.)
Maciej Sobczak
2020-05-09 21:08:58 UTC
Permalink
Majowy news dla fanów tabelek:

"May Headline: Programming language C is back in the number one spot"

https://www.tiobe.com/tiobe-index/

To w sumie ciekawe zjawisko.
--
Maciej Sobczak * http://www.inspirel.com
Emru
2020-05-10 08:55:46 UTC
Permalink
No w końcu :-)
fir
2020-05-10 10:48:20 UTC
Permalink
Post by Maciej Sobczak
"May Headline: Programming language C is back in the number one spot"
https://www.tiobe.com/tiobe-index/
To w sumie ciekawe zjawisko.
c jest swietnym jezykiem, w swojej czystosci konstrukcji jezkowych nad typami przypomia kawalek jakiejs algebry,
choc ma tez pewne istotne braki

jak sie zatanowic dzis z mojej perspektywy duzo wiedzenia o c,
to glowny problem z c dzis to chyab brak naprawde porzadnej ksiazki do jego nauki
(ksiazki ktora malo kto poza mna a moze i nikt nie jest pewnie w stanie napisac,
przynajmniej tak jak ja to widze) bo dzis
nauka C zajmuje ciagle mase czasu (z 5-10 lat pewnie), nawet ludzie ktorzy przebrneli przez to nie do konca czasem koduja tak jak powinni, lub nie rozumieja brakow c tak dobrze jak ja)

sam chyab moglbym taka ksiazke napisac gdybym wiedzial ze ktos ja wyda, ale nie ze mi sie tez jakos strasznie chce to robic
g***@gmail.com
2020-05-11 07:49:00 UTC
Permalink
Post by fir
Post by Maciej Sobczak
"May Headline: Programming language C is back in the number one spot"
https://www.tiobe.com/tiobe-index/
To w sumie ciekawe zjawisko.
c jest swietnym jezykiem, w swojej czystosci konstrukcji jezkowych nad typami przypomia kawalek jakiejs algebry,
choc ma tez pewne istotne braki
No nie wiem. Mnie konstrukcje językowe w C przypominają trabanta.
Za to języki w rodzaju ML czy Haskella rzeczywiście stanowią "kawałek jakiejś algebry"
Post by fir
jak sie zatanowic dzis z mojej perspektywy duzo wiedzenia o c,
to glowny problem z c dzis to chyab brak naprawde porzadnej ksiazki do jego nauki
(ksiazki ktora malo kto poza mna a moze i nikt nie jest pewnie w stanie napisac,
przynajmniej tak jak ja to widze) bo dzis
nauka C zajmuje ciagle mase czasu (z 5-10 lat pewnie), nawet ludzie ktorzy przebrneli przez to nie do konca czasem koduja tak jak powinni, lub nie rozumieja brakow c tak dobrze jak ja)
Zgodzę się, że łatwo jest zacząć programować w C, nie do końca rozumiejąc jego mechanizmy abstrakcji (przy czym mechanizmy abstrakcji w C kończą się mniej więcej na strukturach ze wskaźnikami na funkcje), przez co nie trudno o kod, który cierpi na skutek nie używania tych mechanizmów
Post by fir
sam chyab moglbym taka ksiazke napisac gdybym wiedzial ze ktos ja wyda, ale nie ze mi sie tez jakos strasznie chce to robic
Teraz jak są platformy w rodzaju leanpub.com to możesz sam wydać.
(Możesz też napisać i po prostu wrzucić na githuba, tak jak ja zrobiłem kiedyś ze swoim pamfletem; ogłosiłem to później HackerNews, Reddicie, Twitterze i usenecie, i recepcja była nawet dobra)
fir
2020-05-11 11:04:16 UTC
Permalink
Post by g***@gmail.com
Post by fir
Post by Maciej Sobczak
"May Headline: Programming language C is back in the number one spot"
https://www.tiobe.com/tiobe-index/
To w sumie ciekawe zjawisko.
c jest swietnym jezykiem, w swojej czystosci konstrukcji jezkowych nad typami przypomia kawalek jakiejs algebry,
choc ma tez pewne istotne braki
No nie wiem. Mnie konstrukcje językowe w C przypominają trabanta.
Za to języki w rodzaju ML czy Haskella rzeczywiście stanowią "kawałek jakiejś algebry"
Post by fir
jak sie zatanowic dzis z mojej perspektywy duzo wiedzenia o c,
to glowny problem z c dzis to chyab brak naprawde porzadnej ksiazki do jego nauki
(ksiazki ktora malo kto poza mna a moze i nikt nie jest pewnie w stanie napisac,
przynajmniej tak jak ja to widze) bo dzis
nauka C zajmuje ciagle mase czasu (z 5-10 lat pewnie), nawet ludzie ktorzy przebrneli przez to nie do konca czasem koduja tak jak powinni, lub nie rozumieja brakow c tak dobrze jak ja)
Zgodzę się, że łatwo jest zacząć programować w C, nie do końca rozumiejąc jego mechanizmy abstrakcji (przy czym mechanizmy abstrakcji w C kończą się mniej więcej na strukturach ze wskaźnikami na funkcje), przez co nie trudno o kod, który cierpi na skutek nie używania tych mechanizmów
Post by fir
sam chyab moglbym taka ksiazke napisac gdybym wiedzial ze ktos ja wyda, ale nie ze mi sie tez jakos strasznie chce to robic
Teraz jak są platformy w rodzaju leanpub.com to możesz sam wydać.
(Możesz też napisać i po prostu wrzucić na githuba, tak jak ja zrobiłem kiedyś ze swoim pamfletem; ogłosiłem to później HackerNews, Reddicie, Twitterze i usenecie, i recepcja była nawet dobra)
w sumie nie wiem, jesli o mnie chodzi to raczej chcialbym napisac ksiazke do wydania wylacznie w postaci papierowej,
ksiazka ta moglaby sie nazywac 'nowoczesne c' lub jakos podobnie

moze w sumie nie powinienem sie zbyt przejmowac wydawca tylko ja napisac a wydawca zainteresowac sie kiedys przy okazji

ksazka stanowilaby szybki ale klraowny opis c - tlumaczacy dosyc abstrakcyjne rzeczy ktore normalne c nooby piszace o c pomijaja bo poprostu toprnie informuja o skladni a pewne problematyczne rzeczy wogole pomijaja , pluz moze pare uwag o tym co jest slaba stroną c i jak nalezy to poprawic lub ew praktycznie obejsc

musze pomyslec w sumie
g***@gmail.com
2020-05-11 12:05:45 UTC
Permalink
Post by fir
Post by g***@gmail.com
Post by fir
Post by Maciej Sobczak
"May Headline: Programming language C is back in the number one spot"
https://www.tiobe.com/tiobe-index/
To w sumie ciekawe zjawisko.
c jest swietnym jezykiem, w swojej czystosci konstrukcji jezkowych nad typami przypomia kawalek jakiejs algebry,
choc ma tez pewne istotne braki
No nie wiem. Mnie konstrukcje językowe w C przypominają trabanta.
Za to języki w rodzaju ML czy Haskella rzeczywiście stanowią "kawałek jakiejś algebry"
Post by fir
jak sie zatanowic dzis z mojej perspektywy duzo wiedzenia o c,
to glowny problem z c dzis to chyab brak naprawde porzadnej ksiazki do jego nauki
(ksiazki ktora malo kto poza mna a moze i nikt nie jest pewnie w stanie napisac,
przynajmniej tak jak ja to widze) bo dzis
nauka C zajmuje ciagle mase czasu (z 5-10 lat pewnie), nawet ludzie ktorzy przebrneli przez to nie do konca czasem koduja tak jak powinni, lub nie rozumieja brakow c tak dobrze jak ja)
Zgodzę się, że łatwo jest zacząć programować w C, nie do końca rozumiejąc jego mechanizmy abstrakcji (przy czym mechanizmy abstrakcji w C kończą się mniej więcej na strukturach ze wskaźnikami na funkcje), przez co nie trudno o kod, który cierpi na skutek nie używania tych mechanizmów
Post by fir
sam chyab moglbym taka ksiazke napisac gdybym wiedzial ze ktos ja wyda, ale nie ze mi sie tez jakos strasznie chce to robic
Teraz jak są platformy w rodzaju leanpub.com to możesz sam wydać.
(Możesz też napisać i po prostu wrzucić na githuba, tak jak ja zrobiłem kiedyś ze swoim pamfletem; ogłosiłem to później HackerNews, Reddicie, Twitterze i usenecie, i recepcja była nawet dobra)
w sumie nie wiem, jesli o mnie chodzi to raczej chcialbym napisac ksiazke do wydania wylacznie w postaci papierowej,
Jeżeli ktoś wrzuci pdf ze skanami na chomika, to może nawet zajrzę.
g***@gmail.com
2020-05-11 12:09:22 UTC
Permalink
Post by g***@gmail.com
Post by fir
Post by g***@gmail.com
Post by fir
Post by Maciej Sobczak
"May Headline: Programming language C is back in the number one spot"
https://www.tiobe.com/tiobe-index/
To w sumie ciekawe zjawisko.
c jest swietnym jezykiem, w swojej czystosci konstrukcji jezkowych nad typami przypomia kawalek jakiejs algebry,
choc ma tez pewne istotne braki
No nie wiem. Mnie konstrukcje językowe w C przypominają trabanta.
Za to języki w rodzaju ML czy Haskella rzeczywiście stanowią "kawałek jakiejś algebry"
Post by fir
jak sie zatanowic dzis z mojej perspektywy duzo wiedzenia o c,
to glowny problem z c dzis to chyab brak naprawde porzadnej ksiazki do jego nauki
(ksiazki ktora malo kto poza mna a moze i nikt nie jest pewnie w stanie napisac,
przynajmniej tak jak ja to widze) bo dzis
nauka C zajmuje ciagle mase czasu (z 5-10 lat pewnie), nawet ludzie ktorzy przebrneli przez to nie do konca czasem koduja tak jak powinni, lub nie rozumieja brakow c tak dobrze jak ja)
Zgodzę się, że łatwo jest zacząć programować w C, nie do końca rozumiejąc jego mechanizmy abstrakcji (przy czym mechanizmy abstrakcji w C kończą się mniej więcej na strukturach ze wskaźnikami na funkcje), przez co nie trudno o kod, który cierpi na skutek nie używania tych mechanizmów
Post by fir
sam chyab moglbym taka ksiazke napisac gdybym wiedzial ze ktos ja wyda, ale nie ze mi sie tez jakos strasznie chce to robic
Teraz jak są platformy w rodzaju leanpub.com to możesz sam wydać.
(Możesz też napisać i po prostu wrzucić na githuba, tak jak ja zrobiłem kiedyś ze swoim pamfletem; ogłosiłem to później HackerNews, Reddicie, Twitterze i usenecie, i recepcja była nawet dobra)
w sumie nie wiem, jesli o mnie chodzi to raczej chcialbym napisac ksiazke do wydania wylacznie w postaci papierowej,
Jeżeli ktoś wrzuci pdf ze skanami na chomika, to może nawet zajrzę.
Swego czasu kolega pokazał, że np. Helion wydał takie coś:
[przynajmniej ma czytelnie zdefiniowaną grupę docelową]

https://helion.pl/ksiazki/zabawa-w-programowanie-jezyk-c-dla-nastolatkow-michal-wiszniewski,zaprcn.htm#format/e
fir
2020-05-11 13:26:00 UTC
Permalink
Post by g***@gmail.com
Post by fir
Post by g***@gmail.com
Post by fir
Post by Maciej Sobczak
"May Headline: Programming language C is back in the number one spot"
https://www.tiobe.com/tiobe-index/
To w sumie ciekawe zjawisko.
c jest swietnym jezykiem, w swojej czystosci konstrukcji jezkowych nad typami przypomia kawalek jakiejs algebry,
choc ma tez pewne istotne braki
No nie wiem. Mnie konstrukcje językowe w C przypominają trabanta.
Za to języki w rodzaju ML czy Haskella rzeczywiście stanowią "kawałek jakiejś algebry"
Post by fir
jak sie zatanowic dzis z mojej perspektywy duzo wiedzenia o c,
to glowny problem z c dzis to chyab brak naprawde porzadnej ksiazki do jego nauki
(ksiazki ktora malo kto poza mna a moze i nikt nie jest pewnie w stanie napisac,
przynajmniej tak jak ja to widze) bo dzis
nauka C zajmuje ciagle mase czasu (z 5-10 lat pewnie), nawet ludzie ktorzy przebrneli przez to nie do konca czasem koduja tak jak powinni, lub nie rozumieja brakow c tak dobrze jak ja)
Zgodzę się, że łatwo jest zacząć programować w C, nie do końca rozumiejąc jego mechanizmy abstrakcji (przy czym mechanizmy abstrakcji w C kończą się mniej więcej na strukturach ze wskaźnikami na funkcje), przez co nie trudno o kod, który cierpi na skutek nie używania tych mechanizmów
Post by fir
sam chyab moglbym taka ksiazke napisac gdybym wiedzial ze ktos ja wyda, ale nie ze mi sie tez jakos strasznie chce to robic
Teraz jak są platformy w rodzaju leanpub.com to możesz sam wydać.
(Możesz też napisać i po prostu wrzucić na githuba, tak jak ja zrobiłem kiedyś ze swoim pamfletem; ogłosiłem to później HackerNews, Reddicie, Twitterze i usenecie, i recepcja była nawet dobra)
w sumie nie wiem, jesli o mnie chodzi to raczej chcialbym napisac ksiazke do wydania wylacznie w postaci papierowej,
Jeżeli ktoś wrzuci pdf ze skanami na chomika, to może nawet zajrzę.
sęk w tym ze nie wiem jak sie publikuje ksiazke..podejrzewam ze chyab musialbym doplacic za wydruk
Bischoop
2020-05-11 23:58:07 UTC
Permalink
Post by fir
Post by g***@gmail.com
Jeżeli ktoś wrzuci pdf ze skanami na chomika, to może nawet zajrzę.
sęk w tym ze nie wiem jak sie publikuje ksiazke..podejrzewam ze chyab musialbym doplacic za wydruk
Google.
Luke
2020-05-13 16:38:52 UTC
Permalink
Post by fir
w sumie nie wiem, jesli o mnie chodzi to raczej chcialbym napisac ksiazke do wydania wylacznie w postaci papierowej,
ksiazka ta moglaby sie nazywac 'nowoczesne c' lub jakos podobnie
Jest już "Wysokie C" Kotowskiego. Jeśli do tego się dołoży K&R oraz C
FAQ, czego jeszcze brakuje?
g***@gmail.com
2020-05-14 18:47:04 UTC
Permalink
Post by Luke
Post by fir
w sumie nie wiem, jesli o mnie chodzi to raczej chcialbym napisac ksiazke do wydania wylacznie w postaci papierowej,
ksiazka ta moglaby sie nazywac 'nowoczesne c' lub jakos podobnie
Jest już "Wysokie C" Kotowskiego. Jeśli do tego się dołoży K&R oraz C
FAQ, czego jeszcze brakuje?
Gdzie można znaleźć "Wysokie C"?
Luke
2020-05-14 19:05:32 UTC
Permalink
Post by g***@gmail.com
Gdzie można znaleźć "Wysokie C"?
Bardzo rzadko na allegro.

Chociaż książka ociera się jeszcze chwilami o DOS i nawet conio.h, jest
moim zdaniem obowiązkową lekturą o tym języku...
g***@gmail.com
2020-05-14 20:34:08 UTC
Permalink
Post by Luke
Post by g***@gmail.com
Gdzie można znaleźć "Wysokie C"?
Bardzo rzadko na allegro.
Chociaż książka ociera się jeszcze chwilami o DOS i nawet conio.h, jest
moim zdaniem obowiązkową lekturą o tym języku...
e, jak nie ma na chomikach, torrentach czy innych libgenach, to tak jak jakby nie istniała.

i nie wiem, czy chciałoby mi się zatruwać swoje życie near pointerami
fir
2020-05-15 06:48:36 UTC
Permalink
Post by g***@gmail.com
Post by Luke
Post by g***@gmail.com
Gdzie można znaleźć "Wysokie C"?
Bardzo rzadko na allegro.
Chociaż książka ociera się jeszcze chwilami o DOS i nawet conio.h, jest
moim zdaniem obowiązkową lekturą o tym języku...
e, jak nie ma na chomikach, torrentach czy innych libgenach, to tak jak jakby nie istniała.
i nie wiem, czy chciałoby mi się zatruwać swoje życie near pointerami
akurat near pointery sa jak szorty w porownaniu do intow, (moga bc przydatne i wzmacniac program), c pozwala dobrze ogarniac takie rzeczy
Queequeg
2020-05-15 07:56:21 UTC
Permalink
Post by fir
akurat near pointery sa jak szorty w porownaniu do intow, (moga bc
przydatne i wzmacniac program), c pozwala dobrze ogarniac takie rzeczy
Kiedy ostatnio używałeś near pointerów i segmentacji pamięci?
--
http://youtu.be/9lSzL1DqQn0
Queequeg
2020-05-15 07:54:10 UTC
Permalink
Post by g***@gmail.com
Post by Luke
Chociaż książka ociera się jeszcze chwilami o DOS i nawet conio.h, jest
moim zdaniem obowiązkową lekturą o tym języku...
e, jak nie ma na chomikach, torrentach czy innych libgenach, to tak jak jakby nie istniała.
Jest na chomiku jakiś plik .txt, ale to nie jest ta książka tylko artykuł
z PC Kuriera, natomiast w katalogu, w którym ten plik jest, jest też wiele
innych książek na temat C.

Nie linkuję, żeby nie było, że rozpowszechniam, ale łatwo znaleźć.
Post by g***@gmail.com
i nie wiem, czy chciałoby mi się zatruwać swoje życie near pointerami
To tylko pokazuje, ile zmieniło się przez 22 lata od wydania książki...
--

g***@gmail.com
2020-05-15 08:25:31 UTC
Permalink
Post by Queequeg
Post by g***@gmail.com
Post by Luke
Chociaż książka ociera się jeszcze chwilami o DOS i nawet conio.h, jest
moim zdaniem obowiązkową lekturą o tym języku...
e, jak nie ma na chomikach, torrentach czy innych libgenach, to tak jak jakby nie istniała.
Jest na chomiku jakiś plik .txt, ale to nie jest ta książka tylko artykuł
z PC Kuriera, natomiast w katalogu, w którym ten plik jest, jest też wiele
innych książek na temat C.
Nie linkuję, żeby nie było, że rozpowszechniam, ale łatwo znaleźć.
Ja tylko znalazłem "Piotr Adamczyk - Wysokie C.mp3"

Ale to chyba nie o to chodziło :/

"Jestem ptak. Latam wokół siebie,
myślę, że wiem, ale co wiem - nie wiem.
Skrzydeł mych wzór czule niesie wiatr w górę,
zerkam hen w dół, a tam - mojej dumy ślad.

Jeśli wolno byłoby mi ćwierkać przez cały czas,
to tylko w wysokim C, brzmiącym doskonale tak.

Wiem, że tak śpiewać by chciał niejeden dziób, bo to sztuka.
Podniebny czar - ja mam po prostu dar.

Wierzę, że jest zachwyt gdzieś w nas ukryty.
Wydobądź go i krzycz z całej siły.

To, czego nie ma, możemy mieć
- wystarczy tylko tego chcieć.

Jeśli pokochasz to, co byś chciał,
to w pewnym sensie będziesz to miał.

Lataj wysoko, nie tylko w snach,
omijaj chmury, ląduj na piach.

Ptakiem być możesz bez skrzydeł też,
jeśli uwierzysz w to, co chcesz.

Fantazja daje przestrzeń i czas
na pokonanie siebie w nas.

To, czego nie ma, możemy mieć
- wystarczy tylko tego chcieć"

A może właśnie o to?

"omijaj chmury, ląduj na piach" brzmi jak zachęta do "powrotu do krzemu".
Post by Queequeg
Post by g***@gmail.com
i nie wiem, czy chciałoby mi się zatruwać swoje życie near pointerami
To tylko pokazuje, ile zmieniło się przez 22 lata od wydania książki...
W K&R też nie ma near i far pointerów :)
Więc raczej pokazuje, jak dziwną architekturą było 8086

Z drugiej strony, pojawienie się mikrokomputerów było mimo wszystko jakimś pretekstem do "wynajdywania koła na nowo"
Luke
2020-05-15 09:23:50 UTC
Permalink
Post by g***@gmail.com
i nie wiem, czy chciałoby mi się zatruwać swoje życie near pointerami
Ta książka ma 540 stron, jest to tak wszechstronne studium, że nie da
się jej sprowadzić do near lub far pointerów.

Według aktualnych szacunków odsetek rzędu 95% zasobów światowej kultury
nadal istnieje tylko w postaci analogowej, więc nie ma się co dziwić, że
zapomniana niskonakładowa polska książka z lat 90 nie krąży w sieci.

Tu jest spis treści w odmętach archiwów i kilka zdań:

http://web.archive.org/web/20030703174541/januszg.hg.pl/ksiazki/wysokie_c.html
g***@gmail.com
2020-05-15 09:43:25 UTC
Permalink
Post by Luke
Post by g***@gmail.com
i nie wiem, czy chciałoby mi się zatruwać swoje życie near pointerami
Ta książka ma 540 stron, jest to tak wszechstronne studium, że nie da
się jej sprowadzić do near lub far pointerów.
Według aktualnych szacunków odsetek rzędu 95% zasobów światowej kultury
nadal istnieje tylko w postaci analogowej, więc nie ma się co dziwić, że
zapomniana niskonakładowa polska książka z lat 90 nie krąży w sieci.
Z drugiej strony, książkę Lionsa z lat 70. o UNIXie można łatwo znaleźć, pomimo że podobno AT&T swego czasu próbował z nią walczyć:
https://cs3210.cc.gatech.edu/r/unix6.pdf
Post by Luke
http://web.archive.org/web/20030703174541/januszg.hg.pl/ksiazki/wysokie_c.html
Niepokojąco wygląda obecność rozdziału o "notacji węgierskiej".
Trochę też martwi to, że "wskaźniki na funkcje" pojawiają się w spisie treści tylko w takim kontekście:

9.8. Przykład - tablice wskaźników na funkcje
9.9. Tablica wskaźników na wskaźniki na funkcje

(no ale wiadomo, to tylko spis treści)
Bischoop
2020-05-16 10:22:18 UTC
Permalink
Post by Luke
Według aktualnych szacunków odsetek rzędu 95% zasobów światowej kultury
nadal istnieje tylko w postaci analogowej, więc nie ma się co dziwić, że
zapomniana niskonakładowa polska książka z lat 90 nie krąży w sieci.
Bo zapewne sprowadza wszystko do podstaw a dzis jak cos wymaga zbyt
dlugiej koncetracji nad dlugim tekstem to nie jest zbyt lubiane.
I obawiam sie ze bedzie jeszcze gorzej.
slawek
2020-05-16 08:04:58 UTC
Permalink
Majowy news dla fanów tabelek:"May Headline: Programming language C is back in the number one spot"https://www.tiobe.com/tiobe-index/To w sumie ciekawe zjawisko.-- Maciej Sobczak * http://www.inspirel.com
1. Błędem jest rozdzielanie C, C++ i C#
2. Tiobe podaje "popularność" - nie "użyteczność"


----Android NewsGroup Reader----
http://usenet.sinaapp.com/
g***@gmail.com
2020-05-16 15:02:39 UTC
Permalink
Post by slawek
Majowy news dla fanów tabelek:"May Headline: Programming language C is back in the number one spot"https://www.tiobe.com/tiobe-index/To w sumie ciekawe zjawisko.-- Maciej Sobczak * http://www.inspirel.com
1. Błędem jest rozdzielanie C, C++ i C#
Z jakiego punktu widzenia rozdzielanie trzech odrębnych języków miałoby być błędem?
Post by slawek
2. Tiobe podaje "popularność" - nie "użyteczność"
podaje nawet dość wąsko rozumianą popularność, którą można by nazwać "popularnością w sensie TIOBE".

Podobnie np. mistrzostw świata w piłce nożnej nie wygrywa drużyna, która jest najlepsza, tylko ta, której uda się wygrać.

Ale wszyscy się godzą na takie reguły zabawy.
Maciej Sobczak
2020-05-16 21:32:32 UTC
Permalink
Post by slawek
1. Błędem jest rozdzielanie C, C++ i C#
Jeżeli C i C# ma być razem, to jeszcze razem z Javą i JavaScriptem.
Bo naprawdę nie widzę powodu, żeby C# miał być bliżej C, niż Java (pomijam zbieżność nazw).
Post by slawek
2. Tiobe podaje "popularność" - nie "użyteczność"
Nie. TIOBE opiera się na statystykach wyszukiwarek. Czyli lepszą pozycję ma ten język, którego użytkownicy klikają w wyszukiwarkach więcej zapytań. Korelacja tego z popularnością jakaś może i jest, ale równie dobrze można by było to skojarzyć z ilością problemów, które ludzie muszą rozwiązywać. Kiepski język ze słabą własną dokumentacją przełoży się na więcej zapytań.

Niemniej, jest to najbardziej znany (i cytowany) indeks. Natomiast jego wartość, jak i nasza dyskusja na jego temat, mają charakter wyłącznie rekreacyjny.

Np. nadal nie wiadomo (bo już to omawialiśmy), dlaczego nie ma tam Wolframa. A, już wiadomo - bo Wolfram ma taki odjechany system dokumentacji, że ktoś musiałby być idiotą, żeby informacji szukać w zwykłej wyszukiwarce. Podobnie można wytłumaczyć wysoką pozycję języka C - bo książka "Wysokie C" nie jest na chomiku, więc wszyscy szukają w guglu, czemu im się main nie kompiluje. Itd.
Ot, takie tam luźne rozważania w przymusowej izolacji. ;-)

Inne rekreacyjne rozważania z tego regionu to następujący cytat:

https://www.w3schools.com/whatis/whatis_fullstack_js.asp

"Programming in C will slowly decline.
Programming in JavaScript will be more important."

Czy aby na pewno?

Emocje jak przed wyborami. :-)
--
Maciej Sobczak * http://www.inspirel.com
g***@gmail.com
2020-05-17 20:26:03 UTC
Permalink
Post by Maciej Sobczak
Post by slawek
2. Tiobe podaje "popularność" - nie "użyteczność"
Nie. TIOBE opiera się na statystykach wyszukiwarek.
No, nie do końca:

"The ratings are based on the number of skilled engineers world-wide, courses and third party vendors."

Czyli lepszą pozycję ma ten język, którego użytkownicy klikają w wyszukiwarkach więcej zapytań. Korelacja tego z popularnością jakaś może i jest, ale równie dobrze można by było to skojarzyć z ilością problemów, które ludzie muszą rozwiązywać. Kiepski język ze słabą własną dokumentacją przełoży się na więcej zapytań.
Post by Maciej Sobczak
Niemniej, jest to najbardziej znany (i cytowany) indeks. Natomiast jego wartość, jak i nasza dyskusja na jego temat, mają charakter wyłącznie rekreacyjny.
Np. nadal nie wiadomo (bo już to omawialiśmy), dlaczego nie ma tam Wolframa. A, już wiadomo - bo Wolfram ma taki odjechany system dokumentacji, że ktoś musiałby być idiotą, żeby informacji szukać w zwykłej wyszukiwarce.
TIOBE mogłoby tak bardzo pomóc w wypromowaniu Wolframa, że Stephen Wolfram musiałby być idiotą, żeby nie udostępniać inżynierom swojej TIOBE odjechanej dokumentacji do uwzględnienia w statystykach.
Hmmm...
Post by Maciej Sobczak
Podobnie można wytłumaczyć wysoką pozycję języka C - bo książka "Wysokie C" nie jest na chomiku, więc wszyscy szukają w guglu, czemu im się main nie kompiluje. Itd.
Raczej jest tak, że ludzie po prostu generują ruch, próbując rozwiązywać praktyczne problemy. I o ile system dokumentacji Wolframa nie jest na tyle odjechany, żeby tłumaczyć mętne sformułowania problemów w języku naturalnym na język Wolframa, raczej bym małą popularność na TIOBE tłumaczył... małą popularnością.
Post by Maciej Sobczak
Ot, takie tam luźne rozważania w przymusowej izolacji. ;-)
Trochę mi to zapachniało życzeniowym myśleniem...

Ale - ciekawostka - profesor Shriram Krishnamurthi w podobny sposób próbował ostatnio wyjaśnić małą popularność Racketa:

https://mobile.twitter.com/ShriramKMurthi/status/1261268107164897280
Post by Maciej Sobczak
https://www.w3schools.com/whatis/whatis_fullstack_js.asp
"Programming in C will slowly decline.
Programming in JavaScript will be more important."
Czy aby na pewno?
Emocje jak przed wyborami. :-)
Ale przecież już jest po wyborach ;p
Maciej Sobczak
2020-05-18 19:26:42 UTC
Permalink
Post by g***@gmail.com
Post by Maciej Sobczak
Nie. TIOBE opiera się na statystykach wyszukiwarek.
"The ratings are based on the number of skilled engineers world-wide, courses and third party vendors."
Zdumiewające, bo dokładnie następnym zdaniem jest to:

"Popular search engines such as Google, Bing, Yahoo!, Wikipedia, Amazon, YouTube and Baidu are used to calculate the ratings."

Ciekawe, w jaki sposób "are used".
Post by g***@gmail.com
TIOBE mogłoby tak bardzo pomóc w wypromowaniu
TIOBE nie zajmuje się promowaniem. To nie jest platforma marketingowa. I ludzie raczej tam wchodzą pojarać się, gdzie jest ich ulubiony język, a nie po to, żeby sobie ulubiony język znaleźć.
Post by g***@gmail.com
Stephen Wolfram musiałby być idiotą
Wystarczy, że jest narcyzem. Ale technicznie - skoro TIOBE nie zajmuje się promowaniem, to nie musi być ani idiotą, ani narcyzem.

No i skoro dokumentacja i tak jest dostępna publicznie, to niby jak jeszcze miałby ją "udostępniać"?
Post by g***@gmail.com
I o ile system dokumentacji Wolframa nie jest na tyle odjechany, żeby tłumaczyć mętne sformułowania problemów w języku naturalnym na język Wolframa
Właśnie do tego służy WolframAlpha.

A o co chciałbyś zapytać?

Chociaż może coś jest w tym, co piszesz. Np. ja widziałem ludzi, którzy wklejają w gugla komunikaty ze swojego kompilatora i patrzą, co wyszło. I przeklejają do swoich programów to, co znaleźli. I tak w kółko. Może w ten sposób te statystyki w wyszukiwarkach rosną - to by trochę tłumaczyło górną część indeksu.
Post by g***@gmail.com
Post by Maciej Sobczak
Emocje jak przed wyborami. :-)
Ale przecież już jest po wyborach ;p
Kiedyś była taka piosenka: "Już za rok matura...".
Zawsze jest jakieś "przed". :-)
--
Maciej Sobczak * http://www.inspirel.com
slawek
2020-05-30 06:03:14 UTC
Permalink
1. Błędem jest rozdzielanie C, C++ i C#Jeżeli C i C# ma być razem, to jeszcze razem z Javą i JavaScriptem.
I tu się zgodzę - Java też. Czyli razem C, C++, C#, Java,
Objective-C i C--.

Co prawda C jest !OOP ale każdy program w C jest programem w C++.
(Prawie każdy, trzeba trochę się wysilić aby to popsuć.)

Ale ECMA Script (JS) oddzielnie. Bo inne podejście do typów, nie
było klas, inne rozumienie funkcji. Być może JS liczyć razem z
Pythonem i Ruby.


----Android NewsGroup Reader----
http://usenet.sinaapp.com/
g***@gmail.com
2020-06-04 09:59:26 UTC
Permalink
Post by slawek
1. Błędem jest rozdzielanie C, C++ i C#Jeżeli C i C# ma być razem, to jeszcze razem z Javą i JavaScriptem.
I tu się zgodzę - Java też. Czyli razem C, C++, C#, Java,
Objective-C i C--.
Oraz oczywiście Ć.

Ale to wszystko zależy od tego, w jakim celu dokonuje się klasyfikacji.
W przypadku TIOBE cel wydaje się czysto rozrywkowy, więc każda klasyfikacja jest równie dobra co każda inna, o ile tylko udaje się utrzymać oglądalność.
Post by slawek
Co prawda C jest !OOP ale każdy program w C jest programem w C++.
Niezbyt klarowny jest dla mnie ten tok rozumowania.
C nie jest OOP, ale ponieważ "każdy program w C jest programem w C++" a "C++ jest OOP", to "C jest OOP"?
Post by slawek
(Prawie każdy, trzeba trochę się wysilić aby to popsuć.)
Nieprzesadnie się trzeba wysilać.

A jak się używa sensownych rozszerzeń GCC to już w ogóle się nie trzeba wysilać.
Post by slawek
Ale ECMA Script (JS) oddzielnie. Bo inne podejście do typów, nie
było klas, inne rozumienie funkcji. Być może JS liczyć razem z
Pythonem i Ruby.
Ostatnio sobie odświeżyłem prezentację Richa Hickeya "Are we there yet?"

https://www.infoq.com/presentations/Are-We-There-Yet-Rich-Hickey/

Podobała mi się jego perspektywa, z której Smalltalk, Java, C#, Python, Ruby, Scala itp. to jedno i to samo ("single-dispatch stateful object-oriented garbage-collected")


PS. w czerwcu Rust wszedł do Top 20, z rewelacyjnym wynikiem 0.64% (czyli tylko 0.01% mniej niż Classic Visual Basic). Oczywiście trzymamy kciuki.
slawek
2020-07-01 09:45:21 UTC
Permalink
Niezbyt klarowny jest dla mnie ten tok rozumowania.C nie jest OOP, ale ponieważ "każdy program w C jest programem w C++" a "C++ jest OOP", to "C jest OOP"?
Ależ to proste, mój drogi Wastonie...

1. Kiedy powstało C nie było znane OOP, samo C nie jest do OOP.
2. C++ jest kompatybilne wstecz z C. Jest nawet coś takiego jak
extern "C".
3. C++ jest głównym nurtem OOP. Patrz choćby GoF.
4. Z powyższego nie wynika że C jest OOP. Bo C++ tym różni się (i
nie tylko tym) od Javy i C# iż jest multi-paradygmatowe: da się
nie używać w C++ OOP.

5. Ale można robić OOP w C, tyle że jest to niewygodne. Robiłem.
Trik w deklaracjach struct i możliwościach void*.

Takie cuś działa nawet chyba z K&R ;)

struct MyClass; // bez definicji pól, to będzie dopiero w implementacji
typedef struct MyClass* MyClass;

MyClass obj = MyClass_create();
obj->method();
DELETE(obj)



Innymi słowy, twoj błąd to próba wnioskowania:

"Mój pies jest czarny, pies to zwierzę, więc każde zwierzę jest
czarne."

Z faktu iż to błędne nie przestaje jednak wynikać że pies to
zwierzę! Ani to że wszystkie koty są białe!


----Android NewsGroup Reader----
http://usenet.sinaapp.com/
g***@gmail.com
2020-07-01 22:02:39 UTC
Permalink
Post by slawek
Niezbyt klarowny jest dla mnie ten tok rozumowania.C nie jest OOP, ale ponieważ "każdy program w C jest programem w C++" a "C++ jest OOP", to "C jest OOP"?
Ależ to proste, mój drogi Wastonie...
1. Kiedy powstało C nie było znane OOP, samo C nie jest do OOP.
2. C++ jest kompatybilne wstecz z C. Jest nawet coś takiego jak
extern "C".
Akurat coś takiego jak extern "C" świadczy o tym, że C++ nie jest kompatybilne wstecz. (Podobnie, wszystkie języki oferujące FFI zgodne z C nie są "kompatybilne wstecz" z C).
Post by slawek
3. C++ jest głównym nurtem OOP. Patrz choćby GoF.
4. Z powyższego nie wynika że C jest OOP. Bo C++ tym różni się (i
nie tylko tym) od Javy i C# iż jest multi-paradygmatowe: da się
nie używać w C++ OOP.
5. Ale można robić OOP w C, tyle że jest to niewygodne. Robiłem.
Trik w deklaracjach struct i możliwościach void*.
Takie cuś działa nawet chyba z K&R ;)
struct MyClass; // bez definicji pól, to będzie dopiero w implementacji
typedef struct MyClass* MyClass;
MyClass obj = MyClass_create();
obj->method();
DELETE(obj)
"Mój pies jest czarny, pies to zwierzę, więc każde zwierzę jest
czarne."
Z faktu iż to błędne nie przestaje jednak wynikać że pies to
zwierzę! Ani to że wszystkie koty są białe!
Tyle że to nie jest moje rozumowanie, tylko Twoje, drogi Sherlocku.
Bo to Ty używasz go, żeby uzasadnić, że C, C++, C#, Java i Objectve-C powinny figurować jako jedna pozycja na TIOBE.
slawek
2020-07-02 17:17:51 UTC
Permalink
Post by g***@gmail.com
Bo to Ty używasz go, żeby uzasadnić, że C, C++, C#, Java i Objectve-C powinny figurować jako jedna pozycja na TIOBE.
Ja uważam że... patrz wyżej. Czyli że TIOBE nie jest robione tak
jakbym ja to robił. Ty możesz mieć swoje zdanie, ja mam swoje. Ja
ciebie nie przekonam, ba, nawet nie chcę przekonywać, bo i po co?
Ty też mnie nie przekonasz, zwłaszcza iż nie jesteś dla mnie
autorytetem, nie masz argumentów, a do tego masz mniejsze niż ja
doświadczenie i staż.

Niemniej jednak jeżeli zsumować wyniki C, C++ i C# to zarówno Java
jak i Python po prostu zostają daleko w tyle. I to jest fakt
który każdy może sam sprawdzić.


----Android NewsGroup Reader----
http://usenet.sinaapp.com/
g***@gmail.com
2020-07-04 05:54:53 UTC
Permalink
Post by slawek
Post by g***@gmail.com
Bo to Ty używasz go, żeby uzasadnić, że C, C++, C#, Java i Objectve-C powinny figurować jako jedna pozycja na TIOBE.
Ja uważam że... patrz wyżej. Czyli że TIOBE nie jest robione tak
jakbym ja to robił. Ty możesz mieć swoje zdanie, ja mam swoje. Ja
ciebie nie przekonam, ba, nawet nie chcę przekonywać, bo i po co?
Ty też mnie nie przekonasz,
Tutaj nie chodzi o przekonywanie.
Chodzi o uzasadnienie swoich przekonań.
I pod tym względem wypadasz naprawdę słabo.
Post by slawek
zwłaszcza iż nie jesteś dla mnie
autorytetem, nie masz argumentów, a do tego masz mniejsze niż ja
doświadczenie i staż.
W powtarzaniu klas w gimnazjum to na pewno.
Post by slawek
Niemniej jednak jeżeli zsumować wyniki C, C++ i C# to zarówno Java
jak i Python po prostu zostają daleko w tyle. I to jest fakt
który każdy może sam sprawdzić.
Czyli jednak za "Twoim zdaniem" stoi fanbojstwo, życzeniowe myślenie i przekonanie, że im język bardziej popularny, tym lepsiejszy.

W sumie mnie to nie dziwi.

BTW jak zsumujesz wyniki C, Javy i Pythona, to zarówno C++ jak i C# też pozostają daleko w tyle. Podobnie jak zsumujesz C, Pythona i VisualBasic.

Pytanie tylko co z tego.
slawek
2020-07-06 08:40:38 UTC
Permalink
Ty też mnie nie przekonasz,Tutaj nie chodzi o przekonywanie.Chodzi o uzasadnienie swoich przekonań.I pod tym względem wypadasz naprawdę słabo.
Ależ ja nawet nie chcę cię przekonywać! Bo, szczerze, po co
miałbym to robić?

Co do uzasadniania... Nie mam potrzeby uzasadniania wszystkiego
wszystkim. A już i zwłaszcza rzeczy oczywistych trolom.
Ziew.
Czyli jednak za "Twoim zdaniem" stoi fanbojstwo, życzeniowe myślenie i przekonanie, że im język bardziej popularny, tym lepsiejszy.
No popacz... ciągle piszę w Fortranie (które to teraz miejsce na
TIOBE?), nieobcy mi np. Jean (o nim TIOBE nawet nie wie)
itd.

Ale masz rację: do /niektórych/ rzeczy potrzebny jest język
popularny. Aby nie być leśnym dziadkiem, bo programiści tani, bo
akurat już jest i bo silenie się na hipsterską orginalność nie
zawsze ma sens.
BTW jak zsumujesz wyniki C, Javy i Pythona, to zarówno C++ jak i C# też pozostają daleko w tyle. Podobnie jak zsumujesz C, Pythona i VisualBasic.Pytanie tylko co z tego.
Python wyraźnie jest różny od C/C++ co do "filozofii" - brak
deklaracji zmiennych, luzackie podejście do stałych, first class
functions i mnóstwo innych rzeczy.

Co do sumowania: tak, można zsumować C#, Iron Python i Visual
Basic - wszystkie są .NET - więc miałoby to jakiś
sens.

Z mojego punktu widzenia C++, PHP, Python i ECMA Script oraz Java
i VB niemal się nie różnią. Ten sam paradygmat można stosować,
wklepanie kodu w każdym z nich - mając architekturę - to raczej
takie mechaniczne jakby jest ;)

Te "zupełnie inne" to - według mnie - Forth, Mathematica, Haskell,
Verilog, Simulink itd. Każdy osobno inny.


----Android NewsGroup Reader----
http://usenet.sinaapp.com/
g***@gmail.com
2020-07-06 21:33:07 UTC
Permalink
Post by slawek
Ty też mnie nie przekonasz,Tutaj nie chodzi o przekonywanie.Chodzi o uzasadnienie swoich przekonań.I pod tym względem wypadasz naprawdę słabo.
Ależ ja nawet nie chcę cię przekonywać! Bo, szczerze, po co
miałbym to robić?
Napiszę raz jeszcze: nie chodzi o przekonywanie.
Post by slawek
Co do uzasadniania... Nie mam potrzeby uzasadniania wszystkiego
wszystkim. A już i zwłaszcza rzeczy oczywistych trolom.
Ziew.
Tzn. tego, że C, C++ i C# to ten sam język?
Post by slawek
Czyli jednak za "Twoim zdaniem" stoi fanbojstwo, życzeniowe myślenie i przekonanie, że im język bardziej popularny, tym lepsiejszy.
No popacz... ciągle piszę w Fortranie (które to teraz miejsce na
TIOBE?), nieobcy mi np. Jean (o nim TIOBE nawet nie wie)
itd.
Ale masz rację: do /niektórych/ rzeczy potrzebny jest język
popularny. Aby nie być leśnym dziadkiem, bo programiści tani, bo
akurat już jest i bo silenie się na hipsterską orginalność nie
zawsze ma sens.
?
Post by slawek
BTW jak zsumujesz wyniki C, Javy i Pythona, to zarówno C++ jak i C# też pozostają daleko w tyle. Podobnie jak zsumujesz C, Pythona i VisualBasic.Pytanie tylko co z tego.
Python wyraźnie jest różny od C/C++ co do "filozofii"
C też jest wyraźnie różny od C++ co do filozofii.
C# jest również wyraźnie różny od C i C++ co do filozofii.
Post by slawek
Co do sumowania: tak, można zsumować C#, Iron Python i Visual
Basic - wszystkie są .NET - więc miałoby to jakiś
sens.
Może, gdyby TIOBE dotyczył platform, a nie języków programowania.
Ale dotyczy języków programowania.
Post by slawek
Z mojego punktu widzenia C++, PHP, Python i ECMA Script oraz Java
i VB niemal się nie różnią. Ten sam paradygmat można stosować,
wklepanie kodu w każdym z nich - mając architekturę - to raczej
takie mechaniczne jakby jest ;)
Te "zupełnie inne" to - według mnie - Forth, Mathematica, Haskell,
Verilog, Simulink itd. Każdy osobno inny.
No i super.
A coś fajnego w nich zrobiłeś, czy tylko znasz z nazwy?
Post by slawek
W powtarzaniu klas w gimnazjum to na pewno.
Nie ukończyłem jeszcze gimnazjum. Nawet nie zaczęłem do takowego
uczęszczać.
Przemyśl to sobie, najlepiej dwa razy,
Sądząc po poziomie rozmowy, to bym wnioskował, że nie mogłeś przejść przez podstawówkę i w końcu się poddałeś.

Co wygrałem?
Kolejne subskrypcje w portalach randkowych?
slawek
2020-07-06 23:51:42 UTC
Permalink
No i super.A coś fajnego w nich zrobiłeś, czy tylko znasz z nazwy?
Cośtam zrobiłem w Mathematicy, poszło z IF > 5 czy jakoś tak...
Ale to nie był problem milenijny.
Sądząc po poziomie rozmowy, to bym wnioskował, że nie mogłeś przejść przez podstawówkę i w końcu się poddałeś.Co wygrałem?
Sądząc z twoich odpowiedzi jesteś nikim ważnym, a jedyną rzeczą z
której jesteś naprawdę dumny to ukończenie gimnazjum i jakiś
programik w Scratchu. Szczere gratulacje.


----Android NewsGroup Reader----
http://usenet.sinaapp.com/
g***@gmail.com
2020-07-07 06:52:57 UTC
Permalink
Post by slawek
No i super.A coś fajnego w nich zrobiłeś, czy tylko znasz z nazwy?
Cośtam zrobiłem w Mathematicy, poszło z IF > 5 czy jakoś tak...
Ale można znaleźć do tego jakiś link, czy wiedzą o tym tylko Twoi pluszowi przyjaciele?
slawek
2020-07-07 08:31:31 UTC
Permalink
Post by g***@gmail.com
Ale można znaleźć do tego jakiś link
Zawsze możesz puścić w net skan swojego świadectwa maturalnego.
Plus fotki obu stron swojej aktywnej karty kredytowej, koniecznie
z aktualnym pin.


----Android NewsGroup Reader----
http://usenet.sinaapp.com/
g***@gmail.com
2020-07-07 10:14:19 UTC
Permalink
Post by slawek
Post by g***@gmail.com
Ale można znaleźć do tego jakiś link
Zawsze możesz puścić w net skan swojego świadectwa maturalnego.
Plus fotki obu stron swojej aktywnej karty kredytowej, koniecznie
z aktualnym pin.
Lol.

Większość pracowników akademickich, jakich znam, nie boi się publikować swojego dorobku naukowego pod własnym nazwiskiem.

Dlatego raczej z rezerwą podchodzę do przechwałek usenetowych sławków o ich listach filadelfijskich
Roman Tyczka
2020-07-07 12:48:21 UTC
Permalink
Post by g***@gmail.com
Post by slawek
Post by g***@gmail.com
Ale można znaleźć do tego jakiś link
Zawsze możesz puścić w net skan swojego świadectwa maturalnego.
Plus fotki obu stron swojej aktywnej karty kredytowej, koniecznie
z aktualnym pin.
Lol.
Większość pracowników akademickich, jakich znam, nie boi się publikować swojego dorobku naukowego pod własnym nazwiskiem.
Dlatego raczej z rezerwą podchodzę do przechwałek usenetowych sławków o ich listach filadelfijskich
Odjebaliśta Panowie piękny festyn żenady, wszyscy już się po pachy
ubawiliśmy, ale zaczęło ciągnąć nudą i powtórkami...
Zatem proponuję dać sobie po ostatnim razie i zająć się czymś
konstruktywniejszym niż kopanie po wirtualnych zadkach.
Może dla odmiany coś o programowaniu? Kę?
--
pozdrawiam
Roman Tyczka
slawek
2020-07-07 16:15:59 UTC
Permalink
Post by Roman Tyczka
Może dla odmiany coś o programowaniu?
Ajtam. Programowanie jest passe. Wymaga inteligencji, ciężkiej
pracy (zwłaszcza w C), płacą za mało i ogólnie dziewczyny wolą
bardziej neurochirugów. Bycie geekiem sucks.

Jedyny plus to ten że w zasadzie covid nic nie zmienił: siedzenie
przed komputerem zastąpiliśmy siedzeniem przed komputerem.

A tak ogólnie - lubię C, bo to naprawdę dobry język jest. Tyle że
dość "niskopoziomowy". Lubię Pythona, bo ma właściwe poczucie
humoru. I naprawdę fajną społeczność (bez porównania z
Javą/Oracle, ale Javę lubię za WORA i Swinga). Lubię Fortran, bo
jest vintage. Lubię JS za to że da się pisać bez instalowania
czegokolwiek, bo zawsze jakaś przeglądarka jest. Nawet Cobol i
Lisp mógłbym polubić, ale na szczęście nie muszę. Po prostu lubię
pisać programy. Tyle i aż tyle.


----Android NewsGroup Reader----
http://usenet.sinaapp.com/
slawek
2020-07-07 15:38:16 UTC
Permalink
W dniu wtorek, 7 lipca 2020 10:31:34 UTC+2 użytkownik slawek napisał:> > Ale można znaleźć do tego jakiś link> > > Zawsze możesz puścić w net skan swojego świadectwa maturalnego.> Plus fotki obu stron swojej aktywnej karty kredytowej, koniecznie> z aktualnym pin. Lol.Większość pracowników akademickich, jakich znam, nie boi się publikować swojego dorobku naukowego pod własnym nazwiskiem.Dlatego raczej z rezerwą podchodzę do przechwałek usenetowych sławków o ich listach filadelfijskich
Większość ludzi nie zmienia mechatroniki na filozofię po 4 i pół
roku studiowania. Aby ostatecznie znaleźć swoje miejsce w
informatyce. Co tam u Wielkiego Niebieskiego? A... skończyło się,
no i NDA? Też uważam że embeded to przyszłość.

Co do publikowania - sprawdź skąd się bierze nazwa "test
Studenta". Tak, od faceta który publikował pod pseudonimem.
Myślisz że Bolesław Prus naprawdę nazywał się Prus? No coż, życie
bywa trochę bardziej skomplikowane.

Ja się nie przechwalam. Po prostu używałem/używam Mathematicy i to
dość intensywnie. A np. takiego Forth'a nie i to dlatego że był "
zupełnie inny" - nie spodobał mi się i tyle.


----Android NewsGroup Reader----
http://usenet.sinaapp.com/
g***@gmail.com
2020-07-07 18:10:47 UTC
Permalink
Post by slawek
Większość ludzi nie zmienia mechatroniki na filozofię po 4 i pół
roku studiowania. Aby ostatecznie znaleźć swoje miejsce w
informatyce. Co tam u Wielkiego Niebieskiego? A... skończyło się,
no i NDA? Też uważam że embeded to przyszłość.
O, widzę, że znalazłeś w internecie informacje na mój temat, które tam umieściłem.
Jestem pod wrażeniem. Umiesz korzystać z wyszukiwarki.
Myślę, że gimnazjum to byłaby dla Ciebie pestka.
(Tylko pamiętaj, żeby nie kopiować artykułów z Wikipedii na wypracowania, bo nauczyciele raczej się kapną)
Post by slawek
Co do publikowania - sprawdź skąd się bierze nazwa "test
Studenta". Tak, od faceta który publikował pod pseudonimem.
Myślisz że Bolesław Prus naprawdę nazywał się Prus? No coż, życie
bywa trochę bardziej skomplikowane.
Owszem, zdarzają się i takie przypadki.

Ale jeżeli idzie o kolesi, którzy przechwalają się w Internecie, czego to oni nie osiągnęli, to ich "tajemniczość" bierze się raczej zazwyczaj stąd, że po prostu niewiele osiągnęli.

I nie ma nic złego w tym, że się nic nie osiągnęło.
Ja sam raczej niewiele osiągnąłem. Dużo mniej, niż bym chciał.

Raczej chodzi o to, że niepotrzebnie się przechwalają.

Ludzie, którzy robią coś sensownego ze swoim życiem, nie mają czasu na takie przechwałki, i nie mają takiej potrzeby.
slawek
2020-07-09 09:03:36 UTC
Permalink
Ale jeżeli idzie o kolesi, którzy przechwalają się w Internecie [...]
Myk w tym że ja się nie przechwalam. Fakt, znam naście języków
programowania. W sensie że napisałem w nich jakieś programy
których potem ktoś używał. Ale sam ten fakt jest neutralny, może
budzić zazdrość tylko u ludzi w ogóle nie mających pojęcia o
programowaniu, a takich tu nie ma.

Jak sam widzisz, gdy piszę o większym stażu to po prostu jest to
fakt, bo nawet jeżeli pisałeś programy już w przedszkolu to i tak
ja mam większy. Tak samo z doświadczeniem - zawodowym i życiowym
- trochę czasu a będziesz miał go tyle co i ja.


----Android NewsGroup Reader----
http://usenet.sinaapp.com/
g***@gmail.com
2020-07-10 21:01:03 UTC
Permalink
Post by slawek
Jak sam widzisz, gdy piszę o większym stażu to po prostu jest to
fakt, bo nawet jeżeli pisałeś programy już w przedszkolu to i tak
ja mam większy. Tak samo z doświadczeniem - zawodowym i życiowym
- trochę czasu a będziesz miał go tyle co i ja.
Tzn. to Ty twierdzisz, że to jest fakt.

Ale nie dostarczasz na to żadnego świadectwa. A to, którego dostarczasz,
tzn. odzywki na poziomie gimnazjum, i absolutny brak linków do konkretnego kodu, czy w zasadzie jakichkolwiek konkretów, raczej wydają się temu przeczyć.

Ponadto to nie jest tak, że doświadczenie się zdobywa wraz z upływem czasu.
Tzn. owszem, kiedy zdobywamy doświadczenie, czas upływa. Ale może też upływać bez zdobywania doświadczenia. Zdobywanie doświadczenia wymaga podejmowania wyzwań. Bez tego człowiek tylko się starzeje.

A bycie starym nie jest samo w sobie przesadnie imponujące.
slawek
2020-07-11 07:43:54 UTC
Permalink
Post by g***@gmail.com
absolutny brak linków do konkretnego kodu, czy w zasadzie jakichkolwiek konkretów, raczej wydają się temu przeczyć.
Po pierwsze, zrozum że nikt nie ma obowiązku dawać ci kodu
źródłowego, jakiś linków, danych, czegokolwiek. Po drugie, akurat
w tym wątku byłem jedynym który napisał fragment kodu źródłowego.
Po trzecie, swego czasu dałem na tym forum całkiem długi przykład
(w JS), jak pamiętam Fir się dopraszał i dostał więcej może niż
chciał.
Post by g***@gmail.com
Zdobywanie doświadczenia wymaga podejmowania wyzwań. Bez tego człowiek tylko się starzeje.A bycie starym nie jest samo w sobie przesadnie imponujące.
Pitu pitu, gadka motywacyjna. Co do starzenia - fakt - ludzie się
starzeją - Kolumbie, odkryłeś Amerykę.


----Android NewsGroup Reader----
http://usenet.sinaapp.com/
Roman Tyczka
2020-07-11 09:35:05 UTC
Permalink
Post by slawek
Po pierwsze, zrozum że nikt nie ma obowiązku dawać ci kodu
źródłowego, jakiś linków, danych, czegokolwiek. Po drugie, akurat
Nie jakiś tylko jakichś, panie prof. dr hab. Sławku.
--
pozdrawiam
Roman Tyczka
slawek
2020-07-11 10:32:03 UTC
Permalink
Post by Roman Tyczka
Nie jakiś tylko jakichś
Coż, czyżbyś była młodą nauczycielką języka polskiego?


----Android NewsGroup Reader----
http://usenet.sinaapp.com/
Roman Tyczka
2020-07-11 21:26:21 UTC
Permalink
Post by slawek
Post by Roman Tyczka
Nie jakiś tylko jakichś
Coż, czyżbyś była młodą nauczycielką języka polskiego?
Nie, w jakiś sposób zdałem maturę...
--
pozdrawiam
Roman Tyczka
g***@gmail.com
2020-07-11 17:25:52 UTC
Permalink
Post by slawek
Post by g***@gmail.com
absolutny brak linków do konkretnego kodu, czy w zasadzie jakichkolwiek konkretów, raczej wydają się temu przeczyć.
Po pierwsze, zrozum że nikt nie ma obowiązku dawać ci kodu
źródłowego, jakiś linków, danych, czegokolwiek.
Ja to rozumiem. Nikt nie ma obowiązku kontrybuowania na forach internetowych w pozytywny sposób. Na niemoderowanych forach trolowanie i kozaczenie są dozwolone. Co nie zmienia faktu, że nic dobrego z takich postaw nie wynika.
slawek
2020-07-12 12:32:43 UTC
Permalink
W dniu sobota, 11 lipca 2020 09:44:01 UTC+2 użytkownik slawek napisał:> > absolutny brak linków do konkretnego kodu, czy w zasadzie jakichkolwiek konkretów, raczej wydają się temu przeczyć.> > Po pierwsze, zrozum że nikt nie ma obowiązku dawać ci kodu> źródłowego, jakiś linków, danych, czegokolwiek.Ja to rozumiem. Nikt nie ma obowiązku kontrybuowania na forach internetowych w pozytywny sposób. Na niemoderowanych forach trolowanie i kozaczenie są dozwolone. Co nie zmienia faktu, że nic dobrego z takich postaw nie wynika.
Chyba masz rację, w końcu na podstawie własnych doświadczeń piszesz.
--
----Android NewsGroup Reader----
http://usenet.sinaapp.com/
Gazu
2020-07-07 13:52:54 UTC
Permalink
Post by g***@gmail.com
Post by slawek
Python wyraźnie jest różny od C/C++ co do "filozofii"
C też jest wyraźnie różny od C++ co do filozofii.
C# jest również wyraźnie różny od C i C++ co do filozofii.
A filozowicznie rzecz biorac to jak sie roznia.
g***@gmail.com
2020-07-07 16:10:31 UTC
Permalink
Post by Gazu
Post by g***@gmail.com
Post by slawek
Python wyraźnie jest różny od C/C++ co do "filozofii"
C też jest wyraźnie różny od C++ co do filozofii.
C# jest również wyraźnie różny od C i C++ co do filozofii.
A filozowicznie rzecz biorac to jak sie roznia.
To dość proste.

Język C jest językiem systemowym - został stworzony do napisania UNIXa przenośnego pomiędzy różnymi zestawami instrukcji, i z tego względu jest często określany mianem "przenośnego asemblera".

Język C++ to trochę dziwadło. Sam jego twórca często porównuje go do słonia, który dla jednego jest trąbą, dla drugiego uchem, a dla trzeciego dupą ze zwisającymi jajcami. Oryginalnie był prostym preprocesorem języka C, który rozszerzał go o "mechanizmy obiektowości" znane z języka Simula.

Finalnie został rozszerzany o kolejne mechanizmy, w tym preprocesor szablonów, który przypadkiem okazał się "Turing-complete".

Jakiś czas temu napisałem taką charakterystykę:

https://www.quora.com/If-you-are-going-to-write-a-book-named-C-the-good-parts-what-will-be-in-that-book/answer/Panicz-Godek

W każdym razie twórcy języka C raczej nie lubią C++ (filozoficznie).

Jeżeli idzie o C#, to on nie jest "językiem systemowym", tylko "językiem aplikacji". W przeciwieństwie do C, nie ma w nim wskaźników (są specjalne mechanizmy do pracy z kodem w C/C++).

Twórca języka C# twierdzi, że C++ był dla niego dużą inspiracją, ale jest tajemnicą Poliszynela, że C# to właściwie taka Java od Microsoftu - język działający na maszynie wirtualnej, która zapewnia bezpieczeństwo w dostępie do zasobów.

To tak pokrótce.
slawek
2020-07-11 10:26:43 UTC
Permalink
Post by g***@gmail.com
Język C jest językiem systemowym - został stworzony do napisania UNIXa przenośnego pomiędzy różnymi zestawami instrukcji, i z tego względu jest często określany mianem "przenośnego asemblera".
Hmmm, jesteś pewien że C został zrobiony " na zamówienie" Uniksa?
Czyli najpierw był pomysł AT&T, a to wymusiło zrobienie nowego
języka? Czy raczej język C był zrobiony niezależnie, jako upgrade
BCPL i twórcy Uniksa chwycili go - bo był tym czego potrzebowali?
A że Unix potem był idealnym POSIX-systemem itd. to
oczywiste.

Anyway, obecnie GNU akceptuje C++, podobnie Windows nie jest
(chyba już) robione w C, ale C++. Nawet Arduino to C++ tylko
udające C.
Post by g***@gmail.com
Język C++ to trochę dziwadło.
Niespecjalnie. Są głupsiejsze języki. Np. Julia - fajny język
którego nikt nie chce (bo i po co, skoro i tak w użyciu jest
Matlab). Tcl - niby jest, ale po co? Pisze się (teraz) coś w tym?
VBA... porzucony przez sam MS.
Post by g***@gmail.com
Jeżeli idzie o C#, to on nie jest "językiem systemowym", tylko "językiem aplikacji". W przeciwieństwie do C, nie ma w nim wskaźników (są specjalne mechanizmy do pracy z kodem w C/C++).
Są. Tak samo jak w Javie. Tyle że nie wypada o tym mówić. Nie ma
arytmetyki wskaźników. Nie ma redefinicji operatorów. Nie ma
r-references. Szablonów nie ma. Preprocesora nie ma. Nawet
unique_ptr nie ma.
Post by g***@gmail.com
Twórca języka C# twierdzi, że C++ był dla niego dużą inspiracją, ale jest tajemnicą Poliszynela, że C# to właściwie taka Java od Microsoftu - język działający na maszynie wirtualnej, która zapewnia bezpieczeństwo w dostępie do zasobów. To tak pokrótce.
Towarzysz Poliszynel zeznał też że Java to miało być takie lepsze C++.


----Android NewsGroup Reader----
http://usenet.sinaapp.com/
g***@gmail.com
2020-07-11 16:49:15 UTC
Permalink
Post by slawek
Post by g***@gmail.com
Język C jest językiem systemowym - został stworzony do napisania UNIXa przenośnego pomiędzy różnymi zestawami instrukcji, i z tego względu jest często określany mianem "przenośnego asemblera".
Hmmm, jesteś pewien że C został zrobiony " na zamówienie" Uniksa?
Tak.
Post by slawek
Czyli najpierw był pomysł AT&T, a to wymusiło zrobienie nowego
języka? Czy raczej język C był zrobiony niezależnie, jako upgrade
BCPL i twórcy Uniksa chwycili go - bo był tym czego potrzebowali?
Nie.

Znam dwa źródła historyczne, które stwierdzają, że C powstał, żeby przenosić UNIXa.

Jednym jest niedawny wywiad Kernighana z Thompsonem:




Drugim jest pejper Dennisa Ritchie o historii C (łatwy do wyguglania)
Post by slawek
Anyway, obecnie GNU akceptuje C++, podobnie Windows nie jest
(chyba już) robione w C, ale C++. Nawet Arduino to C++ tylko
udające C.
Mówisz teraz o dupie słonia.
Ja mówię o całym słoniu.
Post by slawek
Post by g***@gmail.com
Język C++ to trochę dziwadło.
Niespecjalnie. Są głupsiejsze języki.
Tyle się na ten temat nagadałem, że już mi się nie chce.

https://www.quora.com/Why-do-some-coders-dislike-c-coding/answer/Panicz-Godek

https://www.quora.com/Why-is-C-used-more-than-C-in-system-programming-since-C-has-more-features-and-is-more-flexible/answer/Panicz-Godek

https://www.quora.com/Is-it-still-worthwhile-to-learn-C-given-that-C-can-do-almost-everything-better/answer/Panicz-Godek
Post by slawek
Post by g***@gmail.com
Jeżeli idzie o C#, to on nie jest "językiem systemowym", tylko "językiem aplikacji". W przeciwieństwie do C, nie ma w nim wskaźników (są specjalne mechanizmy do pracy z kodem w C/C++).
Są. Tak samo jak w Javie
W Javie nie ma. W C# jest marshalling, ale poza tym zmienne mają typ referencji.
Post by slawek
Tyle że nie wypada o tym mówić. Nie ma
arytmetyki wskaźników.
W arytmetyce wskaźników i operacji dereferencji oraz pobrania adresu obiektu zawiera się istota tego, czym jest wskaźnik.
Post by slawek
Post by g***@gmail.com
Twórca języka C# twierdzi, że C++ był dla niego dużą inspiracją, ale jest tajemnicą Poliszynela, że C# to właściwie taka Java od Microsoftu - język działający na maszynie wirtualnej, która zapewnia bezpieczeństwo w dostępie do zasobów. To tak pokrótce.
Towarzysz Poliszynel zeznał też że Java to miało być takie lepsze C++.
Nie do końca. Target Javy to byli programiści aplikacyjni C++. C++ to wielki zwierz, obejmujący zastosowaniem zarówno oprogramowanie aplikacyjne jak i systemowe.

Java może konkurować z C++ np. tam, gdzie się pisze programy w Qt. Minecraft mógł powstać w Javie, ale taki Unreal Engine już raczej nie.
Maciej Sobczak
2020-07-11 18:45:19 UTC
Permalink
Post by g***@gmail.com
Post by slawek
Tyle że nie wypada o tym mówić. Nie ma
arytmetyki wskaźników.
W arytmetyce wskaźników i operacji dereferencji oraz pobrania adresu obiektu zawiera się istota tego, czym jest wskaźnik.
Nie. Arytmetyka wskaźników to cecha właściwie wyłącznie języków asemblerowych, do których C, właśnie z powodu tej arytmetyki, można zaliczyć. Właściwie powód dla którego C ma arytmetykę wskaźników i nie ma prawdziwych tablic, jest ten sam.

Przykładowo, Ada, która jak najbardziej jest językiem systemowym i która powstała z myślą o systemach wbudowanych, arytmetyki wskaźników nie ma. Tzn. można się naszarpać z rzutowaniem do typu arytmetycznego, na którym od biedy da się coś dodać albo odjąć, ale konieczność tego szarpania to właśnie przejaw braku arytmetyki na właściwych wskaźnikach.

Zauważ też, że w C++ istnieje wiele standardowych typów pełniących funkcję wskaźnika (smart pointery) i one też nie mają arytmetyki - w dodatku nie przez przeoczenie, tylko celowo.
Post by g***@gmail.com
Nie do końca. Target Javy to byli programiści aplikacyjni C++.
Ciekawe, że pojęcie "aplikacji" się rozmyło w świecie internetu. Pojęcie "serwera aplikacji" czy też "serwera aplikacyjnego" jest tego objawem.
Post by g***@gmail.com
Java może konkurować z C++ np. tam, gdzie się pisze programy w Qt.
Może, ale wcale nie tam odniosła sukces. Głównym targetem Javy stał się serwer.
No i, co ciekawe, Android.
Ja nie kojarzę obecnie żadnego sensownego programu w Javie, który nazwałbym "aplikacją" w sensie aplikacji desktop. Eclipse, choć się narzuca jako kandydat, to raczej przykład na to, że Javie nie udało się tego zrobić.
Dlatego nie widzę Javy w tym samym miejscu, co Qt.
Post by g***@gmail.com
Minecraft mógł powstać w Javie
A pomogłoby mu to w czymś? A może by zaszkodziło?
--
Maciej Sobczak * http://www.inspirel.com
g***@gmail.com
2020-07-11 20:08:16 UTC
Permalink
Post by Maciej Sobczak
Post by g***@gmail.com
Post by slawek
Tyle że nie wypada o tym mówić. Nie ma
arytmetyki wskaźników.
W arytmetyce wskaźników i operacji dereferencji oraz pobrania adresu obiektu zawiera się istota tego, czym jest wskaźnik.
Nie. Arytmetyka wskaźników to cecha właściwie wyłącznie języków asemblerowych, do których C, właśnie z powodu tej arytmetyki, można zaliczyć. Właściwie powód dla którego C ma arytmetykę wskaźników i nie ma prawdziwych tablic, jest ten sam.
Przykładowo, Ada, która jak najbardziej jest językiem systemowym i która powstała z myślą o systemach wbudowanych, arytmetyki wskaźników nie ma. Tzn. można się naszarpać z rzutowaniem do typu arytmetycznego, na którym od biedy da się coś dodać albo odjąć, ale konieczność tego szarpania to właśnie przejaw braku arytmetyki na właściwych wskaźnikach.
O, właśnie w owym "można się naszarpać" jest pies pogrzebany.

W Adzie można się naszarpać. W Javie nie można.

Java ma inny model pamięci niż C. W C pamięć to ciąg bajtów, a w Javie to zbiór obiektów.
Post by Maciej Sobczak
Zauważ też, że w C++ istnieje wiele standardowych typów pełniących funkcję wskaźnika (smart pointery) i one też nie mają arytmetyki - w dodatku nie przez przeoczenie, tylko celowo.
Powoływanie się na "smart pointery" w dyskusji o wskaźnikach to trochę jak rozważanie zakupu roweru stacjonarnego na wycieczki rowerowe albo do poruszania się po mieście. Niby też rower, ale jednak nie do końca.

Smart pointerom bliżej koncepcyjnie do referencji, niż do wskaźników.
Post by Maciej Sobczak
Post by g***@gmail.com
Nie do końca. Target Javy to byli programiści aplikacyjni C++.
Ciekawe, że pojęcie "aplikacji" się rozmyło w świecie internetu. Pojęcie "serwera aplikacji" czy też "serwera aplikacyjnego" jest tego objawem.
Post by g***@gmail.com
Java może konkurować z C++ np. tam, gdzie się pisze programy w Qt.
Może, ale wcale nie tam odniosła sukces. Głównym targetem Javy stał się serwer.
No i, co ciekawe, Android.
Ja nie kojarzę obecnie żadnego sensownego programu w Javie, który nazwałbym "aplikacją" w sensie aplikacji desktop. Eclipse, choć się narzuca jako kandydat, to raczej przykład na to, że Javie nie udało się tego zrobić.
Dlatego nie widzę Javy w tym samym miejscu, co Qt.
Zgadzam się. Ale wydaje mi się, że taki był pierwotny plan.
Wydaje mi się, że trochę C# rywalizuje, albo przynajmniej jeszcze parę lat temu rywalizował z Qt przy tworzeniu aplikacji okienkowych (tam było coś takiego, jak Windows Forms, zastąpione później chyba trochę przeinżynierowanym "Windows Presentation Foundation")
Post by Maciej Sobczak
Post by g***@gmail.com
Minecraft mógł powstać w Javie
A pomogłoby mu to w czymś? A może by zaszkodziło?
Tzn. ściśle rzecz biorąc, to Minecraft powstał w Javie, więc chyba pomogło mu to w ogóle powstać.

(Nie zaszkodziło mu to też potem w byciu przepisanym na C++)
slawek
2020-07-12 12:58:50 UTC
Permalink
Post by Maciej Sobczak
Ja nie kojarzę obecnie żadnego sensownego programu w Javie, który nazwałbym "aplikacją" w sensie aplikacji desktop. Eclipse, choć się narzuca jako kandydat, to raczej przykład na to, że Javie nie udało się tego zrobić.
STM32CubeMX jest IMHO na Javie. NetBeans też. FreeRouting. Z gier
3D FPS polska gra Chrome. Podsumowując: język jak
język.


----Android NewsGroup Reader----
http://usenet.sinaapp.com/
Maciej Sobczak
2020-07-12 19:00:35 UTC
Permalink
Post by g***@gmail.com
Powoływanie się na "smart pointery" w dyskusji o wskaźnikach to trochę jak rozważanie zakupu roweru stacjonarnego na wycieczki rowerowe albo do poruszania się po mieście. Niby też rower, ale jednak nie do końca.
https://en.wikipedia.org/wiki/Pointer_(computer_programming)

"In computer science, a pointer is an object in many programming languages that stores a memory address."

Wytłumacz mi teraz, dlaczego "smart pointer" to nie jest "pointer".
Post by g***@gmail.com
Smart pointerom bliżej koncepcyjnie do referencji, niż do wskaźników.
To na czym polega różnica?

Niektóre języki nazywają wskaźniki referencjami dla zmylenia przeciwnika, żeby się źle nie kojarzyło. Niektóre języki używają obydwu pojęć na różne rzeczy.

Ale jeśli mówimy o koncepcjach, to na czym polega różnica?
--
Maciej Sobczak * http://www.inspirel.com
g***@gmail.com
2020-07-13 14:17:57 UTC
Permalink
Post by Maciej Sobczak
Post by g***@gmail.com
Powoływanie się na "smart pointery" w dyskusji o wskaźnikach to trochę jak rozważanie zakupu roweru stacjonarnego na wycieczki rowerowe albo do poruszania się po mieście. Niby też rower, ale jednak nie do końca.
https://en.wikipedia.org/wiki/Pointer_(computer_programming)
"In computer science, a pointer is an object in many programming languages that stores a memory address."
Wytłumacz mi teraz, dlaczego "smart pointer" to nie jest "pointer".
Jeśli chcesz dyskutować o tym, czy rower stacjonarny to też rower,
albo czy motorower to też rower, albo czy hulajnoga to też rower,
albo czy hulajnoga elektryczna to motorower, to musisz znaleźć sobie
innego kompana do rozmowy, bo ja niestety nie mam na to czasu.
Post by Maciej Sobczak
Post by g***@gmail.com
Smart pointerom bliżej koncepcyjnie do referencji, niż do wskaźników.
To na czym polega różnica?
Niektóre języki nazywają wskaźniki referencjami dla zmylenia przeciwnika, żeby się źle nie kojarzyło. Niektóre języki używają obydwu pojęć na różne rzeczy.
Ale jeśli mówimy o koncepcjach, to na czym polega różnica?
Jeżeli naprawdę Cię to interesuje, to na tej stronie, do której podlinkowałeś, jest odpowiedź.

Na przykład, jak sobie zerkniesz sekcję dotyczącą Javy, to tam przeczytasz:

"Unlike C, C++, or Pascal, there is no explicit representation of pointers in Java. Instead, more complex data structures like objects and arrays are implemented using references. The language does not provide any explicit pointer manipulation operators."

gdzie słowo "references" prowadzi do strony

https://en.wikipedia.org/wiki/Reference_(computer_science)

na której możesz wyczytać, m.in.

"[...] reference is often erroneously confused with a pointer or address, and is said to "point to" the data. However, a reference may also be implemented in other ways [...]"
Maciej Sobczak
2020-07-13 18:49:12 UTC
Permalink
Post by g***@gmail.com
Post by Maciej Sobczak
Wytłumacz mi teraz, dlaczego "smart pointer" to nie jest "pointer".
Jeśli chcesz dyskutować o tym, czy rower stacjonarny to też rower,
[...]

To poszukam na grupie rowerowej.
Natomiast tutaj pytałem o to, dlaczego smart pointer nie jest pointerem, bo zdaje się tak właśnie to określiłeś.
Post by g***@gmail.com
"Unlike C, C++, or Pascal, there is no explicit representation of pointers in Java.
[...]

A coś o smart pointerach tam jest?
Post by g***@gmail.com
"[...] reference is often erroneously confused with a pointer or address, and is said to "point to" the data. However, a reference may also be implemented in other ways [...]"
Świetnie. Ale na stronie o pointerach jest, że to taki obiekt, który *zawiera* (ang. "stores") adres pamięci. Więc smart pointer, który *zawiera* adres, to według tej definicji pointer.
Zgadzamy się?

I czy różnica pomiędzy wskażnikiem a referencją sprowadza się do tego, że "may be implemented in other ways"? To słabo. Bo te pojęcia to są koncepty i nie powinno się ich uzależniać od tego, jak są zaimplementowane. Bo jeden język może mieć różne implementacje (łącznie z tak odległymi, jak interpreter vs. kompilator) i trochę głupio by było twierdzić, że w jednej Javie jest referencja a w drugiej Javie jest wskaźnik, podczas gdy dokładnie ten sam kod źródłowy robi to samo w obu Javach.

Więc jak to jest? Kiedy jest wskaźnik a kiedy referencja?

Aby wyjść do przodu z tą dyskusją, chętnie podrzucę, że to co w C++ jest nazywane referencją, bardziej zasługuje na nazwę alias. Wtedy oczyścimy pole do bardziej wyrafinowanego rozróżnienia pomiędzy wskaźnikiem a referencją. W szczególności zarówno jedno jak i drugie można skopiować, zachować lub przekazać. Ale czym się różnią?
--
Maciej Sobczak * http://www.inspirel.com
g***@gmail.com
2020-07-13 20:02:56 UTC
Permalink
Post by Maciej Sobczak
Post by g***@gmail.com
Post by Maciej Sobczak
Wytłumacz mi teraz, dlaczego "smart pointer" to nie jest "pointer".
Jeśli chcesz dyskutować o tym, czy rower stacjonarny to też rower,
[...]
To poszukam na grupie rowerowej.
Jeszcze po drodze możesz zahaczyć o grupę języka polskiego, żeby wypytać, czym jest analogia.
Post by Maciej Sobczak
Natomiast tutaj pytałem o to, dlaczego smart pointer nie jest pointerem, bo zdaje się tak właśnie to określiłeś.
Z dokładnie tych samych powodów, dla których rower stacjonarny to nie rower.

Oczywiście jeżeli chcesz zająć stanowisko przeciwne, to masz do tego prawo.

Słowa mają taki sens, jaki im nadamy. Jeżeli masz powody, żeby uznać, że rower stacjonarny to też rower, nie będę Ci stawał na przeszkodzie, bo mam lepsze rzeczy do roboty.
Post by Maciej Sobczak
Post by g***@gmail.com
"Unlike C, C++, or Pascal, there is no explicit representation of pointers in Java.
[...]
A coś o smart pointerach tam jest?
Post by g***@gmail.com
"[...] reference is often erroneously confused with a pointer or address, and is said to "point to" the data. However, a reference may also be implemented in other ways [...]"
Świetnie. Ale na stronie o pointerach jest, że to taki obiekt, który *zawiera* (ang. "stores") adres pamięci. Więc smart pointer, który *zawiera* adres, to według tej definicji pointer.
Zgadzamy się?
Nie. Smart pointer to taki obiekt, który *zawiera* *wskaźnik*.

O rowerze czasem się mówi "dwa kółka". Ale to nie oznacza, że rower stanowi zbiór dwóch kółek. Rower zawiera również inne istotne komponenty, bez których nie byłby rowerem.

To zjawisko językowe nazywa się ogólnie metonimią, a nieco bardziej konkretnie - synekdochą.
Post by Maciej Sobczak
I czy różnica pomiędzy wskażnikiem a referencją sprowadza się do tego, że "may be implemented in other ways"? To słabo. Bo te pojęcia to są koncepty i nie powinno się ich uzależniać od tego, jak są zaimplementowane.
Nie. Referencja jest ogólniejszym pojęciem. Wskaźnik jest bardzo konkretnym pojęciem technicznym, silnie związanym z liniowością adresów na architekturze von Neumanna. Można powiedzieć, że pamięć adresowana liniowo stanowi ramę pojęciową dla wskaźnika.

Bardziej zwariowany przykład referencji można znaleźć tutaj:

Aminokwasy niesione przez tRNA w cytoplazmie stanowią referencję odpowiednich trypleów zakodowanych w łańcuchu DNA/mRNA.

Ale tutaj nie ma liniowych adresów. Rolę magistrali pełni cytoplazma, natomiast w charakterze adresowania masz przyciągania jonów i tego rodzaju mechanizmy.
Maciej Sobczak
2020-07-14 18:59:59 UTC
Permalink
Post by g***@gmail.com
Nie. Smart pointer to taki obiekt, który *zawiera* *wskaźnik*.
Tego nie możemy zakładać, bo to szczegół implementacyjny. Smart pointer może sobie zawierać adres w jakiejś innej postaci, niż wskaźnik. Nie musi wskaźnika zawierać.
To, co chciałem zaznaczyć odnosząc się do Twojej definicji, to fakt, że smart pointer też jest pointerem. Bo spełnia jego funkcjonalną definicję.

Dlatego też analogia rowerowa była chybiona.
Post by g***@gmail.com
Nie. Referencja jest ogólniejszym pojęciem.
Słusznie.
Post by g***@gmail.com
Wskaźnik jest bardzo konkretnym pojęciem technicznym, silnie związanym z liniowością adresów na architekturze von Neumanna. Można powiedzieć, że pamięć adresowana liniowo stanowi ramę pojęciową dla wskaźnika.
Nie szedłbym tak daleko. W ogóle nie rozumiem, po co mieszasz tutaj architekturę von Naumanna. Na harwardzkiej nie ma wskaźników? Są.
Liniowa pamięć też nie ma tutaj związku. W nieliniowej nie ma wskaźników? Są.
Cytujesz losowe pojęcia.

Rozróżnienie wskaźników od referencji jako ich bardziej niskopoziomowe wcielenie jest użyteczne (np. referencje w Javie mogą odnosić się do zdalnych obiektów, nie tylko do lokalnych i to sprawia, że referencje w Javie są konstruktem wyższego poziomu, niż wskaźniki w C). Ale w tych abstrakcyjnych definicjach nie widzę sensu odmawiania smart pointerom ich pointerowej "duszy" (nie żebym coś tam nawiązywał :-D ).

Inaczej, krócej: jeżeli podzielimy te wszystkie obiekty na pointery i referencje, to smart pointery są w tej pierwszej grupie.
--
Maciej Sobczak * http://www.inspirel.com
g***@gmail.com
2020-07-14 10:01:52 UTC
Permalink
Post by Maciej Sobczak
[...]
A coś o smart pointerach tam jest?
Wszystko tam jest. Wystarczy przeczytać.
Na podlinkowanej przez Ciebie stronie wiki.

Wskaźniki vs. referencje:

"A pointer is a simple, more concrete implementation of the more abstract reference data type. Several languages, especially low-level languages, support some type of pointer, although some have more restrictions on their use than others. While "pointer" has been used to refer to references in general, it more properly applies to data structures whose interface explicitly allows the pointer to be manipulated (arithmetically via pointer arithmetic) as a memory address, as opposed to a magic cookie or capability which does not allow such"

Wskaźniki vs. smart pointery:

"Since C++11, the C++ standard library also provides smart pointers (unique_ptr, shared_ptr and weak_ptr) which can be used in some situations as a safer alternative to primitive C pointers"

gdzie "smart pointers" przenosi nas do odrębnej strony na wiki, gdzie można przeczytać:

"In computer science, a smart pointer is an abstract data type that simulates a pointer while providing added features, such as automatic memory management or bounds checking"
slawek
2020-07-12 14:08:53 UTC
Permalink
Java wyparła Delphi. Skutecznie. Java jest nadal jedynym sensownym
wyborem jak appka ma być WORA. Java to nie tylko sam jezyk, to
cała platforma.


----Android NewsGroup Reader----
http://usenet.sinaapp.com/
Roman Tyczka
2020-07-12 14:11:25 UTC
Permalink
Post by slawek
Java wyparła Delphi. Skutecznie.
Tak, a TIRy, wyparły auta sportowe.

hint:
Delphi to desktop, Java to server side.
--
pozdrawiam
Roman Tyczka
slawek
2020-07-12 14:38:49 UTC
Permalink
Post by Roman Tyczka
Delphi to desktop, Java to server side.
Java jest teraz niszczona przez Oracle (cyrk z wersjami), ale
nadal jest na lepszej licencji niż leśnodziadkowe Delphi. Ok,
jest jeszcze Lazarus/FPC, tyle że choć sympatyczny to nie
zachwyca.

Nikt nie broni używania Javy na desktopie. Jest do tego znacznie
lepsza niż Delphi. (Historia Borlanda to epicki fail.) Owszem, są
kłopoty z embeded - trzeba płacić, a skompilowane C++ jest za
darmo.

Java jest językiem ogólnego pzeznaczenia. A co do systemów
operacyjnych... da się Linuksa przenieść na ECMA
Script.

Delphi jest passe. To język leśnych dziadków kurczowo trzymających
się popłuczyn po Turbo Pascalu i z nabożeństwem czytającym
Wirtha. Negujących istnienie Ady i ogólnie nie rozumiejących że
programowanie to nie kończy się na wstawianiu kontrolek w
formatki.


----Android NewsGroup Reader----
http://usenet.sinaapp.com/
Sushi Master
2020-10-05 10:36:10 UTC
Permalink
Sat, 11 Jul 2020 11:45:19 -0700 (PDT)
Post by Maciej Sobczak
Ja nie kojarzę obecnie żadnego sensownego programu w Javie, który nazwałbym "aplikacją"
w sensie aplikacji desktop. Eclipse, choć się narzuca jako kandydat, to raczej przykład
na to, że Javie nie udało się tego zrobić.
Z tej samej działki aplikacje JetBrains typu PHPStorm?

SushiMaster

slawek
2020-07-06 08:56:34 UTC
Permalink
Post by g***@gmail.com
W powtarzaniu klas w gimnazjum to na pewno.
Nie ukończyłem jeszcze gimnazjum. Nawet nie zaczęłem do takowego
uczęszczać.

Przemyśl to sobie, najlepiej dwa razy, przy twoim IQ rozwiązanie
tej zagadki może sprawiać problemy.


----Android NewsGroup Reader----
http://usenet.sinaapp.com/
Loading...