C++ is horrible programming language

Moderator: tilz0R

C++ is horrible programming language

OdgovorNapisal/-a s54mtb » 12 Jan 2022, 07:11

Always going the extra mile.
https://www.buymeacoffee.com/s54mtb
Uporabniški avatar
s54mtb
 
Prispevkov: 14637
Pridružen: 15 Jan 2015, 00:10
Zahvalil se je: 2177 krat
Prejel zahvalo: 6068 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 255

Re: Arduino -osnovna šola - 5.1.2022

OdgovorNapisal/-a tilz0R » 12 Jan 2022, 08:37

And he is not wrong

If come code is ugly and complex in C then it’s probably complex and ugly on background as well. And if it looks simple and fast, then it’s guaranteed to be simple and fast for computer as well.

If some code looks simple and fast in C++ or Java (or C#) it can still be very complex and slow on background.
Knowledge sharing is people' caring., T. MAJERLE
Uporabniški avatar
tilz0R
 
Prispevkov: 2143
Pridružen: 17 Jan 2015, 23:12
Kraj: Črnomelj
Zahvalil se je: 241 krat
Prejel zahvalo: 670 krat
Uporabnika povabil: s56rga
Število neizkoriščenih povabil: 226

Re: Arduino -osnovna šola - 5.1.2022

OdgovorNapisal/-a blasny » 12 Jan 2022, 09:27

Naj admin to trolanje prestavi v ločeno temo. Ni treba te teme onesnaževat.

Tudi sam nisem več fan od C++. Sem pa enkrat bil.
Ampak Linus ni nobena referenca za komentirat programske jezike, ker celo življenje programira samo v C-ju. In samo Linux kernel (s kratkim odmorom za Git. Hvala Linus.)

tilz0R je napisal/-a:And he is not wrong

If come code is ugly and complex in C then it’s probably complex and ugly on background as well. And if it looks simple and fast, then it’s guaranteed to be simple and fast for computer as well.

If some code looks simple and fast in C++ or Java (or C#) it can still be very complex and slow on background.

Yes, he is wrong. To njegovo razmišljanje temelji na zmoti, da je C low-level programski jezik, kar že dolgo ni več. C je assembler za PDP-11, ki že dolgo ne obstaja več.
Na modernih multi-procesorskih, multi-core arhitekturah že 15 let ne velja več, da "if it looks simple and fast, then it’s guaranteed to be simple and fast for computer as well."
Malo morgen. Kar steje sedaj je cache invalidation in pipeline stalling. V časih PDP-11 je dostop do glavnega pomnilnika trajal 1-4 CPU cikle. Zdaj traja dostop do pomnilnika ~500 ciklov.
Je prekleto vseeno ali se stavek
Koda: Izberi vse
++i;
prevede v eno assembler instrukcijo ali v 10. Glavna cokla je, da če i ni v cache-u, da bo trajalo 1000 ciklov, da se i prebere iz pomnilnika in zapiše nazaj. Med tem časom lahko CPU core samo vrti palce.
blasny
 
Prispevkov: 772
Pridružen: 18 Jan 2015, 15:48
Kraj: Tepanjce
Zahvalil se je: 494 krat
Prejel zahvalo: 298 krat
Uporabnika povabil: VolkD
Število neizkoriščenih povabil: 32

Re: Arduino -osnovna šola - 5.1.2022

OdgovorNapisal/-a VolkD » 12 Jan 2022, 09:41

blasny je napisal/-a:Naj admin to trolanje prestavi v ločeno temo.
Done.
Dokler bodo ljudje mislili, da živali ne čutijo bolečine, bodo živali čutile, da ljudje ne mislijowww.S5tech.net
Uporabniški avatar
VolkD
Administratorji strani
 
Prispevkov: 59327
Pridružen: 29 Dec 2014, 19:49
Kraj: Kačiče (Divača)
Zahvalil se je: 16187 krat
Prejel zahvalo: 9186 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 255

Re: C++ are horrible programming languages

OdgovorNapisal/-a tilz0R » 12 Jan 2022, 09:51

blasny, škoda se naganjati, a point tukaj niso cache, v C++ ali C# so isto cache problemi, enako v assemblerju. Kar pomeni, da lahko ta offset zanemarimo.

Poanta je, da lahko v C++ skriješ marsikaj, kot je recimo operator overload, pa tudi že interface class-i so lahko hudič, ko iščeš zakaj se xyz funkcija ne izvede, potem ugotoviš, da sploh ni uporabljena, ker class xyz implementira svojo, etc etc.
Gre se za to, kaj programski jezik lahko skrije, in več kot skrije, težje je iskati napake.
Knowledge sharing is people' caring., T. MAJERLE
Uporabniški avatar
tilz0R
 
Prispevkov: 2143
Pridružen: 17 Jan 2015, 23:12
Kraj: Črnomelj
Zahvalil se je: 241 krat
Prejel zahvalo: 670 krat
Uporabnika povabil: s56rga
Število neizkoriščenih povabil: 226

Re: C++ are horrible programming languages

OdgovorNapisal/-a blasny » 12 Jan 2022, 09:54

C++ je horrible, ker je neprijazen. In zelo dolgo traja, da ga res obvladaš. V zadnjih letih dodajajo optimizacije, ki jih stari mački razumejo, novinci se pa v njih zgubljajo, ker dvigujejo kompleksnost.
blasny
 
Prispevkov: 772
Pridružen: 18 Jan 2015, 15:48
Kraj: Tepanjce
Zahvalil se je: 494 krat
Prejel zahvalo: 298 krat
Uporabnika povabil: VolkD
Število neizkoriščenih povabil: 32

Re: C++ are horrible programming languages

OdgovorNapisal/-a VolkD » 12 Jan 2022, 10:02

Programiranje ni enostavno. Če bi bilo, bi C++ že imel enostavnejšo alternativo, ampak jaz je ne vidim.
Dokler bodo ljudje mislili, da živali ne čutijo bolečine, bodo živali čutile, da ljudje ne mislijowww.S5tech.net
Uporabniški avatar
VolkD
Administratorji strani
 
Prispevkov: 59327
Pridružen: 29 Dec 2014, 19:49
Kraj: Kačiče (Divača)
Zahvalil se je: 16187 krat
Prejel zahvalo: 9186 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 255

Re: C++ are horrible programming languages

OdgovorNapisal/-a Kroko » 12 Jan 2022, 10:46

Članke, kjer skupaj mečejo neprimerjlive stvari (jezike), sploh ne povoham. Ker ne gre za nič drugega kot za click bait. To je tako, kot bi primerjal hruške in golaž.

Java vs C# - to je primerjava
ali pa C vs C++ vs Rust - tudi to bi šlo
ali pa PHP vs Go če že hočete nekaj za na splet

C in C++ sta dolgo časa izgubljala priljubljenost. Razlog je preprost - moorov zakon.. Pri vsako leto hitrejših računalnikih ni bilo več potrebe po hitrih in kompleksnih jezikih. Nastalo je cel kup počasnih in preprostih. Ampak vsega je enkrat konec, računalniki niso danes nič hitrejši kot pred par leti in počasni jeziki niso več kos problemom.

Čisto vsaka stvar (celo toaster) danes rabi programerja. Danes, če znaš vsaj malo programirat, boš brez težav našel nekoga, ki ti bo to plačal.

C in C++ sta nevarna. Ena napačna zvezdica in vse bo šlo v maloro. Po vsej verjetnosti niti ne takoj ampak po pol leta na strežniku ali tik preden se sproži airbag.
Skratka moraš bit dober. Res dober, da česa takega ne ušpičiš. Takih programerjev je na svetu povsem premalo. Preveč dela za premalo denarja. Se s kakšnimi toasterji enostavno in brez truda zasluži preveč. Pa še zanimivo ni. Na primer, odličen programer se raje heca z GPS-i kot da bi delal kaj "resnega" :-)

Kdo ima sedaj problem? Google sigurno, napačna zvezdica na njihovem serverju pa lahko štejemo miljarde izgube na minuto. Linus prav tako saj ni dobrih ljudi, da bi delali ta njegov kernel ali karkoli že.

Kakšne so opcije - bolj malo jih je. Rust so izumili točno zato, da bi ta problem rešili. Mogoče rata. Rust bi lahko poganjal airbage, Java pač ne.

Potem so tu še sociološki razlogi ampak o temu mogoče kdaj drugič. Ljudje ki 26 ur na dan preživija za ekranom (in ne zaradi igric) so pač čudni. Čudnega pa ne maramo.
http://www.planet-cnc.com Kroko was here!
Uporabniški avatar
Kroko
 
Prispevkov: 5499
Pridružen: 14 Jan 2015, 11:12
Kraj: Ljubljana
Zahvalil se je: 735 krat
Prejel zahvalo: 2109 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 255

Re: C++ is horrible programming language

OdgovorNapisal/-a s54mtb » 12 Jan 2022, 13:14

Čudno, da nekatere pa ravno čimbolj čudno čudno privlači.
Always going the extra mile.
https://www.buymeacoffee.com/s54mtb
Uporabniški avatar
s54mtb
 
Prispevkov: 14637
Pridružen: 15 Jan 2015, 00:10
Zahvalil se je: 2177 krat
Prejel zahvalo: 6068 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 255

Re: C++ are horrible programming languages

OdgovorNapisal/-a shimonabi » 03 Sep 2022, 17:48

VolkD je napisal/-a:Programiranje ni enostavno. Če bi bilo, bi C++ že imel enostavnejšo alternativo, ampak jaz je ne vidim.


Google razvija https://en.wikipedia.org/wiki/Carbon_(programming_language)
shimonabi
 
Prispevkov: 147
Pridružen: 02 Apr 2020, 13:29
Zahvalil se je: 3 krat
Prejel zahvalo: 45 krat
Uporabnika povabil: VolkD
Število neizkoriščenih povabil: 4

Re: C++ is horrible programming language

OdgovorNapisal/-a VolkD » 03 Sep 2022, 19:54

Verjel ali ne, bom kar na C++ ostal.
Pravzaprav me vedno bolj privlači.
Dokler bodo ljudje mislili, da živali ne čutijo bolečine, bodo živali čutile, da ljudje ne mislijowww.S5tech.net
Uporabniški avatar
VolkD
Administratorji strani
 
Prispevkov: 59327
Pridružen: 29 Dec 2014, 19:49
Kraj: Kačiče (Divača)
Zahvalil se je: 16187 krat
Prejel zahvalo: 9186 krat
Uporabnika povabil: Vrtni palček
Število neizkoriščenih povabil: 255


Vrni se na C in sorodni jeziki

Kdo je na strani

Po forumu brska: 0 registriranih uporabnikov in 1 gost