Skip to content

Commit

Permalink
enforcing grammatical interface; proper naming
Browse files Browse the repository at this point in the history
git-svn-id: https://slps.svn.sourceforge.net/svnroot/slps@1083 ab42f6e0-554d-0410-b580-99e487e6eeb2
  • Loading branch information
grammarware committed Jun 7, 2011
1 parent a18dbf7 commit aed0e73
Show file tree
Hide file tree
Showing 14 changed files with 40 additions and 52 deletions.
6 changes: 3 additions & 3 deletions topics/grammars/hunter.py
Expand Up @@ -550,7 +550,7 @@ def map2expr(ss):
return
elif len(ess) == 1:
if len(ess[0]) == 0:
print('Serialisation error: empty internal output sequence!')
print('Serialisation warning: empty internal output sequence, treating like epsilon!')
return BGF3.Expression(BGF3.Epsilon())
elif len(ess[0]) == 1:
return BGF3.Expression(ess[0][0])
Expand All @@ -563,7 +563,7 @@ def map2expr(ss):
e = BGF3.Choice()
for es in ess:
if len(es) == 0:
print('Serialisation error: empty internal output sequence!')
print('Serialisation warning: empty internal output sequence, treating like epsilon!')
return BGF3.Expression(BGF3.Epsilon())
elif len(es) == 1:
e.add(BGF3.Expression(es[0]))
Expand Down Expand Up @@ -1116,7 +1116,7 @@ def considerIndentation(ts):
# RESULT
if 'nonterminals-may-contain-spaces' in config.keys():
#
prods = [[x.replace(' ','_') for x in p] for p in prods]
prods = [[x.replace(' ','_') if len(x)<3 or (x[0]!=config['start-terminal-symbol'] and x[-1]!=config['end-terminal-symbol']) else x for x in p] for p in prods]
print('LAST STEP: replacing spaces with underscores for BGF compatibility and readability.')
if debug:
print('RESULT:')
Expand Down
4 changes: 2 additions & 2 deletions topics/grammars/metasyntax/bgf/Makefile
@@ -1,4 +1,4 @@
extract:
${tooldir}/xsd2bgf ../../../../shared/xsd/bgf.xsd bgf.bgf
${tooldir}/xsd2bgf ../../../../shared/xsd/bgf.xsd grammar.bgf

