Article View: pl.comp.objects
Article #16770Re: Groovy
From: ethouris
Date: Tue, 15 May 2007 21:19
Date: Tue, 15 May 2007 21:19
142 lines
7506 bytes
7506 bytes
On 11 Maj, 19:27, "Adam Karpierz" <karpi...@NOOOOSPAAAAMpython.pl>
wrote:
> Uwazam jezyki general purpose za najgorsze zjawisko i najgorszy
> syf (rowniez mentalny a nie tylko techniczny) dzisiejszej informatyki.
> Bierze sie on oczywiscie z kilku przyczyn z ktorych jednak jest zwykla
> neiwiedza i zasklepienie sie w jednym jedynym np. C++ czy Javie
Języki programowania nie są tworzone po to, żeby z kimś walczyć (no,
powiedzmy że z Javą była taka próba, ale średnio udana), tylko po to,
żeby dostarczyć ludziom narzędzie do tworzenia oprogramowania pasujące
do odpowiednich zastosowań. Określenie "general purpose" jest używane
od dawna i nie oznacza bynajmniej tego, że w tym języku można robić
wszystko, tylko że język nie jest celowo specjalizowany do określonej
dziedziny.
> Nazwanei C++ czy Javy jezykiem 'general purpose' wywoluje u mnei
> skurcze zoladka . Nie tylko ze smiechu.
Nie widziałem jeszcze, jak ktoś z niewiedzy dostaje skurczów żołądka,
ale może ty jesteś tym najbardziej beznadziejnym przypadkiem.
> Niech mi Pan laskawie wytlumaczy co to w ogole za chore
> okreslenie : general purpose language
> To term jest chory chory _w zalozeniu_ !
Jeśli rozumieć go jako "język do wszystkich możliwych zastosowań", to
owszem, zgoda. Ale to nie jest język do wszystkich możliwych
zastosowań, tylko język ogólnego przeznaczenia, to znaczy, że język
nie jest w założeniu ograniczony do określonej dziedziny. To, czy
istnieje wsparcie dla tego języka dla faktycznie każdej dziedziny, to
już osobna sprawa. Najczęściej nie istnieje, więc każdy język ogólnego
przeznaczenia też zwykle podlega określonej specjalizacji - ale ta
specjalizacja nie jest związana z samym językiem, lecz bardziej z jego
implementacją.
> Karmienie mlodziey programistycznej takimi pierdolami powoduje
> najgorsze z mozliwych skutki.
Szczególnie, jak się im nie wyjaśnia, co naprawdę oznacza to
określenie. Jak na twoim zresztą przykładzie widać, nie tylko
młodzieży.
> Mianowicie slepa wiare ze poznanie _tylko_ C++ , Javy, C#, Pythona
> itp (sobie prosze wygrac) _wystarcza_ aby byc spokojnym ze w tym jezyku
> zrobi sie _wszytsko_. Czyli zdobylismy zlotego graala a reszta to syf
> I robi sie.
Zgadza się. Ale nie ma się czym specjalnie przejmować - życie szybko
weryfikuje ten pogląd.
> W C++ sie 'skleja' componenty COM
> W Perlu sie pisze aplikacje 'obiektowe'.
> W Tcl pisze sie 'numeryke' w stylu:
> proc radius {x y} {
> set r [expr sqrt($x * $x + $y * $y)]
> return $r}
Zgadza się - jest to faktycznie zestaw najbardziej bezsensownych
zastosowań podanych języków. Co ciekawe, przykład w Tcl-u chyba celowo
napisałeś tak, żeby wyglądał na "bez głowy" (nb. nawet nie wiem, czy
to się skompiluje i czy expr na pewno sobie skleja argumenty
spacjami).
> Wszystko oczywiscie w tym _jednym wlasciwiem_ jezyku
> No bo przeciez to general purpose i taki wypas !
> Tak tak. Javy to rowniez tyczy.
Wyjątkowo się zgodzę.
> Wyobraza Pan sobie prace prace w COM bez VB ?
> Bo ja nie.
To fakt - COM wyglądał od początku na przeznaczone specjalnie dla VB.
> _Cale szczescie_ ze tu wyboru nie bylo na poczatku
> bo by ludzie zaczeli sklejac COMy w C++ czy Tcl
W Tcl-u to jeszcze na szczęście nie taka tragedia - wszystko robi się
prostymi komendami (w podobnym stylu co [incr Tcl]). Choćby już dzięki
temu, że Tcl natywnie używa unikodu i nie ma problemu z konwersjami
stringów, jak w C++. (Osobną sprawą jest jednak kwestia, dlaczego nie
dorobiono w C++ możliwości przekazywania L"string" jako BSTR).
> A owszem robia to - tragedia. - no ale przeciez
> C++ to _general purpose_ !.
Nie do końca się zgodzę - to nie jest kwestia tego, że COM nie pasuje
do C++, tylko tego, że nie zrobiono do tego sensownego interfejsu dla C
++. To jest wyłącznie wynik lenistwa i niedouczenia ludzi z
Microsoftu, a nie problem C++.
> Inne jezyki sa albo zbyt prymitywne czy 'zakrecone'
> (Tcl, Perl)
Tcl jest prymitywny, czy zakręcony (bo że Perl jest jedno i drugie
jednocześnie, to niestety prawda)?
> a inne staja sie zbyt skomplikowane
> (Ruby, Groovy).
Czy Groovy jest skomplikowany - zależy dla kogo. Odnoszę wrażenie, że
dla znających Javę specjalnie skomplikowany nie będzie, acz jest
skomplikowany w ogólności.
> Widzi Pan lepszego kandydata ? Chetnie uslysze.
Poza tym nie widziałbym raczej Grubego w postaci "general purpose glue
language" :)
> > Zgadza sie. Python jest w tym przypadku za wypasiony, za skomplikowany.
> > Smalltalk byl znacznie bardziej elegancki i prosty (ale nie nadawal sie do
> > sklejania).
>
> Panie !. Ratunku ! Jesli Python jest bardziej skomplikowany
> od Smalltalka to ja naprawde wysiadam :(
Ja nie wysiadam - od Smalltalka bardziej skomplikowana jest większość
dzisiaj używanych języków. Python nie jest tu wyjątkiem, acz nie
jakimś specjalnie wyróżniającym się.
> Wlasnie np uznanie sie (dosc jednostronnie i samozwanczo)
> za platforme jezyka C++ uwazam za jedna z najwiekszych
> pomylek historii jezykow.
Od kiedy C++ jest jakąkolwiek platformą?
> Rowniez uznanie sie za jedena sluszna platforne Jave.
Zaraz, to o jakiej właściwie platformie mówisz?
> Dlatego moim faworytem jest podejscie .NETowe
> Uwazam ze spelnielo sie wreszcie jednoz moich
> marzen w sensie srodowiska programistycznego
> (choc to zaledwie mala czesc moich marzen faktycznych)
> i mam nadzieje ze .NET (nie nie ! nei samo C#)
> wygra z Java. Ku dobru ogolnemu.
Szczerze mówiąc, też bym był za tym, żeby wygrało - ale niestety jak
na razie jest za słabe. Ale nie wiadomo, co się stanie w przyszłości.
Niektórzy zwracają uwagę, że akurat platforma .NET ma potencjalnie
lepsze możliwości optymalizacji, niż natywna kompilacja. Ale to na
razie tylko potencjał.
Technical Details
Message-ID:
<1179263978.312135.107870@q75g2000hsh.googlegroups.com>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!mat.uni.torun.pl!news.man.torun.pl!newsfeed.pionier.net.pl!news-fra1.dfn.de!newsfeed.ision.net!newsfeed2.easynews.net!ision!newsfeed.freenet.de!newspeer1.nwr.nac.net!border2.nntp.dca.giganews.com!nntp.giganews.com!out02a.usenetserver.com!news.usenetserver.com!in02.usenetserver.com!news.usenetserver.com!postnews.google.com!q75g2000hsh.googlegroups.com!not-for-mailReferences:
<f1tdl6$2s4$1@inews.gazeta.pl><f1to5e$8ae$1@inews.gazeta.pl> <f1tsck$hq4$1@inews.gazeta.pl> <f1u62k$8cl$1@inews.gazeta.pl> <f1ukb1$rsd$1@inews.gazeta.pl> <f1ur1i$pg$1@inews.gazeta.pl> <f21m8c$cbd$1@inews.gazeta.pl> <f2292b$20f$1@inews.gazeta.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!mat.uni.torun.pl!news.man.torun.pl!newsfeed.pionier.net.pl!news-fra1.dfn.de!newsfeed.ision.net!newsfeed2.easynews.net!ision!newsfeed.freenet.de!newspeer1.nwr.nac.net!border2.nntp.dca.giganews.com!nntp.giganews.com!out02a.usenetserver.com!news.usenetserver.com!in02.usenetserver.com!news.usenetserver.com!postnews.google.com!q75g2000hsh.googlegroups.com!not-for-mail From: ethouris <ethouris@gmail.com> Newsgroups: pl.comp.objects Subject: Re: Groovy Date: 15 May 2007 14:19:38 -0700 Organization: http://groups.google.com Lines: 159 Message-ID: <1179263978.312135.107870@q75g2000hsh.googlegroups.com> References: <f1tdl6$2s4$1@inews.gazeta.pl><f1to5e$8ae$1@inews.gazeta.pl> <f1tsck$hq4$1@inews.gazeta.pl> <f1u62k$8cl$1@inews.gazeta.pl> <f1ukb1$rsd$1@inews.gazeta.pl> <f1ur1i$pg$1@inews.gazeta.pl> <f21m8c$cbd$1@inews.gazeta.pl> <f2292b$20f$1@inews.gazeta.pl> NNTP-Posting-Host: 81.219.244.75 Mime-Version: 1.0 X-Trace: posting.google.com 1179263978 15509 127.0.0.1 (15 May 2007 21:19:38 GMT) X-Complaints-To: groups-abuse@google.com NNTP-Posting-Date: Tue, 15 May 2007 21:19:38 +0000 (UTC) In-Reply-To: <f2292b$20f$1@inews.gazeta.pl> User-Agent: G2/1.0 X-HTTP-UserAgent: Opera/9.10 (Windows NT 5.0; U; pl),gzip(gfe),gzip(gfe) Complaints-To: groups-abuse@google.com Injection-Info: q75g2000hsh.googlegroups.com; posting-host=81.219.244.75; posting-account=W6788A0AAADjfLYufIDScQB28tLT5-6D Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit