🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.objects
Article #15374

Re: Generyki w Javie [tylko dla ludzi o mocnych nerwach]

#15374
From: Sektor van Skijlen
Date: Fri, 08 Sep 2006 16:57
67 lines
3890 bytes
Dnia Fri, 08 Sep 2006 11:46:03 -0500, A.L. skrobie:
> On Fri, 8 Sep 2006 16:35:52 +0000 (UTC), Sektor van Skijlen
> <ethouris@guess.if.gmail.com.is.valid.or.invalid> wrote:

> >Dnia Fri, 8 Sep 2006 11:43:40 +0200, Adam Karpierz skrobie:
> >> > W C++ dostajemy "szablon funkcji", z ktorego kompilator moze nam usluznie
> >> > wygenerowac konkretna funkcje (ale nie wygeneruje, np. kiedy napisalismy
> >> > specjalna wersje z reki).
> >
> >> Dokladnie !.
> >> Dlatego chocby nie wiem co sie dzialo to C++ templates w swej istocie
> >> zawsze pozostana czyms w rodzaju makrogeneratora.
> >
> >Ok - zdefiniuj zatem, czym jest makrogenerator. I przedstaw, jak byś napisał
> >makrogenerator, który generuje C z C++, gdzie używa się czegoś nawet tak
> >prostego, jak boost::mpl.

> Panie Sektor, a czy Pan wie co to jest "makrogenerator"?... Widzial
> Pan kiedys na przyklad M4? Jak Pan nie widzial, to niech Pan
> zobaczy. Kazdy UNIX ma. Cygwin tez. Otoz spiesze Panu doneisc ze
> dawno temu napisalem w M4 translator jezyka do opisu rownan
> rozniczkowych ktory to M4 (okolo 600 linii tegoz) translowal ow
> specjalizowany jezyk do Fortranu. 

Aleś mi pan zaimponował, doprawdy!

Oczywiście, że można definiować języki i "kompilatory" do nich w postaci
definicji dla makrogeneratora M4 - choć moim skromnym zdaniem znacznie
prościej DSL-e robi się w Tcl-u.

Ale to nie ma nic do tematu - napisz pan makrogenerator (albo zaproponuj pan,
jak to napisać), który "rozwinie" wzorce w C++, to wtedy będziemy wiedzieli, o
czym rozmawiamy.

> Wiec neich sie Pan douczy co to jest "makrogenerator" jak rowneiz
> dowie sie ze wiekszosc z nich (M4, ML/1, GPM) jest rownowazna
> Maszynie Turinga, a wiec mozna w nich robic zupelnie dowolne rzeczy.

To wciąż o niczym nie świadczy.

Makrogenerator, który rozwija się w specjalizacje to można sobie do Javy
napisać. 

> I ze "makrogenerator" to nei oznacza automatycznei "makrogenerator
> jezyka C", bo ten to rzeczywiscie nic nei moze.

Ojejejejejej...

Panie Andrzeju, wszystkich rozumów jeszcze pan na szczęście nie zjadłeś, a
znaojomość sposobu konkretyzacji wzorców zajmuje wśród nich chlubną pozycję.

Mała kwestia do rozważenia:

Załóżmy, że mamy klasę: template<class T1, class T2> class is_same_type ...

Jeśli napiszę np.:

is_same_type<int,float>::value

czy to znaczy, że od tej pory istnieje klasa is_same_type<int,float> ?


-- 
//  _    ___         Michal "Sektor" Malecki <sektor(whirl)kis.p.lodz.pl>
\\ L_ |/ `|  /^\ ,()                         <ethouris(O)gmail.com>
// \_ |\  \/ \_/ /\ C++ bez cholesterolu: http://www.intercon.pl/~sektor/cbx
"I am allergic to Java because programming in Java reminds me casting spells"
Technical Details
Message-ID: <eds7e8$j4g$11@kujawiak.man.lodz.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.man.lodz.pl!not-for-mail
References: <edbn1a$80t$1@atlantis.news.tpi.pl> <edcmgq$kip$1@inews.gazeta.pl> <edcq4g$lbv$1@nemesis.news.tpi.pl> <edre0d$7dt$1@inews.gazeta.pl> <eds658$j4g$7@kujawiak.man.lodz.pl> <v773g2dfsg4la37dqi1b25nrh3n2o2r3ug@4ax.com>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.man.lodz.pl!not-for-mail
From: Sektor van Skijlen <ethouris@guess.if.gmail.com.is.valid.or.invalid>
Newsgroups: pl.comp.objects
Subject: Re: Generyki w Javie [tylko dla ludzi o mocnych nerwach]
Date: Fri, 8 Sep 2006 16:57:44 +0000 (UTC)
Organization: LODMAN - Metropolitan Area Network in LODZ, Poland
Lines: 67
Sender: Michal Malecki <sektor@zly.kis.p.lodz.pl>
Message-ID: <eds7e8$j4g$11@kujawiak.man.lodz.pl>
References: <edbn1a$80t$1@atlantis.news.tpi.pl> <edcmgq$kip$1@inews.gazeta.pl> <edcq4g$lbv$1@nemesis.news.tpi.pl> <edre0d$7dt$1@inews.gazeta.pl> <eds658$j4g$7@kujawiak.man.lodz.pl> <v773g2dfsg4la37dqi1b25nrh3n2o2r3ug@4ax.com>
NNTP-Posting-Host: zly.kis.p.lodz.pl
Mime-Version: 1.0
X-Trace: kujawiak.man.lodz.pl 1157734664 19600 212.191.89.2 (8 Sep 2006 16:57:44 GMT)
X-Complaints-To: abuse@man.lodz.pl
NNTP-Posting-Date: Fri, 8 Sep 2006 16:57:44 +0000 (UTC)
User-Agent: tin/1.6.2-20030910 ("Pabbay") (UNIX) (SunOS/5.9 (sun4u))
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit