🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.python
Article #28041

Re: Interpretowany czy kompilowany?

#28041
From: Rob Wolfe
Date: Mon, 16 May 2011 13:49
49 lines
2980 bytes
On 16 Maj, 09:34, zbro...@tlen.pl wrote:
> On 15.05.2011 19:23, Rob Wolfe wrote:
>
> > Jacek Czerwinski<x...@y.z.pl>  writes:
> >> Dynamiczne typowanie na pewno jest wygodne (i to bardzo) na etapie
> >> pierwszego' pisania, ale refactoringu to horror.
>
> > Usunięcie błędów kompilacji nie dowodzi niczego. Ogarnięcie kodu
> > w sensie zrozumienia meritum w językach statycznie typowanych bywa
> > strasznie trudne z powodu niesamowitego rozdęcia (częsty przypadek w
> > Javie).
>
> Masz rację i nie masz ;)
> Oczywiście brak błędów kompilacji w żaden sposób nie dowodzi że kod
> jesgt poprawny.

Otoz to.

> Niemniej przy dużym refaktoringu pozwala wyłapać
> oczywiste błędy. Jeśli kompilator krzyczy że jest niezgodność typów to
> nie ma bata, coś musi być spieprzone.

Oczywiste bledy w Pythonie mozna wylapac rownie latwo.

> W pythonie wszystko pozornie zabangla bardzo ładnie, tylko czasami
> będziemy się dowiadywać, że "list object has no attribute keys" lub coś
> podobnego ;)

Nic podobnego. Tego typu proste bledy sa do wylapania uzywajac
statycznej analizy bez zadnego problemu.

$ cat test.py
lst = []
lst.keys()
$ pylint -E test.py
************* Module test
E:  2: Instance of 'list' has no 'keys' member

>
> Bardzo lubię pythona za łatwość w pisaniu kodu, ale czasami przydałaby
> się możliwość właczenia sztywniejszej kontroli kodu. (W erlangu jest coś
> podobnego, choć osobiście z tego nie jeszcze korzystałem).

Statyczna analiza, ogarniecie tematu oraz testy, testy, testy...
to jest doskonale polaczenie.
Chyba ze dwa pokolenia programistow musza wyginac,
aby przestala obowiazywac zlota zasada: "it compiles, ship it!". ;)

RW
Technical Details
Message-ID: <0601cb5b-befa-46ba-9d1c-f105c81369fe@r35g2000prj.googlegroups.com>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.glorb.com!postnews.google.com!r35g2000prj.googlegroups.com!not-for-mail
References: <iqmlha$r29$1@news.onet.pl> <4dcee603$1$2437$65785112@news.neostrada.pl> <iqo0j1$g9u$1@news.onet.pl> <87boz3anea.fsf@smsnet.pl> <iqqk2o$oh7$1@news.onet.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.glorb.com!postnews.google.com!r35g2000prj.googlegroups.com!not-for-mail
From: Rob Wolfe <rw@smsnet.pl>
Newsgroups: pl.comp.lang.python
Subject: Re: Interpretowany czy kompilowany?
Date: Mon, 16 May 2011 06:49:46 -0700 (PDT)
Organization: http://groups.google.com
Lines: 56
Message-ID: <0601cb5b-befa-46ba-9d1c-f105c81369fe@r35g2000prj.googlegroups.com>
References: <iqmlha$r29$1@news.onet.pl> <4dcee603$1$2437$65785112@news.neostrada.pl> <iqo0j1$g9u$1@news.onet.pl> <87boz3anea.fsf@smsnet.pl> <iqqk2o$oh7$1@news.onet.pl>
NNTP-Posting-Host: 78.133.233.211
Mime-Version: 1.0
X-Trace: posting.google.com 1305553787 17894 127.0.0.1 (16 May 2011 13:49:47 GMT)
X-Complaints-To: groups-abuse@google.com
NNTP-Posting-Date: Mon, 16 May 2011 13:49:47 +0000 (UTC)
Complaints-To: groups-abuse@google.com
Injection-Info: r35g2000prj.googlegroups.com; posting-host=78.133.233.211; posting-account=Kl85yQoAAACAhtXaf_cPVYWRBT7UPb10
User-Agent: G2/1.0
X-HTTP-UserAgent: Mozilla/5.0 (Windows NT 5.1) AppleWebKit/534.24 (KHTML, like Gecko) Chrome/11.0.696.65 Safari/534.24,gzip(gfe)
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit