EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

2002  2003  2004  2005  2006  2007  2008  2009  <20102011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  Index 2002  2003  2004  2005  2006  2007  2008  2009  <20102011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: Experimental Sequencer Release
From: Benjamin Franksen <[email protected]>
To: [email protected]
Date: Wed, 5 May 2010 23:02:17 +0200
Hi Andrew

thanks for your comments.

On Mittwoch, 5. Mai 2010, Andrew Johnson wrote:
> On Wednesday 05 May 2010 05:50:57 Benjamin Franksen wrote:
> > I have been working on a new, improved version of the sequencer. What
> > follows is copied verbatim from the README-2.0.98 file in the release.
> > One item I have not yet thought about is how to organize collaboration.
> > The current version (2.0.12) is hosted at
> > http://epics.web.psi.ch/software/sequencer/, however there seems to be
> > no public repository there, only releases, so I started my work based
> > on the latest released tar ball, and recorded my changes in darcs
> > repository (see below under Download). Anyway, I am open to
> > suggestions.
>
> I'm glad to see someone take on (re)development of the sequencer.  

I am ready to take over maintenance (and, hopefully, further improvements) 
from now on if this is generally desired.

> The past history is in a subversion repository at
> https://svn.aps.anl.gov/epics/sncseq with a Trac instance at
> https://svn.aps.anl.gov/trac/epics/sncseq although the Trac wiki is
> almost empty so it's currently only useful for browsing.  There have been
> several changes committed to the repo since the last release so I would
> encourage you to take a look at it.  

Ok, will do. Stupid me, should have asked before I started with this. I 
think the reason I did not was I was afraid to commit to doing this before 
I had a good idea how much work it would be, especially since I did not ask 
management if they approve (so I started doing this at home just for fun). 
When I realized I could actually produce something that works in finite 
time it was already too late...

> I can give you an account for write 
> access to our svn and Trac, but I'd be willing to transfer the ownership
> and point everything to your site if you'd prefer that

I would definitely prefer that. I could be persuaded to switch to another 
distributed VCS like Bazaar or Mercurial (or even Git), but would rather 
not have to work with Subversion. I hope you understand ;-)

Lewis Muir suggested public hosting at Launchpad, like EPICS base. He has a 
point. (This would mean Bazaar. Not my preferred choice, but as I said I 
could be convinced if this makes it noticeably easier for others to 
contribute.)

In any case, I am willing to convert the svn repo and rebase (actually 
re-record) the changes I made. So we will have the complete history in one 
repo.

Apropos: Some of the source files still contain changelog style header 
comments and an ancient LANL copyright notice. I would like to get rid of 
both: the changelog clutters the source code with information that is 
completely out-dated, irrelevant when trying to understand the code, and 
you can always look up who made what changes in the VCS. It also gives 
false positives when grep'ing for program phrases. Copyright stuff should 
rather go to a separate LICENSE file. However, I hesitate to delete any of 
this stuff out of respect for the original authors and also due to concerns 
about legal issues.

Do you have a recommendation?

Ralph, if you're reading this, you have already been through this with 
procServ, so please let me know if you have useful advice.

> (but I would ask 
> if you could add a history browser so it's possible to browse the
> repository changes without having to install darcs).

This should be possible (in the near future), as we are in the process of 
replacing the ancient machine that serves our software distribution pages. 
We have not yet finally decided how exactly the old content gets 
re-organized but I'll make sure we have some project publishing / bug 
tracker thing there, something like Trac or (my preference) Redmine. Both 
enable history browsing (and more) for a number of VCSes. Give us a few 
weeks.

> I'd never come across re2c or lemon before, they look very interesting
> and the licensing is ideal.

That is really good to hear. I was not certain, thanks for investigating.

> I'd *really* like to see something like them 
> written in Perl though (but still generating C/C++ code)...

Yep. The extra dependency on re2c is certainly not ideal. However, 
the 'market' for lexer/parser generators that target C/C++ is rather 
sparsely populated. It's the best tool I could find for the task at hand 
and at least it seems to be aimed at being portable across platforms. There 
is an alternative project written in Python (called Quex, see 
http://quex.sourceforge.net/) but it is more heavy-weight, and not as 
elegant and simple to integrate as re2c (and besides, its C backend was 
described as experimental last time I looked). Nothing written in Perl 
AFAIK. 

Lemon, OTOH, is really *very* thightly coded and while making changes to it 
is certainly possible, one has to be extremely careful. BTW, one great 
feature of lemon is that it has an option to extract a human readable 
formal grammar from the specification (by simply throwing out everything 
that is only relevant to the implementation). I plan to integrate this into 
the build system, so that the docs will always contain an up-to-date BNF 
description of the syntax. (So many things to do...)

Cheers
Ben

Replies:
Re: Experimental Sequencer Release Ralph Lange
References:
Experimental Sequencer Release Benjamin Franksen
Re: Experimental Sequencer Release Andrew Johnson

Navigate by Date:
Prev: Re: Experimental Sequencer Release Andrew Johnson
Next: Re: Experimental Sequencer Release Ralph Lange
Index: 2002  2003  2004  2005  2006  2007  2008  2009  <20102011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: Experimental Sequencer Release Andrew Johnson
Next: Re: Experimental Sequencer Release Ralph Lange
Index: 2002  2003  2004  2005  2006  2007  2008  2009  <20102011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 02 Feb 2012 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·