Schrift
[thread]6341[/thread]

abgedrehtes problem mit switch: oder bin ich blind? (Seite 5)



<< |< 1 2 3 4 5 6 7 8 >| >> 72 Einträge, 8 Seiten
Gast Gast
 2004-07-05 16:51
#83470 #83470
[quote=Taulmarill,05.07.2004, 14:32]die unterschiede zwischen normalen sub's und BEGIN, INIT, CHECK und END blöcken sind unter folgendem link detailiert nachzulesen

http://www.perldoc.com/perl5.8....and-END

oder einfach perldoc perlmod :D[/quote]
Also nun aber wirklich ...
zumindest bis Perl 5.6.x hat die 'offizielle' Perl-Doku, jeden dieser Blöcke als 'Subroutine' bezeichnet (siehe weiter oben).
Daneben denke ich klargestellt zu haben daß jeder dieser Blöcke 'genau wie eine Subroutine' compiliert wird.
Dabei ging es um das Verhalten eines BEGIN Blocks unter mod_perl - das war alles.
Gast Gast
 2004-07-05 17:01
#83471 #83471
[quote=sri,05.07.2004, 14:30]ich habe leider mal wieder absolut keine Ahnung was du uns damit eigendlich sagen wolltest[/quote]
Nichts - ich plaudere einfach nur so ganz nichtsagend vor mich hin ...
sri
 2004-07-05 17:17
#83472 #83472
User since
2004-01-29
828 Artikel
BenutzerIn
[Homepage] [default_avatar]
[quote=Dieter,05.07.2004, 14:43][quote=sri,05.07.2004, 14:30]Deine Beispiele sind ja ok, mal abgesehen davon das persistenz was anderes ist[/quote]
Dann kläre mich doch bitte auf - was ist Persistenz?[/quote]
Einfach ausgedrückt, Persistenz bedeutet das eine Variable ihren Inhalt auch über mehrere Programmabläufe hinweg behält. siehe Storable, Data::Dumper, YAML etc.
Taulmarill
 2004-07-05 17:30
#83473 #83473
User since
2004-02-19
1750 Artikel
BenutzerIn

user image
[quote=Dieter,05.07.2004, 14:51][quote=Taulmarill,05.07.2004, 14:32]die unterschiede zwischen normalen sub's und BEGIN, INIT, CHECK und END blöcken sind unter folgendem link detailiert nachzulesen

http://www.perldoc.com/perl5.8....and-END

oder einfach perldoc perlmod :D[/quote]
Also nun aber wirklich ...
zumindest bis Perl 5.6.x hat die 'offizielle' Perl-Doku, jeden dieser Blöcke als 'Subroutine' bezeichnet (siehe weiter oben).
Daneben denke ich klargestellt zu haben daß jeder dieser Blöcke 'genau wie eine Subroutine' compiliert wird.
Dabei ging es um das Verhalten eines BEGIN Blocks unter mod_perl - das war alles.[/quote]
hm, also wenn du mal auf die links klicken würdest, könnt ich mir einiges an tipparbeit erspaaren.
in der 5.8.4 doku wurde genau der satz auf den du dich beziehst an entsprechender stelle geändert, und zwar weil er (der satz) halt so nicht richitg ist.
hier wird immer von "code block" anstatt von "subroutine" gesprochen.
$_=unpack"B*",~pack"H*",$_ and y&1|0& |#&&print"$_\n"for@.=qw BFA2F7C39139F45F78
0A28104594444504400 0A2F107D54447DE7800 0A2110453444450500 73CF1045138445F4800 0
F3EF2044E3D17DE 8A08A0451412411 F3CF207DF41C79E 820A20451412414 83E93C4513D17D2B
sri
 2004-07-05 17:31
#83474 #83474
User since
2004-01-29
828 Artikel
BenutzerIn
[Homepage] [default_avatar]
[quote=Dieter,05.07.2004, 14:51]Daneben denke ich klargestellt zu haben daß jeder dieser Blöcke 'genau wie eine Subroutine' compiliert wird.[/quote]
Das ist Ansichtssache, der Block wird in einem string eval ausgeführt... ;)\n\n

<!--EDIT|sri|1089034322-->
Gast Gast
 2004-07-05 18:40
#83475 #83475
[quote=sri,05.07.2004, 15:17][quote=Dieter,05.07.2004, 14:43][quote=sri,05.07.2004, 14:30]Deine Beispiele sind ja ok, mal abgesehen davon das persistenz was anderes ist[/quote]
Dann kläre mich doch bitte auf - was ist Persistenz?[/quote]
Einfach ausgedrückt, Persistenz bedeutet das eine Variable ihren Inhalt auch über mehrere Programmabläufe hinweg behält. siehe Storable, Data::Dumper, YAML etc.[/quote]
Habe ich jemals etwas anderes behauptet? tztz ...
Crian
 2004-07-05 20:52
#83476 #83476
User since
2003-08-04
5873 Artikel
ModeratorIn
[Homepage]
user image
WARNUNG

Bitte nicht aufregen... vielleicht machen beide Seiten mal eine Weile Pause in diesem Thread? Oder liebt ihr es, Euch zu kabbeln? ;-)


peace love and happiness :p
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite
ptk
 2004-07-05 20:54
#83477 #83477
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
[quote=Dieter,05.07.2004, 14:11]Es steht außer Frage das aus einem BEGIN Block heraus die Varibalen des Hauptprogramms nicht erreichbar sind - daher der Name BEGIN.[/quote]
Natuerlich kann man in einem BEGIN-Block auch auf globale Variablen zugreifen:
Code: (dl )
1
2
3
4
BEGIN {
$xxx = 1234;
}
warn $xxx;

ergibt erwartungsgemaess 1234.

Es ist hoechstens etwas irritierend, wenn man
Code: (dl )
1
2
3
4
$xxx = 1234;
BEGIN {
warn $xxx;
}

schreibt und nicht das erwartete Ergebnis bekommt.
pq
 2004-07-05 21:26
#83478 #83478
User since
2003-08-04
12209 Artikel
Admin1
[Homepage]
user image
[quote=ptk,05.07.2004, 18:54]
Natuerlich kann man in einem BEGIN-Block auch auf globale Variablen zugreifen:[/quote]
sogar auf lexikalische:
Code: (dl )
1
2
3
4
5
my $x;
BEGIN {
 $x = 1234;
}
warn $x;
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
ptk
 2004-07-05 22:15
#83479 #83479
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
[quote=steffenw,02.07.2004, 22:10]Was man in einen BEGIN-Block schreibt, was macht mod_perl dann, nur einmal oder immer wieder?[/quote]
Laut "perldoc mod_perl" macht er es genau einmal pro Prozess (entweder im Parentprozess oder im Kindprozess). D.h. der BEGIN-Code wird NICHT bei jedem Request ausgefuehrt.
<< |< 1 2 3 4 5 6 7 8 >| >> 72 Einträge, 8 Seiten



View all threads created 2004-06-16 21:56.