Monthly Archives: August 2007

The Namaste Meditation

… but when I pulled on one of those threads, I unravelled the tapestry of my life.

— Jean Luc Picard, Star Trek TNG, “Tapestry”

I just got back from a camping trip with Jude, Paul, Travis, and Cami. Jude left the house again, and Namaste, who had been home all weekend, just stared at me. This is a usual occurrence; he does it just to fuck with me, to make me self-conscious. We got to talking about his philosophy of immediacy and nonpermanence, the best way to describe it being “if I die right now, will I die happy?” (to be clear, the philosophy is not about thinking about whether you’re going to die all the time, it’s just a quick way to describe it).

In some of the fidgety silence within the conversation, he said “you want to do something right now, but you’re not doing it”. I immediately just lay my head back and relaxed. That is what I wanted to do, but, as I said to him later, it doesn’t feel like doing anything (but it is). This got me into a meditative state of mind that he first introduced to me. The way I describe it is, say you’re on a walk (or doing something—anything really). Turn off your conscious mind: if you feel a pull to the left, go left; if you feel like stopping and sitting in the bushes, stop and sit in the bushes. Whenever you hear yourself censoring your own behavior for whatever reason—I shouldn’t go to Wendy’s because they don’t have very good food there—just shut it up. Don’t listen to it. Don’t necessary do the opposite (actually in Namaste’s version he would do the opposite), just don’t listen to it and do what you feel anyway.

We continued talking in bursts with long silences in between. Namaste said “I don’t feel like talking to you anymore” (this was not offensive in the least in the context of the philosophy), and I said “I feel like going to Snarfs”. So I got up and glanced at my computer, about to compulsively check my email, then caught myself and continued on to snarfs without looking at my mail.

But I couldn’t avoid the fact that I was already in this somewhat meditative state of mind, so I ended up going on a pattern break walk.

I’ll just describe the walk, interspersing the realizations I had as they came up.

Less than a minute after I started walking, I, for whatever reason (there are no reasons on such a walk), thought about Karlin. I closed my eyes and visualized some of the mundane wonderful experiences we have. I pictured her sitting at her computer as I first arrive at her house and touch her shoulders. I pictured us cuddling on the couch after her parents have gone to bed watching some entertaining B-movie. And immediately a huge smile came across my face.

At this point, I started walking left toward Snarfs, and my thought process went something like: “Maybe I should go right. No maybe I should go left because I usually go right here. No maybe I should go right because that was the first thing that came to my mind.” Finding myself in this loop, I just sat down on the grass right where I was.

At this point I noticed the immense smile on my face and the great feeling I had. There is an NLP technique for perception where you establish a strong rapport with someone and right after you do just notice how you feel. Name it, but don’t give it a name like “anger” or “frustration”, just give it a unique name that doesn’t have meaning for you. That way you don’t distort it with your own previous conceptions about what that word means. So I did that: I called the smile and the feeling “flunderclap”. It was essentially the kind of permanent smile that comes up when a date is going really well. I would call it “love”, but that has way too many other meanings. So it was just “flunderclap”.

I suddenly felt like walking again. I got up and started walking.

