🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.c
Article #267657

Re: Ciemna strona C++

#267657
From: Sebastian Kaliszewski
Date: Thu, 08 Nov 2007 14:41
91 lines
4269 bytes
Seweryn Habdank-Wojewódzki wrote:
> 13 -- jakiś obłęd, co on chce pokazać?

Że język jest zrobiony od d. strony?


> 19 -- o czym on mówi? Czy on może chce, aby iterator był dołączony do
> obiektu, a może jak obiekt ma 5 MB, to też ma wszystko wiedzieć o
> pojedynczym obiekcie? 

Po co? Wzkaźniki już nie istnieją?

> A jak tych obiektów w kolekcji jest dzikie mnóstwo
> to, co? Ile informacji potrzebuje mieć iterator, aby wszyscy przestali się
> czepiać, że on czegoś nie wie.

Powinien wiedzieć po czym iteruje. Tak, żeby nie było UBecji.

[...]
 > Zresztą banalne jest związanie iteratora i
> kontenera wrapując oba w jednym obiekcie.

Typowe gadanie z C++ -- zrób se sam. W C++ wszystko jest zrób se sam, bo 
biblioteka standardowa jest biedna i prymitywna.


> 32 i 33 -- zapomniał Pan Felix o const, czy to go boli? Czy jeśli żąda
> czegoś innego od referencji niż od wartości, to może operować constem.
> A może ma jeszcze coś innego na myśli?

To, że w wywołaniu nie wiesz czy parametr będzie modyfikowany czy nie.


> 34 i 35 -- Super. Język ma być łatwy! Też tak, chce, aby Haskel i Lisp były
> łatwe, aby asembler był łatwy. Jakoś jest tak, że język, który oferuje
> więcej niż Logo, musi być nieco trudniejszy.

Taaak, bo takie potworki jak boost::mpl czy boost::spirit to są niezwykle 
potrzebne


> 36 -- zgada się, tylko co to wnosi?

W koślawym języku traci się kupę czasu na przeskakiwanie koślawości?


> 37 -- [...] 2: nie wiem o co chodzi (na czym polega rzeczywisty
> kłopot);

Code bloat.

> 38 -- mówił, że lubi C, a tam są te same problemy i na dodatek łata się je o
> wiele gorzej niż w C++.

W C są wyjątki??? iteratory??? desytuktory????


> 39 -- o jaki ten Pan mądry, wpakował kod języka C, do funkcji C++ beż
> żadnego opakowania i płacze. To są łatwe do wychwycenia błędy. Znam gorsze
> w środowisku wielo wątkowym, które są kłopotliwe nie zależnie od języka.
> 
> 40 -- no tak, a kto tak projektuje kod nawet w języku C. Co to za zwyczaj,
> aby obiekt kasował nie ten co go przydziela?

To jest normalny zwyczaj. Tylko w nienormalnych językach to sprawia problem :)

> ... męczące jest zastanawianie się ile można brzydkich przykładów podać w
> dowolnym języku programowania ... bo w każdym to jest możliwe.

Ale w innych językach tego problemu po prostu nie ma.


> 47 -- chłopina rzutuje obiekt foo na bar a potem dziwi się, że "mu to nie
> działa".

Co rzutuje? Przecież to jest "normalny" polimorfizm.

Pokazana jedna z projektowych przypadłości C++ -- niekontrolowane nakłądanie 
się na siebie cech, na skutek niedostatecznego przemyślenia skutków 
dodawania określoncyh ficzerów -- połączenie odziedziczonego z C pomieszania 
wskaźników z tablicami z obiektowym polimorfizmem rodzi kaszanę.

Inny przykład to słynne >> w szablonach.

> Mi to w ogóle ten kod nie działa, a jak go poprawiłem to mi działa
> dobrze.

Taaaak??!?!?!? O, to ciekawe!

pzdr
\SK
Technical Details
Message-ID: <fgv6ba$k14$1@bozon2.softax.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!opal.futuro.pl!news.internetia.pl!newsfeed.tpinternet.pl!atlantis.news.tpi.pl!news.tpi.pl!bozon.softax.com.pl!not-for-mail
References: <fghgeo$spf$1@nemesis.news.tpi.pl> <fghsb4$kpq$1@news.dialog.net.pl> <fgo4c7$mtu$1@news.vectranet.pl> <20071106073039.433f4934@Vorago> <fgqn9m$74j$2@news.vectranet.pl> <618565031.20071107113041@pkierski.net> <fgt6sh$jov$1@news.vectranet.pl> <fgtb6j$nur$1@news.vectranet.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!opal.futuro.pl!news.internetia.pl!newsfeed.tpinternet.pl!atlantis.news.tpi.pl!news.tpi.pl!bozon.softax.com.pl!not-for-mail
From: Sebastian Kaliszewski <s@get.it.off.to.reply.informa.pl>
Newsgroups: pl.comp.lang.c
Subject: Re: Ciemna strona C++
Date: Thu, 08 Nov 2007 15:41:56 +0100
Organization: Softax news server
Lines: 91
Message-ID: <fgv6ba$k14$1@bozon2.softax.pl>
References: <fghgeo$spf$1@nemesis.news.tpi.pl> <fghsb4$kpq$1@news.dialog.net.pl> <fgo4c7$mtu$1@news.vectranet.pl> <20071106073039.433f4934@Vorago> <fgqn9m$74j$2@news.vectranet.pl> <618565031.20071107113041@pkierski.net> <fgt6sh$jov$1@news.vectranet.pl> <fgtb6j$nur$1@news.vectranet.pl>
NNTP-Posting-Host: 83.18.189.42
Mime-Version: 1.0
X-Trace: nemesis.news.tpi.pl 1194532900 24901 83.18.189.42 (8 Nov 2007 14:41:40 GMT)
X-Complaints-To: usenet@tpi.pl
NNTP-Posting-Date: Thu, 8 Nov 2007 14:41:40 +0000 (UTC)
User-Agent: Mozilla Thunderbird 1.0.2 (X11/20050322)
X-Accept-Language: en-us, en
In-Reply-To: <fgtb6j$nur$1@news.vectranet.pl>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit