70 likes | 260 Views
Free Pizza!. Kasemirk@ornl.gov , Sept. 2005. Ideas, anybody?. Need more frequent exchange of ideas. Pretty much anything might give somebody a good idea. “ELog Filter” led to Dave Purcell’s Ch22 page Pam’s brief IOC status classification demo. Scripting?. Meaning in this context:
E N D
Free Pizza! Kasemirk@ornl.gov, Sept. 2005
Ideas, anybody? • Need more frequent exchange of ideas. Pretty much anything might give somebody a good idea. • “ELog Filter” led to Dave Purcell’s Ch22 page • Pam’s brief IOC status classification demo
Scripting? • Meaning in this context: • No (noticable) compilation required, no reboot,but still a full programming language. • Ideally also offers GUI-building features. • Useful for: • One-of experiments • Rapid development, tests of ideas
Python? • Tcl/tk • Oldest one around • Established “tk” widget set for GUI • I don’t like how a=b +c turns into “set a [ expr $b + $c ];” • Perl • Terrific for text handling (e.g. elog filter…) • “$a = $b + $c;” • Python • Comparably new, object support from the start • “a = b + c”
Examples • “Framework”: • CA_App • PV (test1) • PV_Label (test2), • LED, custom callbacks (test3) • Dial (test4) • StripGraph (test5) • Applications • Scan • QuenchCheck
Issues, Alternatives • “Python/CA” needs to be maintained • python, tcl, tk, BLT, Pmw, SWIG, capython, caChannel, Numarray, Freetype2, libPNG, Mathplotlib • D0/Fermilab: last html update 2000, based on R3.13. • “Soft” IOCs • “Reboot” is instantaneous. • Trivially ports onto “hard” IOC. • SNL recompilation, separation of GUI and logic still a bit slower than scriping. • Matlab • Very useful for “start”, “do math”, “plot”, “done”.I find it less practical for GUI building & periodic processing. • Jython & XAL • Python platform with GUI and CA that’s supported at SNS?