Choose Language Hide Translation Bar

How to Create JSL Libraries of User-Defined Functions

Brady Brady, JMP Principal Systems Engineer, SAS


This presentation was voted one of three finalists for Best Invited Paper.


Have you written JSL functions that appear in several of your scripts? Do you share the JSL functions you’ve created with others? Wouldn’t it be nice if you could call these functions as if they were native to JMP, make modifications in a single location, and as a bonus, not have to worry about names colliding—especially in the scripts of those with whom you’ve shared your functions? With a custom function library, you can do all of these things. This session will discuss the advantages of using a custom library, show you how to create and maintain a custom library, and demonstrate how to use library functions in scripts.


Hi everyone, thanks for attending the talk! Here's what to do with the files:

1) Unzip into the location of your choice. Keep all these files together.

2) Install the add-in by double-clicking it, then run the addin to install the libraries you choose.

3) The unit conversions are quite limited--for display only... to augment them, you can update the file in the addin (use  View > adddins and select the link after highlighting this addin), but be sure to keep all length rows together, all volume rows together, etc. Each row should read logically to the next, as shown in our talk.

4) The journal contains the slides and links to relevant files; the file I started out with is '' and is in the .zip




This is fantastic!  You mentioned in the slides that add-in could be silently pushed.  How would we do that?  


I would like to use this tool to keep a set of helper functions on machines throughout my company.  We are using a variation of your depot to manage the distribution of our add-ins.  Ideally, I would like to have a function that would check for updates to each of our add-ins every time a JMP session is started and prompt the user to install them.


Eager to hear your thoughts,



HI John,


Here is how I have done the addins in the past. Follow directions in the blog below, but don’t give the users the choice offered by the modal window… just do the push/update as if the user had seen the window and said “Yes”.





Article Tags