Page:Sacha Chua - Emacs Chat with Carsten Dominik.djvu/17

This page has been proofread, but needs to be validated.

Carsten: Yes. Maybe it could be done in a way that it actually is in the file, is a link, and then we use the attachment feature for Org Mode to put it somewhere in a related directory. We could think about this.

Sacha: Yes.

Carsten: That's great.

Another thing I'm using are the tables in Org Mode quite a bit, to capture a little bit of data, to throw it around, if I don't feel like using Excel for this but just something smaller.

Sacha: Every so often, I go through the Org manual and the source code. I was like, “Oh yes. Hey, look, we can do column equations and other things here. Holy cow!”

Carsten: Yes, that is possible. The table editor, I think, needs a rewrite. I've looked at that code recently because there was a bug report. I wasn't able to fix this bug because it was so convoluted and hard to maintain. There's this one thing which I think is great in Emacs and which I have used too much sometimes. In Emacs, if you have dynamic scoping, you can basically write a let statement and assign a variable, make a variable and assign a new value to it, and then call some other functions. In this way, you change the background in which this other function will work. It's not a parameter which you actually hand to that function, but it changed the background, and then you can make it something crazy. This can be really powerful, but of course, also dangerous, because it reduces maintainability if you use these hidden ways of communicating to another function.

I've made use of this sometimes too often. I think in the table editor, that has caused problem. I'm thinking, it's a one project if I ever have a chunk of time, like a week or two where I don't really have to do anything else, to just sit down and rewrite the thing in a cleaner way. That will be fun.

I find programming in Emacs Lisp totally relaxing. Did you also have this when you were doing so much? It's like a cooling off and hanging down. Once you get really proficient in it, it becomes an easy and very engaging and nice little exercise. I just use this as a way to relax sometimes.

Sacha: That's awesome. Yes. I totally get where you're coming from. It's great because you can easily do things. You can reach out and you can combine