It was during this next walk that I really started “voomphing” in a sense. I remembered Namaste’s recent article where he talked about the sort of experience I was having now. This was a touching article and had a big effect on me. I then realized that the main reason it had an effect on me is because I had an emotional investment in Jenn (who is moving away, um, tomorrow :-( ). But it was unexpectedly enlightening rather than jealousifying. I understood that the reason I was doing this walk right now was because of that post.

And then the image of the hikes I did with Jenn enter my mind, together with the idea that she's moving away. The thought crosses my mind that that was Jenn's whole purpose in my life, to get me emotionally invested, so Namaste's article would have an impact on me, so I would do this walk, right now. I'm not saying anything like "everything has a purpose", or its opposite, I'm just noticing that strong sensation of the events and people in my life meshing together. In particular, I felt Jenn just vanish from my thoughts, a complete release of what I had invested in her.

I'm closer to SubWay now (I was still looking for a place to eat, you know) than Snarfs, and I feel like lying down again. But I'm on a sidewalk next to some bushes. What do I do? That's right, lie down in the bushes. I had some fun playing with my brain, trying to completely decorrelate all my senses: my hand feeling one of the thorny branches, my eyes looking off into the sky, my ears hearing the cars going by on a nearby street, my nose smelling the green air around the bushes. I just lay there staring off into space for at least five minutes, people walking by (I found myself wondering if someone would stop to see if I was okay) and all.

I immediately felt an urge to start walking back the way I came. At this point my hands started moving as if I were playing the piano, and an elaborate tune started flowing through my body and out my mouth. Usually I'd just let it go for a little while and then stop because I got caught up in something else. But now that there was nothing else to get caught up in, I just kept going, hearing it more and more vividly, my fingers playing along with it.

And during this the largest ephiphany came to me. With working at NetDevil, worrying about doing well in school, feeling bad that Karlin forgot my birthday, getting emotionally caught up in Jenn, even playing in my wonderful improv band, worrying about having enough sleep to function the next day, worrying about my health, I had lost who I was. I was entangled with the usual stresses and pressures of life, living tomorrow by tomorrow rather than today by today. I had forgotton that I am a passionate composer, and that Karlin is an incredibly important and bright part of my life (meanwhile the flunderclap comes back). All the while I kept singing and playing my tune.

I have stopped composing because I know that composing a song is at the very least a six hour investment for me, and I usually get inspired at about 10 at night, and I don't want to be tired for work the next day, so I shut it down. I have associated the word Karlin with my feelings of hurt and abandonment that I recently felt, and forgotten who she was as a person and as my friend.

I continued the rest of the walk with my open mind and going where I felt. It led me to a fancy Indian restaurant, "The Royal Peacock", where I comfortably ate alone (I generally have a huge anxiety about eating in a nice restaurant alone). I closed my eyes and moved my hand across the menu, opened my eyes and read the name of the dish under my finger. That was what I was going to have. It happened to be a spicy dish with plenty cilantro, my most hated seasoning, but I ate it anyway and it was pretty good actually. Instead of focusing on how much I hate cilantro, I just appreciated the flavors of the meal, finished after an hour, and walked home.

All along my way home I felt the tapestry of my life reravelling, bonding with itself, defining who I am as a person. I saw everything coming together, from the mention of cilantro earlier and my experience just then, to my reminding Namaste of his meditation, causing him to remind me of his meditation. I feel wonderful right now, as if I know exactly what I'm doing with no relation to any sort of logical plan.

And I did remember to anchor flunderclap when it came up. :-)

I’ve Got a Hankering for Some Anchoring

Yesterday, Namaste introduced me to Derren Brown (here are three interesting videos), a “magician”, I guess. I watched videos off of TVLinks and Google video for all of six hours (stayed up till 5am, ugh, and I’m a workin’ man), and became dramatically inspired by him and interested in Neurolinguistic programming and hypnosis.

I have been practicing mirroring all day to make it more natural to me, and learning about eye movements and brain activation and observing those together with linguistic patterns to find out people’s preferred representation. It is a very interesting experience, so closely people watching.

Tonight, I thought I would try something on myself. I put on a bath to candlelight (something I don’t normally do—I prefer “sensory deprivation” baths) for a good relaxing mood. The bath water was almost too hot, but not quite. I sat in the bath for a little while just relaxing, and then I sat up against the back of the tub, so that my back was touching the cold wall. My posture generally isn’t very good, so I had to tense up some back muscles to keep my back and head up there.

Then I slowly went down my body parts and felt what they were experiencing, and then releasing any tension in them. I started with my forehead, then my eyes, then my nose, mouth, shoulders, upper arms, lower arms, hands, chest, you get the picture. I spent probably 60 seconds or so on each one (just an indication of the pace, of course I wasn’t timing it) except my shoulders, which I spent much more time on because it was difficult to relax them. After a few attempts, I was sitting up straight with my back muscles (along with much of my upper body) relaxed. That felt good.

After reaching my feet, I just let my body do whatever it wanted. It flopped around, first bending forward putting my hair in the water. I think I leaned forward more than I ever have; I’m not terribly limber in that part of the back. I had to override when I got water in my nostrils. I sat up straight (keeping my eyes closed and still focusing on my senses). Then I bent to the right, my head completely relaxed against the right wall. I was essentially a ragdoll. I just basked in this for ten minutes or so.

Here’s the interesting part. I let myself bend down until my nostrils were almost in the water again, completely relaxed. I folded my hands together and pressed down on my knuckles quite hard. I did this because it is something I don’t normally do—it’s not an ordinary gesture. I held it for about four seconds and then released, and then sitting up straight again after I released. I said aloud “you’re awake”, opened my eyes wide, stood up and stretched.

I sat back down in the bath, allowed myself to relax a bit again and let my head flop around. It wasn’t nearly as floppy as before I stood up though, it was just vaguely relaxed. There was a little tension in my shoulders. I then recalled my anchor (folding my hands and pressing), and to my dismay nothing happened. I had anchored that state, why didn’t I re-enter? After about four seconds I released my hands.

Right after I released my hands it happened: my body wilted into the bathtub, my butt sliding all the way to the middle, my head swooning to the left resting on the left edge of the tub, the tension in my shoulders completely gone. I was incredibly happy and excited that my anchor worked! And still I could barely move my body. It wasn’t so much as a “try to sit back up and unable to” thing, but rather my mind kept pre-empting any attempts of sitting back up. I would think to myself “okay, sit back up” and then instantly after that, almost interrupting-like, I would think to myself “nah”. My body stayed completely relaxed and it was a wonderful, euphoric feeling. Only after I said aloud to myself “time to get up, you’re awake” was I able to convince myself to sit back up straight.

I recalled the anchor two more times just to experience it again. It was exactly the same each time. I didn’t spend so long in the relaxed state the next two times because I was too excited to see if it would work yet another time. And still, I couldn’t get up until I said something aloud.

I got out of the bath with a huge smile on my face and told Namaste about the experience. As I was describing it, I made anchor gesture with my hands and pressed. I felt myself relax a little; it wasn’t a total body relaxation like in the bath, but it was there a little. Environmental factors have a big impact, as in, it may not work very well if I’m not sitting in the dark in warm water. It could also be that my concious mind overrode and prevented me from collapsing on the floor in front of Namaste.

I’m about to go to bed. I’m going to lie down, recall the anchor, and see how long my conciousness lasts after that.

What a remarkable experience!

Haskell State Accessors (second attempt: Composability)

Last week I introduced some constructs to make programming games with Haskell easier, mostly the idea of an accessor for dealing nicely with highly stateful functions. The (refined once) abstraction looked like this:

data Accessor s a
    = Accessor { getVal :: forall m. MonadState s m => m a
               , setVal :: forall m. MonadState s m => a -> m ()
               }

The theory was, you had your global state data structure, and you could define accessors into pieces of it. So for example, if you had the following state:

data Foo = Foo { p1score_ :: Int, p2score_ :: Int }

You (or a TH module) would define:

p1score = Accessor (gets p1score_) (x -> get >>= s -> s { p1score_ = x })
p2score = Accessor (gets p2score_) (x -> get >>= s -> s { p2score_ = x })

And then given the Accessor abstraction you could do stuff like define a := operator for readability and whatnot. I was proud that you could write accessors that accessed things other than the top level of the data structure.

But something still wasn't right. I wanted to be able to do something like a.b.c in OO langauges, where a, b, and c were accessors. So here is my new Accessor abstraction:

The idea is that an Accessor is an object which accesses a value of type a as a function of a value of type s (I call it s for state, the typical value). But it no longer has anything to do with a monad, it's an abstraction simply for extracting data from other data. The new signature is:

data Accessor s a
    = Accessor { getVal :: s -> a
               , setVal :: a -> s -> s
               }

getVal retrieves an a from an s, and setVal inserts an a into an already existing s.

UPDATE: I require the following laws to hold in order to ensure that this is actually behaving as an accessor:

getVal a (setVal a x s) == x
setVal a (getVal a s) s == s

As usual in Haskell, this simplified version is much more powerful than the more complex one above. In particular, we may define a composition operator:

(@.) :: Accessor a b -> Accessor b c -> Accessor a c
f @. g =
    Accessor { getVal = getVal g . getVal f
             , setVal = c a -> setVal f (setVal g c (getVal f a)) a
             }

That is to say, @. takes an accessor from a to b and from b to c and generates a way to access c from a, bidirectionally.

We may also define the previous State monady getVal and setVal like so:

getA :: MonadState s m => Accessor s a -> m a
getA acc = fmap (getVal acc) get

putA :: MonadState s m => Accessor s a -> a -> m ()
putA acc x = get >>= put . setVal acc x

modA :: MonadState s m => Accessor s a -> (a -> a) -> m ()
modA acc f = fmap f (getA acc) >>= putA acc

Given the appropriate (automatable) definition of accessors for foo and bar, we can do things like this:

data Foo =
    Foo { foo_ :: Foo
        , bar_ :: Int
        }

modA (foo @. bar) (+1)        -- increment foo.bar by 1
liftIO . print =<< foo @. foo @. foo @. bar

I plan to write a TH generator for such accessors in the near future.

Here is a test demonstrating the idea and showing that it can work.