🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

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

Re: Coroutines w (GNU) C

#310082
From: Mateusz Viste
Date: Wed, 29 Jan 2020 13:30
37 lines
3089 bytes
2020-01-29 o 04:58 -0800, M.M. napisał:
> (różne mądre rzeczy)

Bardzo ładnie wypunktowałeś sprawę, i ze wszystkim się zgadzam. Dodam
tylko jeden aspekt, który przeoczyłeś - a który może być bardzo istotny
w ramach pracy zespołowej.

> 2) W C++ mamy praktycznie to samo co w C, plus wiele dodatkowych
> rzeczy. Więc jakby nawet się uprzeć, to w C++ można programować tak
> jak w C jeśliby te dodatkowe cechy nic nie wnosiły.

Zdarzało mi się widzieć projekty napisane w C - jak Pan Bóg przykazał.
Później ktoś powiedział "no tak, C jest fajne, ale może kompilujmy go
jako C++, ale dalej pisząc C". No i git, whatever.

Później ktoś (inny) powiedział "a może rozluźnijmy trochę portki i
skorzystajmy z 'new'? To będzie takie 'C z new', tu i ówdzie usprawni
pisanie tego i owego, czysty zysk!". No i w sumie - czemu nie.

Jak łatwo się domyśleć, potem było już z górki. Każdy dodawał coś od
siebie i projekt który początkowo był składny i konsekwentny, z czasem
przeistoczył się w potworka, gdzie ten sam problem rozwiązuje się na
kilka różnych sposobów w zależności od tego w jakim czasie i przez kogo
został napisany.

> potocznie zazwyczaj ma się na myśli programowanie w C++ pełną gębą.

Do tego to niechybnie zmierza. Jeśli robi to jedna osoba która
dokładnie wie co robi i trzyma się jakichś ustalonych zasad, to nie ma
problemu. Gorzej, kiedy mamy do czynienie z większym zespołem, w którym
znajomość C++ i jego wszelakich uaktualnień oraz najrozmaitszych
rozszerzeń jest bardzo niejednolita. Ktoś powie, że to wirtualny
problem, bo od tego jest PM lub wzorce projektowe, żeby takie rzeczy
uściślać i egzekwować...      a życie życiem.


Mateusz
Technical Details
Message-ID: <20200129143046.0c11708f@mateusz>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!3.eu.feeder.erje.net!feeder.erje.net!weretis.net!feeder7.news.weretis.net!news.mixmin.net!aioe.org!.POSTED.nyPK7k8oeDafdNpooDsxZQ.user.gioia.aioe.org!not-for-mail
References: <4375b52d-ba21-462a-8844-9bd1a02e9ece@googlegroups.com> <r0k8i5$ifg$1@dont-email.me> <ce3f0b08-658f-4248-b82c-09f093a7f20c@googlegroups.com> <r0kq6d$v6h$1@dont-email.me> <748c5d16-f4a8-43a0-8a56-bea0800e1e04@googlegroups.com> <r0n95e$35l$1@dont-email.me> <f3df206c-11d4-4b22-87ff-fc7aa00935f3@googlegroups.com> <r0nevq$9iq$1@dont-email.me> <ecae4ae1-0b06-4956-8df0-593fa0f1cd01@googlegroups.com> <r0njjv$740$1@dont-email.me> <0e0786af-7b58-4070-b8cd-81f1bda1f432@googlegroups.com> <r0q9iv$23b$1@dont-email.me> <20200128233003.4bf9d9eb@mateusz> <1a207604-09fa-43f2-8d0a-e3ff51b183f4@googlegroups.com>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!3.eu.feeder.erje.net!feeder.erje.net!weretis.net!feeder7.news.weretis.net!news.mixmin.net!aioe.org!.POSTED.nyPK7k8oeDafdNpooDsxZQ.user.gioia.aioe.org!not-for-mail
From: Mateusz Viste <mateusz@xyz.invalid>
Newsgroups: pl.comp.lang.c
Subject: Re: Coroutines w (GNU) C
Date: Wed, 29 Jan 2020 14:30:46 +0100
Organization: . . .
Lines: 54
Message-ID: <20200129143046.0c11708f@mateusz>
References: <4375b52d-ba21-462a-8844-9bd1a02e9ece@googlegroups.com> <r0k8i5$ifg$1@dont-email.me> <ce3f0b08-658f-4248-b82c-09f093a7f20c@googlegroups.com> <r0kq6d$v6h$1@dont-email.me> <748c5d16-f4a8-43a0-8a56-bea0800e1e04@googlegroups.com> <r0n95e$35l$1@dont-email.me> <f3df206c-11d4-4b22-87ff-fc7aa00935f3@googlegroups.com> <r0nevq$9iq$1@dont-email.me> <ecae4ae1-0b06-4956-8df0-593fa0f1cd01@googlegroups.com> <r0njjv$740$1@dont-email.me> <0e0786af-7b58-4070-b8cd-81f1bda1f432@googlegroups.com> <r0q9iv$23b$1@dont-email.me> <20200128233003.4bf9d9eb@mateusz> <1a207604-09fa-43f2-8d0a-e3ff51b183f4@googlegroups.com>
NNTP-Posting-Host: nyPK7k8oeDafdNpooDsxZQ.user.gioia.aioe.org
Mime-Version: 1.0
X-Complaints-To: abuse@aioe.org
X-Notice: Filtered by postfilter v. 0.9.2
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit