Article View: pl.comp.lang.c
Article #268105Re: Ciemna strona C++
From: Sebastian Kaliszewski
Date: Tue, 18 Dec 2007 15:41
Date: Tue, 18 Dec 2007 15:41
56 lines
3522 bytes
3522 bytes
Seweryn Habdank-Wojewódzki wrote: > Gneratory parserów. Kod przez nich tworzony jest bardzo dziwny (raczej z > kategorii nieruszać). I dobrze. Kodu generowanego przez kompilator, zwłaszcza zoptymalizowowawnego też nie należy ruszać. >>A co za różnica? Po jaką cholerę się męczyć, jak można użyć właściwego >>narzędzia. Narzędzia, które odwali za mnie mechaniczną część roboty. > > Używać to nie znaczy rozumieć co się dzieje pod maską. Do kanonu wykształcenia informatycznego należy wiedza "co się dzieje pod maską". > Jak na razie > przychylam się do opisów Qrczaka, że parsowanie to nie jest banalna sprawa, > a nie "bezproblemowe pisanie". Parsowanie normalnych języków prgoramowania jest sprawą zupełnie prostą (trzeba posiąść pewną podstawową wiedzę) tylko żmudną (a żmudność generatory szybko redukują). >>Krócej a znaczy tyle samo. Logiki to za mnie nie rozwiąże, ale pisania >>dużo mniej, zapis czytelniejszy i trudniej o błąd. > > Oczywiście. Z wyjątkiem faktu, że ręcznie napiszesz kontekstowy parser nawet > prostego języka, a takie automaty mają kłopoty. Z tego wynika tylko tyle, że w językach programowania należy kontekstowości unikać i bez uzasadnienia nie używać. Kontekstowość C++ to wynik b.delu w projekcie i podejścia, że autorzy kompilatorów jakoś sobie poradzą. > Kiedyś pisałem parser prostej gramatyki ale kontekstowej i nie było to > bardzo proste, tak więc mam inne zdanie niż Ty o parsowaniu w ogólności. Pisałem nie jeden parser. Dla normalnych języków programowania to jest zadanie proste. >>Widzę, że nic a nic nie rozumiesz. >>-- po co ci jakiś język wyższego poziomu, przecież nie będziesz korzystał >>z gotowców... > > Może i tak, może i nie. W każdym razie znajomość gotowca/generatora nie > wskazuje o zrozumieniu tematu, a już na 100% nie o tym czy faktyczne > zadanie jest proste czy nie. Zadanie jest proste zarówno dla Javy jak i Pythona. Jest trudne dla C++, bo C++ ma bezsensownie zrobioną składnię. pzdr \SK
Technical Details
Message-ID:
<fk8onr$6vh$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-mailReferences:
<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> <fgv318$hl7$1@bozon2.softax.pl> <fgv82j$htn$1@news.vectranet.pl> <fjncjm$ov6$1@inews.gazeta.pl> <fjpc4l$6ei$2@news.vectranet.pl> <fjrerb$8su$1@bozon2.softax.pl> <fjsa5u$qi$3@news.vectranet.pl> <fjtojr$qo1$1@bozon2.softax.pl> <fjtvs5$ke4$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: Tue, 18 Dec 2007 16:41:48 +0100 Organization: Softax news server Lines: 56 Message-ID: <fk8onr$6vh$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> <fgv318$hl7$1@bozon2.softax.pl> <fgv82j$htn$1@news.vectranet.pl> <fjncjm$ov6$1@inews.gazeta.pl> <fjpc4l$6ei$2@news.vectranet.pl> <fjrerb$8su$1@bozon2.softax.pl> <fjsa5u$qi$3@news.vectranet.pl> <fjtojr$qo1$1@bozon2.softax.pl> <fjtvs5$ke4$1@news.vectranet.pl> NNTP-Posting-Host: 83.18.189.42 Mime-Version: 1.0 X-Trace: atlantis.news.tpi.pl 1197992227 20067 83.18.189.42 (18 Dec 2007 15:37:07 GMT) X-Complaints-To: usenet@tpi.pl NNTP-Posting-Date: Tue, 18 Dec 2007 15:37:07 +0000 (UTC) User-Agent: Mozilla Thunderbird 1.0.2 (X11/20050322) X-Accept-Language: en-us, en In-Reply-To: <fjtvs5$ke4$1@news.vectranet.pl> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit