Drew Foglia, JMP Principal Software Developer, SAS

drewfoglia

The JMP scripting language offers very powerful constructs for driving JMP functionality. However, as with most software development efforts, even moderately sized projects can become difficult to maintain and/or extend. Using the Namespace construct along with several other JSL built-in operators, it is possible to implement some of the best attributes of an object-oriented language within JSL: class definition, inheritance, method overriding, data encapsulation and hiding, event registration and processing, etc. I will present the details of these techniques and how we used them in the JMP Life Sciences group to completely retool the user interface and infrastructure of the JMP Clinical 6.0 release.

Published on ‎03-24-2025 08:43 AM by Community Manager Community Manager | Updated on ‎03-26-2025 05:28 PM

Drew Foglia, JMP Principal Software Developer, SAS

drewfoglia

The JMP scripting language offers very powerful constructs for driving JMP functionality. However, as with most software development efforts, even moderately sized projects can become difficult to maintain and/or extend. Using the Namespace construct along with several other JSL built-in operators, it is possible to implement some of the best attributes of an object-oriented language within JSL: class definition, inheritance, method overriding, data encapsulation and hiding, event registration and processing, etc. I will present the details of these techniques and how we used them in the JMP Life Sciences group to completely retool the user interface and infrastructure of the JMP Clinical 6.0 release.



Start:
Mon, Mar 14, 2016 05:00 AM EDT
End:
Thu, Mar 17, 2016 01:00 PM EDT
Attachments
0 Kudos