Changeset: 84edef5c08d6 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=84edef5c08d6
Modified Files:
        monetdb5/mal/mal_module.c
        monetdb5/mal/mal_parser.c
        monetdb5/mal/mal_properties.c
        monetdb5/mal/mal_xml.c
Branch: default
Log Message:

Documentation already in website


diffs (189 lines):

diff --git a/monetdb5/mal/mal_module.c b/monetdb5/mal/mal_module.c
--- a/monetdb5/mal/mal_module.c
+++ b/monetdb5/mal/mal_module.c
@@ -18,39 +18,7 @@
  */
 
 /*
- * @f mal_module
- * @a M. L. Kersten
- * @+ Module Management
- *
- * The operations are organized in separate MAL modules.
- * Each module contains a local symbol table of all function names
- * known to it so far. These names are stored in the global namespace
- * pool and never removed to guarantee stability of remote references.
- *
- * All dynamically loaded functions remain in existing
- * for the duration of the server session. Only the administrator can
- * load functions (upon system restart). Therefore, we do not have
- * to lock the dictionary table while traversing it for information.
- * Global (private) variables can be realized keeping the symbol table
- * and runtime stack around between requests.
- *
- * The symbol descriptors within a scope are organized in a list of subscopes
- * indexed by the first character of the function name.
- *
- * The modules are still collected in a linked list to ease access
- * and debug its content. It should be used with care for
- * resolving unknown modules.
- *
- * The function symbols are collected in a global name space table,
- * indexed by a small hash table. Once added, the name may not be removed
- * anymore.
- * Care should be taken not to generate many unique function names.
- */
-/*
- * @+ Module scope management
- * Upon system restart, the global scope is created. It is called "root" and
- * does not contain any symbol definitions. It merely functions as an anchor
- * point for the modules to be added later.
+ * (c) M. L. Kersten
  */
 
 #include "monetdb_config.h"
@@ -285,7 +253,7 @@ void deleteSymbol(Module scope, Symbol p
 }
 
 /*
- * @+ Inheritance
+ * Inheritance
  * The MAL type checker does not apply type inheritance. Such a functionality
  * can, however, be readily implemented with a MAL rewriter.
  *
@@ -340,7 +308,7 @@ Module setInheritance(Module h, Module f
        return h;
 }
 /*
- * @+ Searching the scope structure.
+ * Searching the scope structure.
  * Finding a scope is unrestricted. For modules we explicitly look for
  * the start of a new module scope.
  * All core modules are accessed through the jumptable.
@@ -502,13 +470,6 @@ void dumpManualFooter(stream *f){
 static int cmpModName(Module *f, Module *l){
        return strcmp((*f)->name, (*l)->name);
 }
-#if 0
-int cmpFcnName(InstrPtr f, InstrPtr l){
-       if(getFunctionId(f) && getFunctionId(l))
-               return strcmp(getFunctionId(f), getFunctionId(l));
-       return 0;
-}
-#endif
 void dumpManual(stream *f, Module s, int recursive){
        int j;
        Symbol t;
diff --git a/monetdb5/mal/mal_parser.c b/monetdb5/mal/mal_parser.c
--- a/monetdb5/mal/mal_parser.c
+++ b/monetdb5/mal/mal_parser.c
@@ -17,28 +17,7 @@
  * All Rights Reserved.
  */
 
-/* Author(s): M. L. Kersten
- *The Parser Implementation
- * The parser (and its target language) are designed for speed of analysis.
- * For, parsing is a dominant cost-factor in applications interfering with
- * MonetDB. For the language design it meant that look-ahead and ambiguity
- * is avoided where-ever possible without compromising readability and
- * to ease debugging.
- *
- * The syntax layout of a MAL program consists of a module name,
- * a list of include commands, a list of function/ pattern/ command/ factory
- * definitions and concludes with the statements to be executed as
- * the main body of the program.  All components are optional.
- *
- * The program may be decorated with comments, which starts with a # and
- * runs till the end of the current line. Comments are retained
- * in the code block for debugging, but can be removed with an optimizer to 
reduce space
- * and interpretation overhead.
- *
- * @+ The lexical analyzer
- * The implementation of the lexical analyzer is straightforward:
- * the input is taken from a client input buffer. It is assumed that
- * this buffer contains the complete MAL structure to be parsed.
+/* (c): M. L. Kersten
 */
 
 #include "monetdb_config.h"
@@ -261,19 +240,6 @@ keyphrase2(Client cntxt, str kw)
        return 0;
 }
 
-#if 0                                                  /* unused */
-static inline int
-keyphrase(Client cntxt, str kw, int length)
-{
-       skipSpace(cntxt);
-       if (strncmp(CURRENT(cntxt), kw, length) == 0) {
-               advance(cntxt, length);
-               return 1;
-       }
-       return 0;
-}
-#endif
-
 /*
  * A similar approach is used for string literals.
  * Beware, string lengths returned include the
diff --git a/monetdb5/mal/mal_properties.c b/monetdb5/mal/mal_properties.c
--- a/monetdb5/mal/mal_properties.c
+++ b/monetdb5/mal/mal_properties.c
@@ -18,40 +18,7 @@
  */
 
 /*
- * @f mal_properties
- * @a M. Kersten
- * @+ Property Management
- * Properties can be associated with variables, MAL blocks, and MAL 
instructions.
- * The property list is initialized upon explicit request only, e.g. by
- * the frontend parser, a box manager, or as a triggered action.
- *
- * Every property should come with a function that accepts a reference to
- * the variable and updates the property record. This function is activated
- * either once or automatically upon each selection.
- *
- * @+ Property ADT implementation
- *
- *
- * addProperty(O,P) adds property P to the list associated with O. If O 
represents
- * a compound structure, e.g. a BAT, we should indicate the component as well. 
For
- * example, addProperty(O,P,Ia,...Ib) introduces a property shared by the
- * components Ia..Ib (indicated with an integer index.
- *
- * hasProperty(O,P) is a boolean function that merely checks existence
- * hasnotProperty(O,P) is the dual operation.
- *
- *
- * setProperty(O,P,V) changes the propety value to V. It may raise a
- * PropertyUpdateViolation exception when this can not be realized.
- * Note, the property value itself is changed, not the object referenced.
- *
- * getProperty(O,P) retrieves the current value of a property. This may involve
- * calling a function or running a database query.
- *
- * setPropertyAttribute(O,P,A) changes the behavior of the property. For 
example,
- * the attribute 'freeze' will result in a call to the underlying function only
- * once and to cache the result for the remainder of the objects life time.
- *
+ * (c) M. Kersten
  */
 #include "monetdb_config.h"
 #include "mal_properties.h"
diff --git a/monetdb5/mal/mal_xml.c b/monetdb5/mal/mal_xml.c
--- a/monetdb5/mal/mal_xml.c
+++ b/monetdb5/mal/mal_xml.c
@@ -18,9 +18,8 @@
  */
 
 /*
- * @f mal_xml
- * @a M. Kersten
- * @+ XML interface
+ * (c) M. Kersten
+ *  XML interface
  * The primitives to manipulate XML objects and to prepare for XML output
  * is collected in this single file. It is expected to grow out into
  * all the primitives needed to support an XML front-end.
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to