Comments (4)
Imported from trac issue 18. Created by kowey on 1970-01-01T01:20:48, last modified: 1970-01-01T01:20:48
from geni.
Renamed from monad to environment. I don't care how it's implemented, I just want a less error-prone way to do unification. The standard approach of unification variables pointing into a common environment might be better.
from geni.
Phew, the way we're doing unification really is dreadful. And an environment doesn't sound so hard either.
from geni.
OK, have a rough idea what to do maybe.
So problem is bugs caused by forgetting to replace, or not replacing on parent structure
Possible solution: anything with unification variables must have an environment (Var to Value). Let's call it U a
. Unifying is U a -> U a -> U a
That is rather than running the replacements, you just have to swap the environments out. But forgetting to swap the environments can still be bad. Maybe this is where something like monads or something could be good? If you have some
data BigThing = BigThing
{ small :: SmallThing
, etc :: Etc }
When you do unification on the SmallThing
, one way or another we need to make sure the rest of BigThing
receives the right values. So nebulous idea is that you would do unify :: U SmallThing -> U SmallThing -> U SmallThing
and somehow go from there to U BigThing
. How do we ensure the right environment?
from geni.
Related Issues (20)
- empty strings should be quoted when producing geni output HOT 1
- geni accepts malformed rootfeat HOT 2
- geni: Prelude.foldr1: empty list HOT 2
- separate trash pile for last operation performed HOT 1
- remove IAF code HOT 1
- support subsumption with unification variables in relations HOT 1
- elementary tree semantics should be unification of tree schema and lemma semantics HOT 1
- hide GenIVal constructor HOT 1
- mismatch between order of items in realisations summary tab and realisations debugger tab HOT 1
- scrollbar broken in results tab (summary) on MacOS X HOT 1
- display number of results found in GUI and console mode... HOT 1
- results out of order when pre-terminals have more than one terminal HOT 1
- clicking 'load' in config gui has no effect HOT 1
- avoid crashing if ViewTAG not found HOT 1
- allow structured feature values
- dumping lexical selection doesn't round trip
- gui doesn't remember show feature state when switching items HOT 1
- geni doesn't always remember to do top/bot unification HOT 1
- geni-util report should generate a text summary
- Add upper bound to `errors` dependency HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from geni.