[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] branch externals/parser-generator created (now 4a3a51d)
From: |
ELPA Syncer |
Subject: |
[elpa] branch externals/parser-generator created (now 4a3a51d) |
Date: |
Mon, 29 Nov 2021 15:57:36 -0500 (EST) |
elpasync pushed a change to branch externals/parser-generator.
at 4a3a51d Added FSF copyright headers
This branch includes the following new commits:
new b93ab8c My initial commit
new b8faa17 FIRSTk and EFFk working
new ee0a623 Added TRAVIS and LICENSE
new f5bfa40 Fixed typo in README
new 6ee548e Updated README
new 69bfe16 Removed white-space
new e4fd795 Added compilation to test
new f9c8348 Updated Travis and Makefil rule name
new 85dde51 Added License and Travis build logos
new 58798c8 Starting on calculation of valid LK-sets for a valid
grammar prefix
new 5d9b98c Added functions to validate G and k and tests
new fbb8cad Starting a refactor
new be557ba More work on refactor
new 42d92f1 More refactoring
new 5f65cfc More refactoring, using lists instead of string as
grammar data type
new 1b8f025 More work on validating a grammar structure
new 7bc3b70 Updated tests to use new data structure
new e644708 Improved validation of grammar syntax
new 80cf73d Passing tests for valid-grammar syntax
new f648b52 Passing first unit test for FIRST after new
data-structure refactor
new ab4b4db Passed second FIRST test again
new f2791c1 Passed unit test 3 intermediate grammar
new 563cbdd Passed FIRST tests for semi-complex grammar
new 32e2c15 Fixed bug with e-production
new dc78de7 Fixed page comment reference
new a4bbb2f Using PDA algorithm for FIRST when β is above 1 symbol
new 9d0d9e5 Various debugging
new 3e02435 Passing complex 2 test
new 1ae36fc Added support for calculating first of a sentential form
new 356720c Passing all unit tests using new data structure
new f4ba363 Improved README.md
new 38c2040 Improved markdown code examples
new f940be9 Added list of functions and usage examples
new bbbdea3 More improvement of documentation
new 8e99d0c Fixed typo
new bc1ec12 Improved documentation
new 26bf153 Setting look-ahead-number is now separated from setting
grammar
new b8d6476 Setting look-ahead-number clears cache storage
new 2829d36 More work on FOLLOW
new 603df44 Added failing unit tests for (parser--sort-list)
new e463bae Passing tests for sorting lists
new aadb31a Updated README.md about FOLLOW-sets
new 0f8b422 Added another unit test for follow function
new 840c418 Improved comment about follow function
new 0465b58 Improved commenting
new f8f5fe2 Started on function to calculate lk-items for a viable
prefix
new 586a38e More work on algorithm 5.8
new fe94691 Added hash-table for production RHS
new e02d5d7 More work on calculating valid LR-items
new afa7cb9 Added unit tests for retrieving grammar RHS
new 01df803 Improved documentation
new 00ffcde Added TODO items
new 8d0a93e More work on algorithm
new 7e051d3 Algorithm 5.8 completed but not tested
new a54061c Debugging of new algorithm
new 8e436df More tweaking
new a60952c More debugging of new algorithm
new 3e1f2b6 Passed first for calculating valid LR-sets for viable
prefix γ
new 6d2e231 Added two more failing valid LR-set calculation tests
new ab0559d More work
new 51cab75 More debugging
new 44eb5a3 Passing unit test for V(e) and V(S)
new 62d06a0 Passing unit test for V(Sa)
new 21164b6 Added documentation for (lr-items)
new 186d7bb Renamed function lr-items to lr-items-for-prefix
new d7f43d7 Sorting lr-items for prefix before return
new 15dc472 Added TODO items
new ca85ef4 Created TODO items
new 9792eeb Added TODO items
new a7d1cc0 Updated README
new 08b40cd Updated header levels in README
new b73c4ed Made e-symbol customizable
new 55bf9a9 Removed references to 'e
new 32263b7 Added cache to function which calculates LR-items for
prefix
new 5150b91 Started working on lr-items for grammar function
new 5957fad First implementation of generating LR-items for grammar
new 59aea4d More tweaking new algorithm
new bdbedf4 Suffixes in LR-items that only contain e-identifier are
now set as nil
new 5da1b28 Added TODO item
new ccaf4b5 More stuff
new 0e075d7 Fixed issue with algorithm 5.9
new d0c9663 Passing test for distinct LR-items for grammar
new 2a3a02d Removed cache for LR-items for prefixes
new 7a48197 Removed obsolete variable
new 3373881 More work on GOTO-table generation
new 7689ec5 More work
new 7fe7318 Passed test for distinct LR-items for grammar
new fe6037b Generating valid GOTO-table
new 79565f4 Fixed sorting of columns in GOTO-table
new 3ba5250 Removed debugging stuff
new d5284b5 Added algorithm 5.10
new 0304b78 Added a unit-test to invalidate LR-items
new c992a54 Added info in README.md about LR-items
new ba95bff Started on new algorithm
new 043e375 Refactored LR-parser into stand-alone file
new 1613e2e Byte-compilation and unit tests working after refactor
new daf93e0 Added failing unit test for action tables generation
new 31c7ba7 Work on function that generates all possible look-aheads
new 83298fe Passing test for function that generates possible
look-ahead permutations
new e9697ea Added function that tests if a look-ahead is valid or not
new 4c75f65 Added TODO items
new 53980d4 More documentation
new d36051c Parser now creates hash table over productions to their
production number
new 343fd72 Some parts of the action-table is generated
new 882d725 Added TODO item
new 65d9ce2 Fixed a bug with E-FREE-FIRST function and function that
validates a set of LR-items
new 4f81d98 Sorting each row in action-table
new 6f524ed Various stuff
new e3d3007 Tweaking of action-table generation for canonical
LR-parser
new 62f54f1 Added failing unit test for e-free-first function
new d7daabf Fixed bug with e-free-first function
new b2a0d71 Passed test for action-table generation
new 79c06fd Added error signal if no parser action or LR-item set is
found
new 2be434c Removed obsolete debug messages
new ee0ef5d Added failing unit test for Algorithm 5.7
new 1c1177f More work on LR-parser algorithm
new e88abf0 More work on parser, added error-handling
new 9db14cd Added TODO items
new 53c09f7 Added hash-table for productions indexed by
production-number
new 6d323a4 Implemented reduce action of LR-parser algorithm
new c667e18 Work on shift action in parsing algorithm
new d435e50 Passing unit test for LR-parse
new 89d128c Added TODO item
new 9b44827 Optimized LR-parser with hash-tables
new b0e9111 Started on lex-analyzer function
new 5784f3f Updated README with link to separate document for grammar
new 01fc56f Updated list of grammars
new fab7e46 Fixed link to LRk grammar
new 58e5806 Renamed plugin from parser to parser-generator
new 8328ab3 Added unit test for failing LRk Grammar Parse
new edfb7b4 Moved lex-analyzer to separate file
new bd06863 LR-parser now uses lex-analyzer for parsing
new 4ef0430 White-space fix
new 0416ca9 Added information about lex-analyzer in README
new b756e1a Added example of parsing using LR algorithm
new b2fd896 Added support for indexed tokens
new 4746c64 Updated example for LR parse with indexed tokens
new e89a740 Fixed bug with goto-table generation were tokens were
strings
new cee559d Added separate document for lexical analysis documentation
new d14d427 Moved more about lex-analysis to separate document
new 04a3ec5 Added separate file for syntax analysis
new de0ed95 Updated README.md
new 0695275 More updates to docs
new fa7089e Re-factored lex analyzer function to not use length
argument
new 71e4eaa Merge branch 'master' of
git.cvj.se:/home/git/emacs-parser-generator
new 1613e89 Added lex-analyzer get function
new 5c8a7a5 Preparations for SDT support
new 0e54a88 Optimized away one global variable
new 8cda060 Made some functions public
new c1d3707 Passing test for including SDT in Produductions
new 044f33a Added more support for SDT
new 173fe94 Preparations for translation
new 60e9c8a Preparations for translation-support in LR-parser
new 7ba32ff Only save translation if it produces anything
new 96f128f More various stuff
new 7eb9a4a Fixed issue with indexing productions when they have SDT
new fdbdff7 Added unit test for SDT in LR-parser
new 19667b3 Added failing unit test for translation
new 1b17ef8 Added another unit tests for translations
new 2d56ab0 Made separate functions for parse and translate in
LR-parser
new f621e77 Preparations for testing incremental parse
new a586a0e More work on incremental parsing
new 944819d More debugging incremental parsing
new 668e738 More work on tests for incremental parse
new 7cfdea2 Passing tests for incremental lexer
new a8a4e7f Minor fix
new 04fdc96 Added unit-test for incremental translations
new ac7a9ab Added TODO items
new c0310bf Added error-handling to lexical analyser
new fa6237a Added TODO items
new 71f03cc Updated example
new a18a23d Updated info about SDT and SA
new a31da28 Updated Parser WIP items
new 744fdf6 Added TODO item
new b072fdd Passed test for trailing e-identifier in EFF function
new d360e8a Added failing unit test for FIRST function with starting
e-identifier
new 0b72792 Added failing unit tests for FIRST
new 181b499 Fixed bug in FIRST generation where multiple equal LHS:s
new c4455db Added TODO-item
new d6afd0b Added TODO items
new 84ffb4e f-set max index is now set depending on if all
non-terminals have been expanded or not
new bbcb22f Optimized memory usage for f-sets
new e2f4347 More work on f-set generation with e-identifiers
new dfbd97f More tweaking of f-set generation
new 4811521 Various tweakings
new 7b6c1dc First function passing first complex grammar test
new 046e239 Passing first 3 complex tests for first
new 7e96f9d Passing all unit tests for first function
new aaec6fa Work on e-free first tests
new 7a90a75 Updated max interation count
new 4aeed22 Passed tests for e-free first function
new 796b41b Passed unit tests for follow function
new 33634dd Passing all tests after refactor
new ba8e501 Added failing first test with complex case
new 18d7c63 Added new function to merge lists of terminals
new fe10d4a Passed tests for first 3 and first 4 of complex grammar
new c1cdf20 Fixed issue with lex analyzer reached end of input
new 922033f Various stuff
new 1818b9d Added error in action-tables generation if no accept
action is found
new d7ad86c Added TODO item for LRk Canonical Parser
new 71d213b More work on Canonical LR(k) Parser
new 60d9968 Fixed valid look-ahead with k above 1
new 4cba5aa Made new TODO items
new ef60d96 Added failing test for new function the generates grammar
prefixes
new 7a175a8 Passed first unit test for grammar prefixes
new 38223d3 Passed tests for generating grammar prefixes
new 13d76ae Passed tests for generating list permutations of length k
new 8a6b752 Starting on adding support for LR k > 1 parser
new 069bf34 Added test for new helper function list of symbol
new 76e30f1 Sorted lines in test file
new 06f8d37 More work on debugging LRk parser with k > 1
new 517ed12 Passing some more unit tests after refactor
new 98c9d94 Debugging parse with look-ahead > 1
new 172d530 Improved handling of production LHS to enable multiple
symbols
new 2b0d5b8 More debugging
new 640feed Passing all tests for canonical LRk Parser with k = 1
new 446cbe9 Refactored unit tests and separated k=2 case
new e5aa179 Some fixes for LRk parser k > 1
new 2a9a23e More debugging
new 54857e4 Added failing unit test for translation via LRk
new ddd5967 Passed test for nested translations
new a96ab3a More debugging LR k > 1
new d604092 Added failing unit test for e-free-first function
new bc817d1 Passing all tests for k=1 again
new fbc8f8b Removed dependency of hash-table of terminals for LR
parser
new c8c130e Improved error messages
new 783ea61 Added translation-symbol-table to incremental parser and
translater
new 439d894 Passed all LR k=1 tests with more work on generalized
solution
new 47fb35e More work on a more generalized LR Parser
new 01173e2 Added EOF identifier, passing all unit tests
new 9b6e076 Using lowercase epsilon for e-identifier comment
new 870eca2 Reduced depth of GOTO-table to always use one symbol
new 5032a77 Fixed typo in Lex Analyzer error
new a516e3f Started on new test for LR(2) Parser
new 5b45b2b Improved comments
new b2f1d7a More debugging k > 1
new 3807a72 Added failing unit test for LR-items k=2
new 36701c0 Optimized closure algorithm to only use possible
next-symbols instead of iterating all symbols
new c2d2d0d Fixed FIRST calculating when building lr-item sets
new a76bb98 Added comments
new 80f99cf Added failing unit test for lr-items set k=2
new 16f6586 Fixed bug in lr-item generation were look-ahead was
disregarded
new 6845262 Passed GOTO-tables k=2
new d49f74f Added failing test for action-tables LRk parser k=2
new 53ae129 Commented out useless code
new e1315c3 Updated so E-FREE-FIRST(x) only uses E-FREE-FIRST on
first symbol
new 03ca2e9 Look-ahead generation now supports EOF symbol
new d1f4682 Added a function that converts a FIRST-item to a
look-ahead item
new 07320b9 Updated test-case k=2
new fe05328 Passed unit tests for LRk parser k=2
new b2193b2 GOTO-items now only contain one symbol in parse function
new 40473d3 Fixed bug with data in full look-ahead in parse function
new a796d8d Added another passing unit test for k=2
new 06c09bc Removed commented-out code
new 3a0d4cd Added translation test for LRk=2
new d147355 Fixed a bug in processing production RHS when loading
symbols
new 40907b7 white-space fixes
new 3e096f7 Improved translation handling for each production
new 96cd5de Improved validation of grammar structure
new 37d9fcb Improved documentation
new 24e96cb Improved description of LRk
new 16bb2d8 Added translation example LRk parser
new 56363c1 Fixed last TODO items
new b80fc6e Updated README
new 0f8aa1d Updated LRk README
new 3563720 Updated docs about lexical analysis
new 08b696f Fixed typo in doc about token
new 1b9d8db Improved wording about lexical analysis
new bbdbd18 Started on test for LR Parse k=0
new 8e3084b More work LRk parser k = 0
new 1879cb0 Merge branch 'master' of
git.cvj.se:/home/git/emacs-parser-generator
new 58190dc LR Parser k=0 building correct LR items
new 412fd2a Passing generation of GOTO-table for LR(0) grammar
new bc23604 Fixed look-ahead, first and e-free-first with k = 0
new 175a579 Passed test for generation action-table LR(0) grammar
new 3615fad Fixed issue with lex-analyzer in LR(0) Parser
new bd887ff LR(0) Parser passing translation test
new cbf9e07 Added documentation about LR(0) Parser
new 3e9b4ee Improved README
new f0cd9f6 Started on test for export parser feature
new d173c1e More work on exporting parser as code function
new 732cd78 Constants and variables are exported correctly
new 852f969 Merge branch 'master' of
git.cvj.se:/home/git/emacs-parser-generator
new 500d082 Added Lex-Analyzer Rest Function to export
new af71d8b Lex-analyzer is now exported
new 2920af5 Parser is exported but helper-functions are missing still
new cecf8fd More TODO items
new cf42e67 Exported parser passes test
new e904d46 Moved LR-parser exporter to stand-alone file and added
documentation about export
new ecbbf21 Added test for exported translator
new 688e685 Lex-analyzer index is now buffer-local variable
new ac7207a Passed translate test on exported parser
new 0702765 Added incremental unit test for exported parser/translator
new 0d6d46d Debugging incremental issue with exported translator
new 1e0418d Incremental parse and translate of exported parser passes
tests
new 099304e Some coding-styling fixes
new 5a2dbb3 Removed unnecessary debug outputs
new 7584880 Added failing unit test for calculating FIRST in grammar
with cycles
new d0d3201 FIRST calculation now handles cyclic productions
new 99b531f Made some cpu complexity optimizations
new fa43f05 More cpu optimizations
new c4c68b2 Added progress-indicator to goto-table generation
new f338734 Improved output of progress
new 552c0c5 Using better hash-key for goto-tables generation
new a86c658 Improved output
new 5145cda Improved hash-key integrity for LRk Parser
new a65b652 Added TODO-items
new 586789d Added cache to first calculation
new 17c36f8 Added cache to lr-items for prefix function
new 61dfc74 Added TODO-item
new c886537 Using references for distinct goto-tables to optimize
memory usage
new b6e2e64 Passing tests after memory optimization of LR parser
new 2227cae Moved validation of valid lr-item set to generation of
goto-tables
new 9a3240b Fixed bug with error throwing on false lr item sets
new dcbbdee Started on support for symbol attributes
new 0c1b8b6 Passing tests for symbol attributes
new ea898ce Fixed code-styling
new 04c360b LR-items set validation now supports symbols with
attributes
new 5f13406 More work on supporting LR-grammar with precedence
attributes
new f371e2d Added failing test for conflict
new 06bff4b Improved validation of conflict-resolution using
attributes
new 236a124 More work on resolving conflicts
new ae51103 Passing test for resolving conflict using precedence
attributes
new e56bcff Improved output of productions and action-tables
new ea02245 Improved debug output
new 2eadec5 Shortened long doc comments
new 35d6be3 Added TODO-items
new 4d60ed4 Added validation to context-sensitive attributes
new ce9ae69 Improved comment
new b8a81c5 Added failing test
new 989e79e More debugging
new 43f3bd4 Fixed issue were non-terminals named as emacs-lisp
functions was not accepted in grammar
new 8165c55 Conflicting grammar causes expected error
new 8092c58 Added global declaration to unit test
new 778b96f More work on global precedence declaration
new 0523eeb More work on global precedence
new fb29641 Passing old context-sensitive precedence example with new
structure
new feaa9ff Removed debug outputs
new 0aed7b0 More work on global precedence in LR(k) parser
new 06d23f5 More debugging
new cf01b59 Fixed action-table generation with symbols with
context-sensitive attributes
new b84ed5e Fixed issue with infix calculator translation test
new 928b31d More work on infix calculator
new 6a4b353 More work on translations
new 85d1b49 Infix calculator translation passing some tests
new f449039 More debugging
new 08e9876 Fixed bug with associating a translation to multiple
productions
new f213255 Passed all old unit tests again after translation refactor
new 886af5c Uncommented export tests until refactor is ok
new 99aa5b6 Added more unit tests for calculator
new 34f95b3 More debugging infix calculator
new c6d3ad2 Infix calculator working as expected without precedence
rules
new ae18945 Passing some calculations thanks to precedence /
associativity
new d8fb2da Just white-space fixes
new fce14ea Fixed bug with context-sensitive attributes being lost in
LR-item generation
new bb82646 More debugging
new b040d9b Tests for infix calculator working
new 21948c8 Fixed lex-analyzer to infix calculator test to support
white-space and floats
new 3964649 Added more failing unit tests
new 6e0e781 More debugging
new 2592481 Added TODO notes
new 2c262a4 Added new error when there is grammar conflict in
action-table generation and no precedence comparison function is defined
new 14711d4 Added more debug stuff
new f0f2daa Started refactor of context-sensitive attributes
new 18b2f7b Added context-sensitive precedence to infix example
new a7a9506 Refactored structure of context-sensitive attributes
new 4404424 Added test for parsing context-sensitive attributes
new 7e1d2fb Added TODO notes
new 5a1f09a More work on adding support for production number related
precedence
new 3170e8d Context-sensitive precedence now avoids conflict-detection
new 2ad866c Context-sensitive attribute are now tested through
specified comparison function
new e4658d9 LR action-table generation is now using context-sensitive
precedence resolution for reduce/reduce conflicts
new 6aff9d0 Made TODO notes
new 1be5fda More work on support for conflict resolution
new 9d5df0e More working on trying to get the Infix example working
new 8fb8676 More work on Infix math example, passing another test
new 98ab0e4 More work on precedence logic in unit tests
new 8e462cf Validated generated action and goto-tables after
precedence modification
new 831a6e6 Made a commentary audit of parse according to GOTO and
ACTION tables
new bff0e63 Added TODO note
new 97b5e59 Comparing precedence of last symbol of production with
look-ahead
new 5ff13d2 Improvements in test for precedence
new 6a7343e Started on refactoring precedence table generation
new 8013f69 Unit tests for testing precedence table generation now
passes
new 9c30f34 More work on refactoring conflict resolution
new a8c092d More work on precedence logic
new ded7700 Added more test for infix precedence
new 21fef5c Passing all tests for infix calculator
new c606043 Passing all tests with new precedence generation
new 7a3e653 Added test for testing precedence of context-sensitive
attribute
new aa8a2bf Work on the tests for the exported lr-parser
new 9e8b89b More work on exporting LR-parser
new 3a178ed Exported LR parser now passes all tests
new 4fe014a Updating documentation regarding operator precedence
new 53fb785 Verified examples in documentation, added infix notation
calculator example
new e070522 Fixed broken link in documentation
new 7eb8cab Small fixes to documentation about syntax analysis
new 843bc57 Fixed invalid reference to parser-generator to fetch
translation by production number
new 5cb63eb Improve error message of invalid global declaration
new f9223ea Added a flag to use shift conflict resolution in cases
were precedence is missing
new 5b95baf More work on last feature
new e447145 Added notes about setting to allow default conflict
resolution
new 1b2a150 Added failing test for e-identifier in the middle of a
rule
new aad1a17 Removed unnecessary logic in LR(0) action-table generation
new 201bcb1 Improved notes
new 4da88bf Added another test for e-identifier in middle of rule
new cfa9561 Added TODO item
new 72796d0 Fixed bug with FIRST calculation with multiple symbols
and e-identifiers
new fc48311 Added test for FIRST calculation of multiple symbols and
e-identifiers
new 9eca533 Added test and implementation of calculating FIRST on
multiple symbols were first is a non-terminal that expands into an e-identifier
new aafb3cc Passing test for grammar containing e-identifier in
middle or a rule
new ca21bcd Shortened doc-string
new e157091 Fixed error signaling in invalid LR-parser and generated
LR-parser
new b8de1c4 LR-exporter now supports optional header
new 6733b57 Added feature to move lex-analyzer forward
new e59baa8 Added move feature of lex-analyzer into exported LR
lex-analyzer
new 48f109c Fixed typo in exported LR parser
new af9ad94 Move lexer flag now affecting global state
new 24f3fb9 Lex-analyzer peek look-ahead does not affect global state
new c9906f7 Move order of export of LR lex-analyzer
new f5a5801 Clarified lex-analyzer exporting necessities
new 231bf85 Using (signal) instead of (error) in LR-parser and
exported LR-parser when encountering syntax error
new 63bd6c0 LR-parser now has SDT as optional feature to speed up
plain parses
new 9c41807 Code-styling fix
new 2481361 Improved readme
new 0a3f5f5 Added test for LR(1) PHP 8.0 match grammar
new 3657a68 Merge branch 'master' of
git.cvj.se:/home/git/emacs-parser-generator
new 29568c3 Added support for copyright text in exported LR-parser
new a4c5d9f Syntax-directed translations now have access to terminal
data if any is available
new ee78a6c LR-parser now passes terminal data to SDT for
non-terminals containing only one symbol
new da14fbd Passing more metadata about terminals to SDT
new 428207c Fixed bug with exported lr-parser with partial translation
new 827aa5c Another bug for same thing
new 4a3a51d Added FSF copyright headers
- [elpa] branch externals/parser-generator created (now 4a3a51d),
ELPA Syncer <=
- [elpa] externals/parser-generator b93ab8c 001/434: My initial commit, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator b8faa17 002/434: FIRSTk and EFFk working, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator ee0a623 003/434: Added TRAVIS and LICENSE, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator f5bfa40 004/434: Fixed typo in README, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator 58798c8 010/434: Starting on calculation of valid LK-sets for a valid grammar prefix, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator f9c8348 008/434: Updated Travis and Makefil rule name, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator 5f65cfc 015/434: More refactoring, using lists instead of string as grammar data type, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator f2791c1 022/434: Passed unit test 3 intermediate grammar, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator 5d9b98c 011/434: Added functions to validate G and k and tests, ELPA Syncer, 2021/11/29
- [elpa] externals/parser-generator 356720c 030/434: Passing all unit tests using new data structure, ELPA Syncer, 2021/11/29