include ../../Makefile.include
include ../../Makefile.grammar
8 changes: 4 additions & 4 deletions topics/grammars/metasyntax/bnf-sdf/Makefile
@@ -1,6 +1,6 @@
extract:
${tooldir}/sdf2bgf ${sdflibdir}/bnf/syntax/*.sdf bnf-sdf.ext.bgf
${tooldir}/xbgf correct.xbgf bnf-sdf.ext.bgf bnf-sdf.ext.2.bgf
${tooldir}/subgrammar bnf-sdf.ext.2.bgf Rules bnf-sdf.bgf
${tooldir}/sdf2bgf ${sdflibdir}/bnf/syntax/*.sdf raw.bgf
${tooldir}/xbgf correct.xbgf raw.bgf ext.bgf
${tooldir}/subgrammar ext.bgf Rules grammar.bgf

include ../../Makefile.include
include ../../Makefile.grammar
Expand Up @@ -2,7 +2,7 @@ extract:
@echo Manually crafted grammar, no need to extract

test:
validate bgf bnf-bgf.bgf
validate bgf grammar.bgf

clean:
rm -f ~* *.bnf
8 changes: 4 additions & 4 deletions topics/grammars/metasyntax/ebnf-iso-1/Makefile
Expand Up @@ -2,8 +2,8 @@ extract:
cp src.8.1.txt src.prepared.txt
perl -pi -w -e 's/˜/~/g;' src.prepared.txt
perl -pi -w -e 's/ˆ/^/g;' src.prepared.txt
../../hunter.py src.prepared.txt config.edd ebnf-iso-1.raw.bgf
${tooldir}/xbgf post-extract.xbgf ebnf-iso-1.raw.bgf ebnf-iso-1.ext.bgf
${tooldir}/xbgf refactor.xbgf ebnf-iso-1.ext.bgf ebnf-iso-1.bgf
${hunter} src.prepared.txt config.edd raw.bgf
${tooldir}/xbgf post-extract.xbgf raw.bgf ext.bgf
${tooldir}/xbgf refactor.xbgf ext.bgf grammar.bgf

include ../../Makefile.include
include ../../Makefile.grammar
11 changes: 0 additions & 11 deletions topics/grammars/metasyntax/ebnf-iso-1/post-extract.xbgf
Expand Up @@ -72,15 +72,4 @@
<nonterminal>terminal_character</nonterminal>
</bgf:expression>
</xbgf:replace>
<xbgf:replace>
<bgf:expression>
<terminal>’’</terminal>
</bgf:expression>
<bgf:expression>
<terminal> </terminal>
</bgf:expression>
<in>
<nonterminal>space_character</nonterminal>
</in>
</xbgf:replace>
</xbgf:sequence>
8 changes: 4 additions & 4 deletions topics/grammars/metasyntax/ebnf-iso-2/Makefile
@@ -1,6 +1,6 @@
extract:
../../hunter.py src.8.2.txt config.edd ebnf-iso-2.raw.bgf
${tooldir}/xbgf post-extract.xbgf ebnf-iso-2.raw.bgf ebnf-iso-2.ext.bgf
${tooldir}/xbgf refactor.xbgf ebnf-iso-2.ext.bgf ebnf-iso-2.bgf
../../hunter.py src.8.2.txt config.edd raw.bgf
${tooldir}/xbgf post-extract.xbgf raw.bgf ext.bgf
${tooldir}/xbgf refactor.xbgf ext.bgf grammar.bgf

include ../../Makefile.include
include ../../Makefile.grammar
6 changes: 3 additions & 3 deletions topics/grammars/metasyntax/ebnf-iso-2/post-extract.xbgf
Expand Up @@ -2,23 +2,23 @@
<xbgf:sequence xmlns:xbgf="http://planet-sl.org/xbgf" xmlns:bgf="http://planet-sl.org/bgf">
<xbgf:replace>
<bgf:expression>
<nonterminal>character_-_’’’</nonterminal>
<nonterminal>character - ’’’</nonterminal>
</bgf:expression>
<bgf:expression>
<nonterminal>character</nonterminal>
</bgf:expression>
</xbgf:replace>
<xbgf:replace>
<bgf:expression>
<nonterminal>character_-_’"’</nonterminal>
<nonterminal>character - ’"’</nonterminal>
</bgf:expression>
<bgf:expression>
<nonterminal>character</nonterminal>
</bgf:expression>
</xbgf:replace>
<xbgf:replace>
<bgf:expression>
<nonterminal>character_-_’?’</nonterminal>
<nonterminal>character - ’?’</nonterminal>
</bgf:expression>
<bgf:expression>
<nonterminal>character</nonterminal>
Expand Down
8 changes: 4 additions & 4 deletions topics/grammars/metasyntax/ebnf-iso-3/Makefile
@@ -1,6 +1,6 @@
extract:
../../hunter.py src.8.3.txt config.edd ebnf-iso-3.raw.bgf
${tooldir}/xbgf post-extract.xbgf ebnf-iso-3.raw.bgf ebnf-iso-3.ext.bgf
${tooldir}/xbgf refactor.xbgf ebnf-iso-3.ext.bgf ebnf-iso-3.bgf
../../hunter.py src.8.3.txt config.edd raw.bgf
${tooldir}/xbgf post-extract.xbgf raw.bgf ext.bgf
${tooldir}/xbgf refactor.xbgf ext.bgf grammar.bgf

include ../../Makefile.include
include ../../Makefile.grammar
6 changes: 3 additions & 3 deletions topics/grammars/metasyntax/ebnf-iso-3/post-extract.xbgf
Expand Up @@ -2,23 +2,23 @@
<xbgf:sequence xmlns:xbgf="http://planet-sl.org/xbgf" xmlns:bgf="http://planet-sl.org/bgf">
<xbgf:replace>
<bgf:expression>
<nonterminal>CHARACTER_-_’’’</nonterminal>
<nonterminal>CHARACTER - ’’’</nonterminal>
</bgf:expression>
<bgf:expression>
<nonterminal>CHARACTER</nonterminal>
</bgf:expression>
</xbgf:replace>
<xbgf:replace>
<bgf:expression>
<nonterminal>CHARACTER_-_’"’</nonterminal>
<nonterminal>CHARACTER - ’"’</nonterminal>
</bgf:expression>
<bgf:expression>
<nonterminal>CHARACTER</nonterminal>
</bgf:expression>
</xbgf:replace>
<xbgf:replace>
<bgf:expression>
<nonterminal>CHARACTER_-_’?’</nonterminal>
<nonterminal>CHARACTER - ’?’</nonterminal>
</bgf:expression>
<bgf:expression>
<nonterminal>CHARACTER</nonterminal>
Expand Down
8 changes: 4 additions & 4 deletions topics/grammars/metasyntax/ebnf-sdf/Makefile
@@ -1,6 +1,6 @@
extract:
${tooldir}/sdf2bgf ${sdflibdir}/ebnf/syntax/*.sdf ebnf-sdf.ext.bgf
${tooldir}/xbgf correct.xbgf ebnf-sdf.ext.bgf ebnf-sdf.ext.2.bgf
${tooldir}/subgrammar ebnf-sdf.ext.2.bgf Grammar ebnf-sdf.bgf
${tooldir}/sdf2bgf ${sdflibdir}/ebnf/syntax/*.sdf raw.bgf
${tooldir}/xbgf correct.xbgf raw.bgf ext.bgf
${tooldir}/subgrammar ext.bgf Grammar grammar.bgf

include ../../Makefile.include
include ../../Makefile.grammar
9 changes: 4 additions & 5 deletions topics/grammars/metasyntax/rascal/Makefile
@@ -1,11 +1,10 @@
extract:
echo 'Extracting the actual grammar...'
../../../extraction/rascal/extract.py RascalRascal.rsc rascal.ext.bgf
${tooldir}/subgrammar rascal.ext.bgf Module PreModule Command rascal.bgf
../../../extraction/rascal/extract.py RascalRascal.rsc ext.bgf
${tooldir}/subgrammar ext.bgf Module PreModule Command grammar.bgf

horizontal:
echo 'Recovering the horizontal grammar...'
${tooldir}/xbgf horizontalize.xbgf rascal.bgf rascal.hor.bgf
${tooldir}/subgrammar rascal.hor.bgf Module PreModule Command rascal.true.hor.bgf
${tooldir}/xbgf horizontalize.xbgf grammar.bgf hor.bgf

include ../../Makefile.include
include ../../Makefile.grammar
8 changes: 4 additions & 4 deletions topics/grammars/metasyntax/yacc/Makefile
@@ -1,6 +1,6 @@
extract:
${tooldir}/sdf2bgf ${sdflibdir}/yacc/syntax/*.sdf yacc.ext.bgf
${tooldir}/xbgf refactor.xbgf yacc.ext.bgf yacc.ext.2.bgf
${tooldir}/subgrammar yacc.ext.2.bgf Grammar yacc.bgf
${tooldir}/sdf2bgf ${sdflibdir}/yacc/syntax/*.sdf raw.bgf
${tooldir}/xbgf refactor.xbgf raw.bgf ext.bgf
${tooldir}/subgrammar ext.bgf Grammar grammar.bgf

include ../../Makefile.include
include ../../Makefile.grammar

0 comments on commit aed0e73

Please sign in to comment.