🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

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

Re: Ciemna strona C++

#268089
From: Seweryn Habdank-Wojewódzki
Date: Fri, 14 Dec 2007 19:36
58 lines
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-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> <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