Become a fan of Slashdot on Facebook

 



Forgot your password?
typodupeerror
×
User Journal

Journal Journal: Apache, Perl and R... Oh My!

So /. appears to have added a blog, so I'll give blogging another shot (I tried another one but it always got really cynical and political. Hrmmm)--- but technical this time (hey, its /. after all and I stopped reading Katz's articles many moons ago).

So, lately my life (technical life anyway) contains exactly three things:
        - R (http://www.r-project.org)
        - Apache (you know where this is)
        - Perl (in the form of AxKit)

The Apache and Perl stuff is not really related to the R stuff, except that when one pisses me off I work on the other.

R
------------------------------------------------------
I basically like R, though I'll be happy when it picks up a stronger object model in, I'm guessing, the next 1.x release (as opposed to 1.3.1, which is a maintenance release). Right now I'm writing an interface to COM from R to help out a development environment for doing microarray analysis that I'm working on (I really really want to get something out before the semester starts, but its unclear how much of it will actually get working-- the storage model has never been satisfactory. I think I might need to attract the attention of others to breathe some new ideas into the design). Since I'm using IE at the moment (though I'm looking at Mozilla again, Komodo 1.1 really impressed me) I need the COM server to help me interface with R from the Javascript side. But what I *really* want is to be able to write COM servers in R directly.

I don't think I can do that right now, the dispatch would have to break the current object model-- not so elegant. So I'm thinking of using an XML format for describing 'modules' (COM-like objects without IDL descriptions) that could be used from the Javascript side. Since IE is embedded you would call something like external.getService("myservice") or something and it would give you the R representation. I need to be able to make singletons for handling the backend data as well as a way from getting the services from other R scripts. I think I can do all that in the next week (I hope I can anyway) now that the R COM server is completely separate from the VC portions of the code (they really don't like each other).

I really want to get *something* out. It would make me feel better to actually have something to show for my work.

Apache+Perl
-----------------------------------------------------
The other stuff I work on is some reporting stuff for a .com-- I won't say which. Mostly this is an interface to some statistical data that gets thrown into a database each night that tells us some stuff. It's really not *that* complex-- mostly addition with a little division thrown in for good measure, but there are lots of cool things I can do for people.

At first I was just using the straight up Expat-based XML parser stuff from Perl running as a CGI in Apache (the server didn't really belong to me so I didn't feel I could just go in and install mod_perl et al properly-- I have my own now, but we'll get to that). Yeah, yeah, Matt Sergeant hates me now, I know. But whatever, it was working pretty well-- I abused processing instructions to integrate my Perl code into HTML (I hate PHP for no real reason-- guess I'm just getting old) and then just started adding features (like include codes and rudimentary database stuff) as I needed it. All in all, it turned out pretty well. Now that I've switched over to generating XML dynamically from the database and then transforming it with XSLT it isn't as important-- but I may use it on the backend XML generation 'cause I'm really not sold on the XSP stuff--- it hasn't really been working for me. Even with the Taglib Helper stuff it's been a complete pain and the Taglib dox haven't really reached a useful state (and I've seen contradictory info on the mailing lists).

In general though, I'm really happy with AxKit (after it stopped segfaulting, but that appears to have been Solaris' fault) so far (the XSLT stuff is working beautifully, XPathScript-- nice but its easier to sell NTTs (Non-Technical Types, not the Japanese Telco) on stuff they see on the bookshelf @ B&N ya know?).

Anyway, just some quick background info to get the technical ball rolling, hopefully I'll actually get in the habit of making entries this time 'round-- perhaphs as long as I keep it purely technical. (I should also use it to store 'notes to self' I think... /. needs a post-it feature :-))

Right, sleep time.

Slashdot Top Deals

To be awake is to be alive. -- Henry David Thoreau, in "Walden"

Working...