Discussion Julian Matthews · Feb 3

How do community members manage their collections of functions?

Hey everyone.

As I have been working with IRIS (nee Caché) for some time now, I decided to take a look at how I manage things like functions and scripts that may not belong to a single namespace or environment, but should still have a home.

I have taken to creating a github repo where I can keep track of a single .cls of "general functions" that I can then drop into an environment when required. That said, I'm keen to know from others if they have built up a similar collection of useful functions (that I could contribute to via github instead) or if this has been approached in an entirely different way?

Comments

Julian Matthews  Feb 4 to Eduard Lebedyuk

This is a great repo - thanks for sharing!

Looking through what you have here, it's certainly given me the inspiration to move away from a single class and instead breaking these out into a class per type.

0
Jani Hurskainen · Feb 11

How to take control of your own code snippets:

The "old school" way: keep a "tidy" public or private repository from where you can easily import the code into any namespace with $system.OBJ.ImportDir

The "new school" way: organize the code into a public or private IPM module (or modules). In case of public code host the module(s) in https://openexchange.intersystems.com/?zpm=1 Remember to be explicit about the license!

Select top level package name (try to follow the de-facto naming rules) and organize the code there as you see best (use sub packages and classes).

I don't know about public collections of functions but browse and follow-up the https://openexchange.intersystems.com/

0