71104
09-04-2009, 00:29
... allora :D
presupposto: fin dall'epoca del cucco é possibile scrivere in Windows programmi "scriptabili", cioé pogrammi la cui logica sia controllata da un file di script (magari incorporato nel programma stesso, tipicamente tra le risorse) che controlla oggetti e metodi esposti dal programma nativo vero e proprio tramite una tecnologia di interoperabilitá.
non sto dicendo nulla di nuovo: se prendiamo COM/OLE come tecnologia di interoperabilitá la tecnologia che permette lo scripting dei programmi nativi é Active Scripting e, come forse saprete, é tutta roba della seconda metá degli anni '90. WSH é non un esempio, ma l'esempio di programma scriptabile; un altro esempio é Visual Basic for Applications, quello con cui si scrivevano le macro per Office (e forse si scrivono ancora, non saprei proprio visto che non ho piu Office dalla versione 2003, che ho usato pochissimo e superficialmente).
fine presupposto; ora prendiamo .NET come tecnologia di interoperabilitá e naturalmente anche come piattaforma dell'applicazione nativa che deve essere controllata dallo script. mi spiegate come ?@##0 deve fare un cristiano di programmatore a parsare un piffero di JScript che abbia accesso a degli oggetti nativi esposti, cosa che era possibilissima con una tecnologia (l'Active Scripting di cui sopra) molto piu vecchia di tutto .NET e che ora ha appena preso la via dell'estinzione??? :muro:
mi ci sto scervellando ma non riesco proprio a capire cosa offra attualmente Microsoft per lo scripting che non sia deprecato e che non sia quel casino di CodeDom che tutt'al piu compila il codice in memoria sotto forma di assembly ("assembly" non nel senso di codice macchina, intendo "assembly da GAC"; questo non é scripting.)
cercando e ricercando ho trovato un certo namespace Microsoft.VSA, dove VSA é l'acronimo di Visual Studio for Applications, che sembrava essere proprio il replacement perfetto; e invece vado a guardare e che ti trovo?
http://msdn.microsoft.com/en-us/library/microsoft.vsa.aspx
interamente deprecato -.-'
cercando invece su Google sono giunto a due risultati interessanti. il primo é un articolo su MSDN che descrive la realizzazione di Scriptpad, un programma scritto in Visual Basic.NET che permette di scrivere ed eseguire (non compilandoli ma interpretandoli) degli script in diversi linguaggi di scripting tra cui ad esempio JScript e VBScript; eccolo qua:
http://msdn.microsoft.com/en-us/library/ms974577.aspx
inutile dire che l'articolo é datato 2001 e che il programma usa VSA :muro:
peró mi sono detto che forse questo significa che siamo in una fase di transizione e che Microsoft, in attesa di presentarci la nuova tecnologia di turno, preferisce che si usi ancora VSA.
l'altro risultato interessante sono dei rumori su un certo WSH.NET, ma questi li ho trovati tutti da fonti non ufficiali (forums, Usenet...) e tutte troppo datate (tipo 2003...), quindi ho idea che oggidi questo WSH.NET si sia incarnato in Windows PowerShell; che ne pensate? sapete qualcosa di WPS? interpreta o esegue IL? nel primo caso, come fa?
e che ne pensate di tutta la questione? c'é qualcosa che mi é GRANDEMENTE sfuggito? qualche EVIDENTISSIMO namespace che non ho minimamente visto, di quelli che quando li vedi giá solo dal nome ti accendono la lampadina e ti fanno pensare "aaaaah, ecco come si faceva :D"?
:help:
presupposto: fin dall'epoca del cucco é possibile scrivere in Windows programmi "scriptabili", cioé pogrammi la cui logica sia controllata da un file di script (magari incorporato nel programma stesso, tipicamente tra le risorse) che controlla oggetti e metodi esposti dal programma nativo vero e proprio tramite una tecnologia di interoperabilitá.
non sto dicendo nulla di nuovo: se prendiamo COM/OLE come tecnologia di interoperabilitá la tecnologia che permette lo scripting dei programmi nativi é Active Scripting e, come forse saprete, é tutta roba della seconda metá degli anni '90. WSH é non un esempio, ma l'esempio di programma scriptabile; un altro esempio é Visual Basic for Applications, quello con cui si scrivevano le macro per Office (e forse si scrivono ancora, non saprei proprio visto che non ho piu Office dalla versione 2003, che ho usato pochissimo e superficialmente).
fine presupposto; ora prendiamo .NET come tecnologia di interoperabilitá e naturalmente anche come piattaforma dell'applicazione nativa che deve essere controllata dallo script. mi spiegate come ?@##0 deve fare un cristiano di programmatore a parsare un piffero di JScript che abbia accesso a degli oggetti nativi esposti, cosa che era possibilissima con una tecnologia (l'Active Scripting di cui sopra) molto piu vecchia di tutto .NET e che ora ha appena preso la via dell'estinzione??? :muro:
mi ci sto scervellando ma non riesco proprio a capire cosa offra attualmente Microsoft per lo scripting che non sia deprecato e che non sia quel casino di CodeDom che tutt'al piu compila il codice in memoria sotto forma di assembly ("assembly" non nel senso di codice macchina, intendo "assembly da GAC"; questo non é scripting.)
cercando e ricercando ho trovato un certo namespace Microsoft.VSA, dove VSA é l'acronimo di Visual Studio for Applications, che sembrava essere proprio il replacement perfetto; e invece vado a guardare e che ti trovo?
http://msdn.microsoft.com/en-us/library/microsoft.vsa.aspx
interamente deprecato -.-'
cercando invece su Google sono giunto a due risultati interessanti. il primo é un articolo su MSDN che descrive la realizzazione di Scriptpad, un programma scritto in Visual Basic.NET che permette di scrivere ed eseguire (non compilandoli ma interpretandoli) degli script in diversi linguaggi di scripting tra cui ad esempio JScript e VBScript; eccolo qua:
http://msdn.microsoft.com/en-us/library/ms974577.aspx
inutile dire che l'articolo é datato 2001 e che il programma usa VSA :muro:
peró mi sono detto che forse questo significa che siamo in una fase di transizione e che Microsoft, in attesa di presentarci la nuova tecnologia di turno, preferisce che si usi ancora VSA.
l'altro risultato interessante sono dei rumori su un certo WSH.NET, ma questi li ho trovati tutti da fonti non ufficiali (forums, Usenet...) e tutte troppo datate (tipo 2003...), quindi ho idea che oggidi questo WSH.NET si sia incarnato in Windows PowerShell; che ne pensate? sapete qualcosa di WPS? interpreta o esegue IL? nel primo caso, come fa?
e che ne pensate di tutta la questione? c'é qualcosa che mi é GRANDEMENTE sfuggito? qualche EVIDENTISSIMO namespace che non ho minimamente visto, di quelli che quando li vedi giá solo dal nome ti accendono la lampadina e ti fanno pensare "aaaaah, ecco come si faceva :D"?
:help: