Newsgroup: it.comp.lang.perl
Titolo: quesito

Sapreste dirmi cosa fa effettivamente questa riga ?
    @query = reverse sort numerically @query;
con la funzione numerically che è la seguente :
    sub numerically { length($a) <=> length($b) }
Grazie e ciao
--
"L'unica vera autorità deriva dalla conoscenza,
non dalla posizione."
Gazza

     sub numerically { length($a) <=> length($b) }
ordina il contenuto di @query (sort) in base alla lunghezza
delle stringhe (numerically), poi rovescia quanto ha ordinato
(reverse) e lo rimette in @query.
tanto per fare un esempio:
    @query = qw( Roma Milano Bologna Lecce );
    sub numerically { length($a) <=> length($b) }
    @query = reverse sort numerically @query;
    print join ', ', @query;
ritorna:
    Bologna, Milano, Lecce, Roma
dalla stringa più lunga a quella più corta.
potrebbe anche essere scritto così e andare più veloce:
    sub numerically_rev { length($b) <=> length($a) }
    @query = sort numerically_rev @query;
o ancora più veloce usando una trasformata di Schwartz:
    @query =
        map { $_->[0] }
        sort { $b->[1] cmp $a->[1] }
        map { [$_, length($_)] }
        @query;
hmmmm... immagino già la tua prossima domanda ;-)
cheers,
Aldo
__END__
$_=q,just perl,,s, , another ,,s,$, hacker,,print;

Mi aggangio qui approfittando dell'esperienza con perl su Win32 che 
Aldo Calpini senz'altro ha :-)
Dovrei scrivere qualche script per gestire un IIS e non vorrei proprio 
doverlo fare in VBS :-)
E' qualche giorno, quindi, che sto cercando un modo per manipolare in 
perl le configurazioni di IIS5, che sono archiviate in un 
"metadatabase" come oggetti ADSI (Microsoft Active Directory Service 
Interfaces).
Purtroppo non ho ancora trovato nulla di specifico, ma devo ammettere 
che di perl sotto Win32 (e di Win32 in generale) non sono troppo 
esperto, oltretutto lavorare con Microsoft mi fa innervosire molto e la 
mia efficienza e le mie capacita di ricerca diminuiscono enormemente ;-)
Quindi qualcuno sa se esiste uno modulo per manipolare gli oggetti del 
metadb di IIS o in generale deglio oggetti ADSI? oppure un modulo che 
usa oggetti simili da provare a cambiare un poco o da usare come base 
per un modulo ad hoc? se non ci fosse nulla di specifico e' possibile 
agganciarsi alle funzioni di gestione di tali oggetti presenti in 
qualche esoterica dll? infine qualcuno ha affrontato un problema 
analogo?
-- 
Saluti,
Giancarlo

 ha scritto nel messaggio
news:ag473c$7coo$1...@stargate1.inet.it...


 hmmmm... immagino già la tua prossima domanda ;-)
già.... :-)
Ma  a parte sapere cos' questa trasformata, che percentuale di velocità si
guadagna (se è semplice calcolarla...)?


 analogo?
Win32::OLE č il modulo che ti serve, e il codice dovrebbe iniziare con:
    use Win32::OLE;
    my $IIS = Win32::OLE->GetObject('IIS://localhost');
...e poi continuare a piacere :-)
il sito di riferimento per questo tipo di cose č quello di Dave Roth
http://roth.net/
, lě trovi molti script di esempio che usano ADSI
(il sito, mentre sto scrivendo, č giů, ma dovrebbe ricomparire nei
prossimi giorni).


 ...e poi continuare a piacere :-)
denkiu ;-)
-- 
Saluti,
Giancarlo

 doverlo fare in VBS :-)
Agliagliagliaiiiiiiii !!!
Cosa leggono i miei occhi!!!
Stai chiedendo una cosa che io ho fatto da novembre 2001 a gennaio 2002:
creare procedure in Perl per gestire IIS5 e cosucce varie in Win2000 !!!
TRE mesi di ricerche e esperimenti!!!
Alla fine ho creato un sistema che mi consente di aggiungere caselle di
posta, creare utenti, creare record nel DNS, creare siti WWW e FTP, gestire
cartelle, permessi, quota e tutto quanto possa servire per un vero e proprio
servizio di hosting pubblico, il tutto senza nemmeno mettere le mani sul
server! Abilito un account e emetto addirittura la fattura zippata e spedita
con un solo click!
Questo te lo dico per farti sapere che SI PUO' FARE, ma non è facile.
All'inizio ho cercato anche io in rete qualcosa di "già fatto", ma in certi
casi nessuno sa cosa veramente ti serve, quindi non puoi mai trovare la
soluzione "adatta proprio al caso tuo"... devi spremere un po' la mente e
creare quello che ti serve con le tue mani.
Ciononostante sono ben disposto a darti qualche suggerimento... ma data la
mole di lavoro che c'è dietro non ti aspettare che ti dia la soluzione
"chiavi in mano".... quello che è servito a me non sarebbe lo stesso che
serve a te: sono soluzioni TROPPO personalizzate.
Contattami pure, se vuoi, a <info @ soundfonts .it> e ti posso spedire
qualche file utile.
Ti anticipo solamente che io sono ricorso a soluzioni "ibride": script Perl,
eseguibili DOS e eseguibili VBS.
Non per fare pubblicità, ma ti voglio far "vedere" di cosa parlo:
http://www.2piu2.it
 l'amministratore e "creatore" di quel sistema sono io.
(anche se avrei potuto fare qualcosa di piu'... ma questa è un'altra
storia...)
Ciao,
Guido.