Jeg var noget overrasket over kompressionen af Python koden, i forhold til VBScript-ASP koden..
Så jeg besluttede mig for at installere Python (fandt version 2.5.1 til Windows), for at kigge nærmere på det..
Da jeg fik gang i Python, kunne jeg få det til at virke, hvis det var en .py fil. Den accepterede ikke "<%@LANGUAGE=Python%>", og gav fejlen:
Fejltype:
Active Server Pages, ASP 0129 (0x80004005)
Scriptsproget 'Python' blev ikke fundet på serveren.
/python/test.asp, line 1
Koden til test.asp er den nedereste kode på
http://support.microsoft.com/kb/276494Da jeg kunne få Python koden fra 07/08-2007 01:50:51 til at virke, direkte i .py filen, besluttede jeg mig for at kigge nærmere på koden..
Når man ser på det, ser det lidt magisk ud.. få linier, masser af funktionalitet.. her bliver jeg så mistænksom, og nægter at tro det..
Så jeg kigger lidt på import-delen, som jo typisk importerer et eller andet namespace og funktionalitet..
Det viser sig, at magien ikke er magi, men almindelig programmering.. nemlig funktioner som returnerer typer/værdier..
Med andre ord:
Hvis man smider funktionen "henttal" i en separat fil, og inkluderer den (f.eks. <!-- #include file="navnet.asp" -->), og tilsidst bruger koden
Response.Write henttal(5,0,200,true)
vil man få samme funktionalitet/resultat som koden i 07/08-2007 01:50:51..
Efter at have "afsløret" tricket, kan jeg sige:
' VBScript i ASP er nemt, VBScript i ASP er sjovt
:-)
(Hvis man ikke forstod det sidste, plejer bauerdata at skriver "# python er nemt, python er sjovt.")
PS:
Hvis man ikke har forstået dette indlæg:
Python-koden gør bare brug af funktioner, som andre har programmeret og gjort tilgængeligt.
Funktionerne er delt op i filer, hvor filnavnet fortæller hvad filen indeholder.
Dvs., når man skriver "import random", så importerer den al indholdet af filen "random.py", som er på ialt 863 linier.
Jeg kan se, at spradebassen også importerer funktionen "pprint" fra filen "pprint.py".
Når jeg kigger på import og koden, vil jeg mene at Python koden vil bruge flere ressourcer end VBScript koden.
Jeg har dog ikke testet det, og har heller ikke værktøjerne til at teste det.
Så det må bare blive min påstand, baseret på de data jeg har fundet frem til, ved at se hvordan Python fungerer.