Article View: pl.comp.lang.c
Article #268089Re: Ciemna strona C++
From: Seweryn Habdank-Wojewódzki
Date: Fri, 14 Dec 2007 19:36
Date: Fri, 14 Dec 2007 19:36
58 lines
3534 bytes
3534 bytes
Witam Marcin ?Qrczak? Kowalczyk wrote: >> Używać to nie znaczy rozumieć 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". > > To wcale nie jest moje zdanie. OK. Wymieniłeś tyle zadań parsowania, że uznałem, że też widzisz w tym zadaniu dużą złożoność. > Parsowanie z reguły jest prostą sprawą, a do tego od dawna bardzo dobrze > zbadaną. Rozumiem, że na chwilę uciekło twojej uwadze parsowanie jako zadanie ogólne. Rozumiem, że wszyscy chcą udowodnić, że każdy język łatwo się parsuje, a tylko C C++ i Perl są czarnymi owcami, z czego C++ jest jeszcze wilkiem i kozą. > Nie trzeba wcale używać gotowych narzędzi, a już zwłaszcza nie > trzeba używać narzędzi, których się nie rozumie. Słusznie. > Parser łatwo pisać > ręcznie w dowolnym języku ogólnego przeznaczenia, czeka nas najwyżej > trochę monotonnej roboty. Tak. > Tylko nieliczne składnie (C, C++, Perl) wymagają nadzwyczajnego > czarowania przy parsowaniu. Przyjżyj się projektom automatycznych translatorów, które próbują parsować zdania w języku np. niemieckim i zamieniać na angielski. Zobacz jakie to jest trudne zadanie. Zacznij od zapisu składni w postaci EBNF ;-). Największe sukcesy w tej materii jak na razie odnosi Google Translate. Odnosi je właśnie dzięki temu, że do zadania parsowania (i nie tylko) podchodzi w specyficzny sposób. Stosuje właśnie różnorakie wyszukiwanie wzorców w zdaniach i próbuje je odbudowywać na bazie znanych już wzorców w języku docelowym. W szczególności, np. język polski nie preferuje powtórzeń, to powoduje, że kolejne parsowane i przekształcane zdanie zależy od poprzedniego i nie tylko. A co z idiomami lub slangiem? Oczywiście rozumiem, że można się ograniczać do parsowania cudów nie widów mając gotowce EBNF pobrane z sieci. To jest wtedy łatwa lub nie w zależności od tego jaki tutek jest dostępny dla generatora parsera. W każdym razie parsowanie C++ w stosunku do ogólnych zadań parsowania to jest pikuś. -- |\/\/| Seweryn Habdank-Wojewódzki \/\/
Technical Details
Message-ID:
<fjul2r$90u$1@news.vectranet.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.vectranet.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> <1197640480.22171.5.camel@qrnik>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.vectranet.pl!not-for-mail From: Seweryn Habdank-Wojewódzki <shw_mail@wp.pl> Newsgroups: pl.comp.lang.c Subject: Re: Ciemna strona C++ Date: Fri, 14 Dec 2007 20:36:21 +0100 Organization: VectraNET - http://www.vectranet.pl Lines: 59 Message-ID: <fjul2r$90u$1@news.vectranet.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> <1197640480.22171.5.camel@qrnik> Reply-To: shw_mail@wp.pl NNTP-Posting-Host: 078088193244.osw.vectranet.pl Mime-Version: 1.0 X-Trace: news.vectranet.pl 1197660060 9246 78.88.193.244 (14 Dec 2007 19:21:00 GMT) X-Complaints-To: usenet@news.vectranet.pl NNTP-Posting-Date: Fri, 14 Dec 2007 19:21:00 +0000 (UTC) User-Agent: KNode/0.10.5 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit