🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.perl
Article #860

Re: use sctrict i deklaracja my

#860
From: Michał Mosiewicz
Date: Thu, 08 Jan 1998 14:14
29 lines
2318 bytes
Waldek Grudzien wrote:

> No dobrze, ale może ja nie chcę, żeby zmienne (powiedzmy robocze), które
> wykorzystuję (deklaruję) w "części głównej programu" były widoczne w
> funkcjach (chyba, że jawnie zadeklaruję je jako globalne używając
> 'use vars qw(#tu lista moich zmiennych globalnych#)' )
> Uff - chyba naświetliłem już wystarczająco ;-) ?

Hmm, ja bym powiedział, że to jest lekko nienaturalne. Zazwyczaj
większość języków programowania posługuje się pojęciem zasięgu
zmiennych. I chyba nie istnieje język który pozwala usuwać widoczność
zmiennych przy zagnieżdżaniu. (OK, nie mówmy o prywatnych elementach
obiektów)

Wydaje mi się, że nie jest to potrzebna 'feature'. Wręcz przeciwnie, ja
bym na przykład nie chciał, żeby tak było. use vars tworzy zmienne
trochę inaczej niż my, W szczególności przy używania perl'a jako
'embedded interpreter' zmienne takie są pozostawiane w pamięci pomiędzy
kolejnymi wywołaniami interpretera. 

Natomiast, jeśli obawiasz się, że jakaś funkcja używa zmiennych
globalnych i może to powodować błędy w działaniu programu, to w trakcie
testów możesz je przykryć zagnieżdżonymi definicjami.

Michał

-- 
WWW: http://www.lodz.pdi.net/~mimo  tel: Int. Acc. Code + 48 42 148340
add: Michal Mosiewicz  *  Bugaj 66 m.54 *  95-200 Pabianice  *  POLAND
Technical Details
Message-ID: <34B4DF4C.1ADEFC@lodz.pdi.net>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!news.icm.edu.pl!uw.edu.pl!mimo.lodz.pdi.net!not-for-mail
References: <Pine.HPP.3.96.980106080208.22789B-100000@clinicom.uhc.lublin.pl> <68t9l8$odv$1@galaxy.uci.agh.edu.pl> <Pine.HPP.3.96.980106145512.25699A-100000@clinicom.uhc.lublin.pl> <68tejj$8f2$1@galaxy.uci.agh.edu.pl> <Pine.HPP.3.96.980107101037.29387A-100000@clinicom.uhc.lublin.pl> <6907db$dkd$1@galaxy.uci.agh.edu.pl> <Pine.HPP.3.96.980108073610.3985B-100000@clinicom.uhc.lublin.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!news.icm.edu.pl!uw.edu.pl!mimo.lodz.pdi.net!not-for-mail
From: Michał Mosiewicz <mimo@lodz.pdi.net>
Newsgroups: pl.comp.lang.perl
Subject: Re: use sctrict i deklaracja my
Date: Thu, 08 Jan 1998 14:14:37 +0000
Organization: (none)
Lines: 29
Message-ID: <34B4DF4C.1ADEFC@lodz.pdi.net>
References: <Pine.HPP.3.96.980106080208.22789B-100000@clinicom.uhc.lublin.pl> <68t9l8$odv$1@galaxy.uci.agh.edu.pl> <Pine.HPP.3.96.980106145512.25699A-100000@clinicom.uhc.lublin.pl> <68tejj$8f2$1@galaxy.uci.agh.edu.pl> <Pine.HPP.3.96.980107101037.29387A-100000@clinicom.uhc.lublin.pl> <6907db$dkd$1@galaxy.uci.agh.edu.pl> <Pine.HPP.3.96.980108073610.3985B-100000@clinicom.uhc.lublin.pl>
NNTP-Posting-Host: mimo.lodz.pdi.net
Mime-Version: 1.0
X-Mailer: Mozilla 4.04 [en] (X11; I; Linux 2.0.33 i586)
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit