On Sun, Mar 24, 2013 at 9:27 PM, Leonidas Fegaras <[email protected]>wrote:
> Dear MRQLers, > The current MRQL release is available at: > https://github.com/fegaras/**mrql <https://github.com/fegaras/mrql> > To setup the ASF svn codebase, I will need to do some changes to > prepare it for the first commit. After that, I hope it will be open > and ready for others to commit. So I am requesting your feedback on > the following issues: > > 1) I need to update the copyright info on all source files. > Currently, each source file has a copy of the Apache License 2.0 > at the top of the file, but it also has things that need to be removed, > such as "Copyright 2011-2012 Leonidas Fegaras, University of Texas at > Arlington". > See for example: > https://github.com/fegaras/**mrql/blob/master/src/**MapReducePlan.java<https://github.com/fegaras/mrql/blob/master/src/MapReducePlan.java> > Is there a standard way to add Copyright info in the source files? > > Because this can get painstaking the best way is to just add attributions to a single project file showing who's contributed and holds Copyrights. IMHO the source files are a bad place, and it's not ASF practice. > 2) MRQL uses JLine, which is distributed under the BSD license. > Do we need to put this information some place in the codebase? > MRQL also uses JLex (a lexical analyzer) and CUP (a parser generator). > See http://www.cs.princeton.edu/~**appel/modern/java/JLex/** > current/manual.html<http://www.cs.princeton.edu/~appel/modern/java/JLex/current/manual.html> > and > http://www2.cs.tum.edu/**projects/cup/<http://www2.cs.tum.edu/projects/cup/> > They both have an open source license. > MRQL also uses the GEN package, written by me, which extends Java with > Abstract Syntax Trees, pattern matching, etc. MRQL uses these three > tools (JLex, CUP, and GEN) for developing the source code, but it does > not include any source code from these project. > > Again license attributions can be made for specific libraries and licenses in a single file for a release artifact. We usually set up so Maven automatically bundles these into the artifacts. > 3) To make MRQL easier to extend, I would need to split some source > files into smaller ones. There is a problem though: many developers > like to use IDEs, such as Eclipse or Netbeans. This is not easy with > MRQL. Some MRQL files (those with extension .gen) are written in a > syntax that extends Java with Abstract Syntax Trees (AST), AST data > constructors, and AST pattern matching, to make the construction of > the MRQL compiler easier. So the MRQL front-end is completely > written using this package GEN. These .gen files are translated to > plain Java by GEN. I would also need to write a roadmap that explains > the different modules, how they are interconnect, and which files one > needs to modify to add some new functionality. So I am thinking to > write a developer's wiki. This wiki will also explain how to code > using the GEN package. > > That would be nice to have certainly. Just with this explanation snippet here, I have a good idea of what you're talking about now, thanks! This will help a lot to get the community growing around the code base. The quality of documentation, especially developer documentation is very important to a podling looking to grow it's community. HTH, -- Alex
