14 years agoLittle fix in bnf header cascardo@tlscascardo--private,libgrammatic--nogobject--0.1--base-0
Thadeu Lima de Souza Cascardo [Fri, 7 Oct 2005 15:29:44 +0000 (15:29 +0000)]
Little fix in bnf header

#endif in bnf header was given a macro.

git-archimport-id: cascardo@tlscascardo--private/libgrammatic--dev--0.1--patch-21

14 years agoAdded grammar file description loader
Thadeu Lima de Souza Cascardo [Fri, 7 Oct 2005 15:12:16 +0000 (15:12 +0000)]
Added grammar file description loader

Grammar File Description Loader, bnf.c, is added. It reads a file which
contains a description of a grammar and returns the grammar.

git-archimport-id: cascardo@tlscascardo--private/libgrammatic--dev--0.1--patch-20

14 years agoState numbers are not defined in items modules
Thadeu Lima de Souza Cascardo [Mon, 3 Oct 2005 00:27:20 +0000 (00:27 +0000)]
State numbers are not defined in items modules

Do not define state numbers for each item set. Instead, let the goto
point to another key in the hash table, so they can uniquely be
referenced by their memory address. Any other code can associate any
state number it finds more suitable.

git-archimport-id: cascardo@tlscascardo--private/libgrammatic--dev--0.1--patch-19

14 years agoConflict symbols are now static cascardo@tlscascardo--private,libgrammatic--lr1--0.1--base-0
Thadeu Lima de Souza Cascardo [Sun, 2 Oct 2005 19:09:20 +0000 (19:09 +0000)]
Conflict symbols are now static

When linking first and item, a symbol conflict for the function for
getting a list from the keys in a hash. They are static now, which solves
the problem.

git-archimport-id: cascardo@tlscascardo--private/libgrammatic--dev--0.1--patch-18

14 years agoFixed bug in items related to the comparison of set items
Thadeu Lima de Souza Cascardo [Fri, 30 Sep 2005 15:29:08 +0000 (15:29 +0000)]
Fixed bug in items related to the comparison of set items

The comparison of set items did not work with g_hash_table_find because
hash values were all NULL. Putting the keys in a list and, then,
iterating through it fixed the problem.

git-archimport-id: cascardo@tlscascardo--private/libgrammatic--dev--0.1--patch-17

14 years agoFixed code for printing item sets
Thadeu Lima de Souza Cascardo [Thu, 29 Sep 2005 17:51:56 +0000 (17:51 +0000)]
Fixed code for printing item sets

Fixed some littel code for the debugging of the computing of item sets.

git-archimport-id: cascardo@tlscascardo--private/libgrammatic--dev--0.1--patch-16

14 years agoFixed code in grammar for comparing rules
Thadeu Lima de Souza Cascardo [Thu, 29 Sep 2005 17:36:10 +0000 (17:36 +0000)]
Fixed code in grammar for comparing rules

A little mistyping in the code for comparing rules.

git-archimport-id: cascardo@tlscascardo--private/libgrammatic--dev--0.1--patch-15

14 years agoAdded debug code to item generation
Thadeu Lima de Souza Cascardo [Thu, 29 Sep 2005 17:31:50 +0000 (17:31 +0000)]
Added debug code to item generation

Code to print item sets was added to item.c.

git-archimport-id: cascardo@tlscascardo--private/libgrammatic--dev--0.1--patch-14

14 years agoAdded file to compute LR(0) collection of item sets
Thadeu Lima de Souza Cascardo [Thu, 29 Sep 2005 17:09:52 +0000 (17:09 +0000)]
Added file to compute LR(0) collection of item sets

item.c file contains functions and data types that allow the
representation and building of a collection of item sets. Those include
the CLOSURE and GOTO functions.

git-archimport-id: cascardo@tlscascardo--private/libgrammatic--dev--0.1--patch-13

14 years agoAdded functions to compare symbols and hash and equal for rules
Thadeu Lima de Souza Cascardo [Thu, 29 Sep 2005 03:31:26 +0000 (03:31 +0000)]
Added functions to compare symbols and hash and equal for rules

Functions to compare two symbols and two rules were added. Also functions
for hashing a rule, including equal and hash functions.

git-archimport-id: cascardo@tlscascardo--private/libgrammatic--dev--0.1--patch-12

14 years agoAdded function to get first from sequence of grammar symbols
Thadeu Lima de Souza Cascardo [Thu, 29 Sep 2005 03:09:51 +0000 (03:09 +0000)]
Added function to get first from sequence of grammar symbols

Function first_rule returns a list with all the symbols in first of a
rule or sequence of grammar symbols.

git-archimport-id: cascardo@tlscascardo--private/libgrammatic--dev--0.1--patch-11

14 years agoFixed code in first
Thadeu Lima de Souza Cascardo [Thu, 29 Sep 2005 03:05:45 +0000 (03:05 +0000)]
Fixed code in first

Code to get first list was incorrect.

git-archimport-id: cascardo@tlscascardo--private/libgrammatic--dev--0.1--patch-10

14 years agoFixed the code to build a list from keys of a hashtable
Thadeu Lima de Souza Cascardo [Thu, 29 Sep 2005 03:02:48 +0000 (03:02 +0000)]
Fixed the code to build a list from keys of a hashtable

Fixed the code that built a list from the keys of a hash table.

git-archimport-id: cascardo@tlscascardo--private/libgrammatic--dev--0.1--patch-9

14 years agoCompute first set of a grammar
Thadeu Lima de Souza Cascardo [Wed, 28 Sep 2005 05:05:20 +0000 (05:05 +0000)]
Compute first set of a grammar

Compute the first set for every nonterminal of the grammar.

git-archimport-id: cascardo@tlscascardo--private/libgrammatic--dev--0.1--patch-8

14 years agoChanged symbol value to GQuark
Thadeu Lima de Souza Cascardo [Wed, 28 Sep 2005 05:04:23 +0000 (05:04 +0000)]
Changed symbol value to GQuark

Symbol value is now a GQuark, so it has a string identifier as well as a
numeric value.

git-archimport-id: cascardo@tlscascardo--private/libgrammatic--dev--0.1--patch-7

14 years agoRecursive Descent Parser GObjectified
Thadeu Lima de Souza Cascardo [Sun, 25 Sep 2005 12:47:49 +0000 (12:47 +0000)]
Recursive Descent Parser GObjectified

Recursive Descent Parser code adapted to the new Grammar code and

git-archimport-id: cascardo@tlscascardo--private/libgrammatic--dev--0.1--patch-6

14 years agopublic and copy rule and symbol functions
Thadeu Lima de Souza Cascardo [Fri, 23 Sep 2005 02:42:44 +0000 (02:42 +0000)]
public and copy rule and symbol functions

Some rule and symbol functions are public. Copy functions for both are
also provided.

git-archimport-id: cascardo@tlscascardo--private/libgrammatic--dev--0.1--patch-5

14 years agoProvide functions to retrieve rules from Grammar
Thadeu Lima de Souza Cascardo [Sat, 17 Sep 2005 18:27:44 +0000 (18:27 +0000)]
Provide functions to retrieve rules from Grammar

Functions to retrieve rules for a symbol and symbols from a rule are

--This line, and those below, will be ignored--
Files to commit:
   <can't compute list>

This list might be incomplete or outdated if editing the log
message was not invoked from an up-to-date changes buffer!

git-archimport-id: cascardo@tlscascardo--private/libgrammatic--dev--0.1--patch-4

14 years agoProperly delete Grammar hashtable content
Thadeu Lima de Souza Cascardo [Sat, 17 Sep 2005 15:25:59 +0000 (15:25 +0000)]
Properly delete Grammar hashtable content

Grammar hashtable content is properly freed.

--This line, and those below, will be ignored--
Files to commit:
   <can't compute list>

This list might be incomplete or outdated if editing the log
message was not invoked from an up-to-date changes buffer!

git-archimport-id: cascardo@tlscascardo--private/libgrammatic--dev--0.1--patch-3

14 years agoGObjectified Grammar
Thadeu Lima de Souza Cascardo [Sat, 17 Sep 2005 15:09:09 +0000 (15:09 +0000)]
GObjectified Grammar

Grammar is now implemented as a hash table of non-terminals, giving a
list of rules for each of them. It is also a GObject now.

--This line, and those below, will be ignored--
Files to commit:
   <can't compute list>

This list might be incomplete or outdated if editing the log
message was not invoked from an up-to-date changes buffer!

git-archimport-id: cascardo@tlscascardo--private/libgrammatic--dev--0.1--patch-2

14 years agoRecursive parser have start symbol
Thadeu Lima de Souza Cascardo [Sun, 21 Aug 2005 18:36:46 +0000 (18:36 +0000)]
Recursive parser have start symbol

Recursive Descent Parser is initialized with a start non-terminal symbol.

git-archimport-id: cascardo@tlscascardo--private/libgrammatic--dev--0.1--patch-1

14 years agoFirst version of libgrammatic with rdp and lr0 parser cascardo@tlscascardo--private,libgrammatic--dev--0.1--base-0
Thadeu Lima de Souza Cascardo [Sun, 21 Aug 2005 15:49:35 +0000 (15:49 +0000)]
First version of libgrammatic with rdp and lr0 parser

Recursive descent parser and LR(0) parser are implemented. Table
generator for LR(0) is yet to be written.

git-archimport-id: cascardo@tlscascardo--private/libgrammatic--dev--0.1--base-0