g+
g+ Communities
Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  <20122013  2014  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  <20122013  2014 
<== Date ==> <== Thread ==>

Subject: Announcing dbpreproc - powerful EPICS Database preprocessor [was Re: Announcing pymsi]
From: Angus Gratton <angus.gratton@anu.edu.au>
To: tech-talk@aps.anl.gov
Date: Fri, 5 Oct 2012 11:11:40 +1000
I've renamed this project to dbpreproc and it's now hosted independently
on github:

https://github.com/anunuclear/dbpreproc

Sorry again to Goetz for inadvertantly reusing the 'pymsi' name.

Original announcement, redux:

> dbpreproc is a similar tool to "msi", it takes templated input databases
> and processes them to produce output databases. Some syntax is even
> identical. However, dbpreproc 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 examples can be found at the github 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



-- 
Angus Gratton, Computer Control Specialist
ANU Department of Nuclear Physics
(02) 6125 2091

References:
Announcing pymsi - EPICS macro substitution and expansion tool Angus Gratton
Re: Announcing pymsi - EPICS macro substitution and expansion tool Goetz Pfeiffer
Re: Announcing pymsi - EPICS macro substitution and expansion tool Angus Gratton

Navigate by Date:
Prev: Re: Lambda-TDK Genesys support Jiro Fujita
Next: Re: Lambda-TDK Genesys support Dennis Armstrong
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  <20122013  2014 
Navigate by Thread:
Prev: Re: Announcing pymsi - EPICS macro substitution and expansion tool Angus Gratton
Next: Lambda-TDK Genesys support Jiro Fujita
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  <20122013  2014 
ANJ, 18 Nov 2013 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· EPICSv4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·