Thursday, 18 January 2007

misc stuff

freewriting

Hey, I think I'm liking the freewriting thing. This time I actually wrote about work related stuff, although in the same mental dump format, don't think, just purge. And what came out of it is a bunch of questions on yang1991ffs. Questions are good in that they are a whole lot more precise than my general HUH? Questions are a recipe; they say, if you can answer me, maybe you'll understand how it all fits. Another reason I'm happy with it is that I actually found the way to explain what had confused me about SFG all this time. (This might sound similar to yesterday).

The confusion behind SFG is that there are two kinds of parallelism: parallel networks, and parallel traversals. What's nice about this is that it also accounts for my many other confusions. You can make a table showing
parallel networksparallel traversals
hierarchy of choice points
hierarchy of regions
conjuction/disjunction
conflation


The other thing that helps me is to try and translate things into some language I know better:

type NodeName = String

data Region
{ tagTree :: Tree N
, mappingTable :: Map Ikkiwubble NodeName
, functionalRoot :: NodeName
, conflationSet :: [[Ikkiwubble]] -- ^ self explanatory
, expansionTable :: Map Ikkiwubble Region
, unrealisedFeatures :: [(String,String)] -- ^ not sure about this
, subRegions :: [Region]
}


(Oh yeah, ikkiwubble instead of ixiwubble; it's just easier to say)

I guess my main issue now is figuring out exactly what happens when you hit a preselect operator. How do you know what part of the input specification the ikkiwubble (function), say agent corresponds to? One guess is that if you look at the input specification as a recursive feature structure, then an ikkiwubble simply corresponds to one of the features (really simple).

I was also initially confused about the idea that there is an hierarchy of regions, but then I found an analogy which made it all make sense. You know how you're writing a program, and you call fork() to spawn a new process? The new process is the child of the parent process, right? There ya go, instant hierarchy. Yes, you can have an hierarchy of parallel traversals. Reconciling the idea of parallel with hierarchical isn't hard after all.

Oh well... I still don't get it yet. I dunno, maybe I shouldn't be going too deeply into this. It's just annoying because now you actually have enough meat to work with; there is enough material for you to actually understand what's going on. Hmm... actually, maybe I should just wait for his PhD thesis to arrive. Maybe that will lay it out all nice and slow.

category theory

Attended a short course on category theory. There's two more sessions to go. I dunno... I'm just here as a random Haskell programmer, trying to see what this could do to make me a better programmer. So we've got a reeeeaaaally abstract thing that generalises over a bunch of less abstract stuff. But being a non-math guy, I don't even know what these less abstract things are, so is there a point? But maybe this would give me sort of a top-down view on things... maybe it'd be like speaking Esperanto as your mother tongue?

hunting for overgeneration

Had a discussion with C on hunting for overgeneration. Yeah, the programming and the fun let's-hash-some-ideas-out-on-the-whiteboard thing; these would be the high points. Reading and writing, basically the low ones. However, understanding something that you've been reading on and off for two years and FINALLY getting it, that's a mega high point.

No comments: