On 10/04/2012 08:25 AM, Angus Gratton wrote:
Hi everyone,
I wanted to let you all know I've just posted a macro expansion tool
that we've been using for some time here at the ANU 14UD. It's called
'pymsi'
For now it's in the 'epicsapps' distribution related to pyepics,
although it's really a command line tool that doesn't require any
Python knowledge or even the pyepics libraries (just a working Python
installation.)
Docs at:
http://pyepics.github.com/epicsapps/pymsi.html
Code at:
https://github.com/pyepics/epicsapps
pymsi is a similar tool to "msi", it takes templated input databases
and processes them to produce output databases. Some syntax is even
identical. However, pymsi has several additional powerful features for
compile-time database evaluation:
- Components can be nested hierarchically, allowing individual
databases to be very flexibly reused (the 'DRY' principle[1].)
- Embedded database parser, verifies database syntax at compile time.
- dbd verification allows every field in the database to be checked
against the database definition at compile time, catch pesky errors
and typos early.
- Powerful macro expansion engine - local scopes, inline default values,
errors on missing macros.
- Automatic dependency generator for Makefile integration (changes to
any subdatabase will cause make to automatically rebuild the parent
database.)
- Detailed error messages with accurate line & column numbers for quick
and accurate debugging.
- Easy integration with the EPICS build system.
(More details and an example can be found at the documentation link
above.)
Posting it here in the hope that it's useful to other labs. Please let
me know if I can answer any questions or improve the documentation in
any way.
Cheers,
Angus
[1] https://en.wikipedia.org/wiki/Don%27t_repeat_yourself
Hello Angus,
unfortunately there is already a tool named pymsi.
Here is the project homepage:
http://www-csr.bessy.de/control/pymsi/
It is also referenced here:
http://www.aps.anl.gov/epics/tech-talk/2010/msg01464.php
and here:
http://www.aps.anl.gov/epics/extensions/index.php
Could you please rename your project ?
Greetings
Goetz Pfeiffer
________________________________
Helmholtz-Zentrum Berlin für Materialien und Energie GmbH
Mitglied der Hermann von Helmholtz-Gemeinschaft Deutscher Forschungszentren e.V.
Aufsichtsrat: Vorsitzender Prof. Dr. Dr. h.c. mult. Joachim Treusch, stv. Vorsitzende Dr. Beatrix Vierkorn-Rudolph
Geschäftsführung: Prof. Dr. Anke Rita Kaysser-Pyzalla, Thomas Frederking
Sitz Berlin, AG Charlottenburg, 89 HRB 5583
Postadresse:
Hahn-Meitner-Platz 1
D-14109 Berlin
http://www.helmholtz-berlin.de
- Replies:
- Re: Announcing pymsi - EPICS macro substitution and expansion tool Dirk Zimoch
- Re: Announcing pymsi - EPICS macro substitution and expansion tool Angus Gratton
- References:
- Announcing pymsi - EPICS macro substitution and expansion tool Angus Gratton
- Navigate by Date:
- Prev:
Announcing pymsi - EPICS macro substitution and expansion tool Angus Gratton
- Next:
Re: Announcing pymsi - EPICS macro substitution and expansion tool Dirk Zimoch
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
<2012>
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
- Navigate by Thread:
- Prev:
Announcing pymsi - EPICS macro substitution and expansion tool Angus Gratton
- Next:
Re: Announcing pymsi - EPICS macro substitution and expansion tool Dirk Zimoch
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
<2012>
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
|