5 ms·
Generalized LL Parsing - http://dotat.at/tmp/gll.pdf http://dotat.at/tmp/gll.pdf Parse ambiguous context-free grammars in worst-case cubic time and unambiguous
by PeCaN 11y ago
Generalized LL Parsing - http://dotat.at/tmp/gll.pdf http://dotat.at/tmp/gll.pdf
Parse ambiguous context-free grammars in worst-case cubic time and unambiguous grammars in linear time, with an intuitive recursive-descent-ish algorithm. GLL is the future of parsing IMO, more powerful than packrat/PEG parsers and comparatively easy to write by hand. It also handles ambiguities more elegantly than GLR, IMO.
Dependency-Based Word Embeddings - https://levyomer.files.wordpress.com/2014/04/dependency-based-word-embeddings-acl-2014.pdf https://levyomer.files.wordpress.com/2014/04/dependency-base...
word2vec algorithm with context based on linguistic dependencies instead of a skip-gram approach. A quick explanation is skip-grams give words related to the embedding (ex: Hogwarts -> Dumbledore) and dependencies give words that can be used like the embedding (ex: Hogwards -> Sunnydale). It's not meant to replace skip-grams, but augment them; skip-gram contexts learn the domain and dependency-based contexts learn the semantic type.
- drostie 11y agoThanks for the first of these, I've put it on my "eventually if I ever get serious about writing this programming language" list.
- PeCaN 11y agoHeh, that's where it is on mine too. :) One of the things I find particularly nice about GLL is that it's much more friendly to parser combinators[1] than GLR. (LR-family parsers, and bottom-up parsing in general, is notoriously difficult to implement in a way such that parsers can be combined, and the result framework would be rather awkward to use.) 1: Indeed, it's already been done: https://github.com/bawerd/gll.js https://github.com/bawerd/gll.js https://github.com/epsil/gll https://github.com/epsil/gll https://github.com/djspiewak/gll-combinators https://github.com/djspiewak/gll-combinators