Reproducible Research, Literate Programming and Inter-Language Programming with Babel

Babel is about letting many different languages work together. Programming languages live in blocks inside natural language Org-mode documents. A piece of data may pass from a table to a Python code block, then maybe move on to an R code block, and finally end up embedded as a value in the middle of a paragraph or possibly pass through a gnuplot code block and end up as a plot embedded in the document.

My current approach is to use multiple languages, build scripts, intermediate files to share data, and finally weave it together inside of LaTeX. The babel way looks intriguing, with excellent support (via Emacs modes) for numerous languages. Very exciting.

2014-02-14

This paper might pique your interest.

CB750F: Day 35: Totally Idle

Left unable to bench sync the butterfly valves, I finally pulled the bolt out only to find that it was in clearly bad shape. When the nut reaches a certain point, it just won’t go any further. On my carbs, the nut is threaded, and so too is the mounting point on the rod (that the butterfly valves attach to). Running the nut up and down the bolt (viced in) cleaned it up, but when it goes through the rod it gets “screwed up” again. Looking closely you can see the rough edge after going through the mount point on the rod.
20130516_182613
20130516_182622
20130516_183131
20130516_183136
20130516_183230
20130516_185031
20130516_190744
20130516_201522
20130516_201918
Kind of a funny way to end the semester, but knowing that it will get repaired “right” makes me feel pretty happy. On the way out noticed a nice placard on the door, too.
20130516_205436

ISLISP

The ISLISP programming language is a member of the Lisp family of programming languages. It attempts to bridge the gap between the various incompatible members of the Lisp family of languages (most notably Common Lisp, Eulisp, LeLisp, and Scheme) by focusing on standardizing those areas of widespread agreement. It is a small language, closer to the size of Scheme than to Common Lisp, for example.
The most recent change to the specification occurred in 2007.
The design of ISLISP had these design goals:

  • Compatible with existing Lisp dialects where feasible.
  • Provide basic functionality.
  • Object-oriented.
  • Designed with extensibility in mind.
  • Gives priority to industrial needs over academic needs.
  • Promotes efficient implementations and applications.

(via islisp.info)
John Cowan mentioned it on scheme-reports, so I was curious.

CB750F: Day 34: High Idle

Today I received my set of Vessel JIS screwdrivers and at the shop the screws on the carb shrouds didn’t slip once they are pretty great.
20130514_144843
In preparation to start the bike I re-attached the exhaust system and torqued it all to spec (98in/lb header bolts, header-pipe attachment 16ft/lb, rear shock 18ft/lb, hanger 30ft/lb. Some of the bolts didn’t specify a spec, so Pat told me about this guide to estimate it and I used that. The exhaust headers may get replaced someday. A u-bolt holds the headers to the pipe so I turned that inward to be safe.
20130514_163623
20130514_165316
20130514_170236
20130514_171036
Got the fuel line attached and tightened up; found a nice hand-tool to compress that thing, human finger (at least mine) can’t do it.
20130514_171731
20130514_173726
The old flasher relay had to go, it didn’t work anymore. Finally got around to starting it and it had a super high idle.
20130514_173758
20130514_173846
We checked for a tight throttle cable, air leaks with carb spray, and finally just pushed on the throttle body assembly to see if it was stuck and nope, so we had pull them out again. If you look at the picture you can see the butterfly valves are not aligned. Measuring them with a gauge they were totally off. The bad thing was they just would not stay adjusted no matter what, so class ended and I will tackle it more on Thursday; but before that I reinstalled the chain protector.20130514_184955
20130514_185004
20130514_185040
20130514_192206
20130514_204127