<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Questo articolo è apparso originariamente su JMPer Cable, Numero 26, inverno 2010
di Joseph Morgan Joseph Morgan , Sviluppatore software senior JMP, SAS
Nota: Il JSL in questo articolo è compatibile con JMP 9 e versioni successive.Di conseguenza, il codice potrebbe non riflettere la potenza di JSL introdotta con le versioni di JMP rilasciate successivamente a JMP 9.
introduzione
Molti programmatori JMP Scripting Language (JSL) principianti e intermedi non sono consapevoli del potere di astrazione disponibile dalle espressioni JSL. Tali costrutti di metaprogrammazione non sono sempre disponibili nei linguaggi di programmazione ampiamente utilizzati come il C++, ma si trovano comunemente nei linguaggi di programmazione funzionale come il Lisp.
A quanto pare, tali costrutti sono particolarmente utili quando l'applicazione da sviluppare è complessa. Facilitano l'astrazione del processo. Robert Sebesta (1999) descrive l’astrazione:
“La capacità di definire e quindi utilizzare strutture o operazioni complicate in modi che consentono di ignorare molti dettagli. Il grado di astrazione consentito e la naturalezza della sua espressione sono importanti”.
Questo articolo tenta di svelare il mistero che circonda le funzioni di gestione delle espressioni JSL e di mostrare come tali funzioni possano essere utilizzate per risolvere sfide non banali di programmazione JSL.
Commenti conclusivi
Lo scopo principale di questi esempi è illustrare l'uso di diverse funzioni di gestione delle espressioni. Uno scopo secondario è quello di evidenziare errori comuni e incomprensioni che i programmatori JSL talvolta riscontrano quando tentano di utilizzare queste funzioni. Speriamo di aver raggiunto in parte questo obiettivo.
Riferimenti
SAS Institute, Inc. (2008), Guida allo scripting JMP, Cary, Carolina del Nord: SAS Institute, Inc.
Sebesta, Robert M. (1999), Concetti dei linguaggi di programmazione, Addison Wesley, Reading, MA.
John,
Joseph Morgan Joseph Morgan sta pianificando una Parte 2 per la fine dell'estate 2015.Abbiamo intenzione di pubblicare il suo articolo e tutti gli altri articoli di JMPer Cable qui nella comunità JMP.
I numeri arretrati di JMPer Cable sono qui: http://www.jmp.com/en_us/newsletters/jmper-cable/back-issues.html
Ottimo articolo!Dove posso trovare la parte 2 o i numeri arretrati di JMPer Cable?