Posts Tagged ‘Pola’

Back from Calgary

June 26, 2010 in Research | Comments (0)

Tags: , , ,

Check out the pic­ture gal­lery. Even though it was all cat­egory the­ory, and con­sequently I can fol­low almost none of the other talks, it’s still a won­der­ful con­fer­ence to go to. It’s a nice atmo­sphere, a good mix­ture of grad stu­dents, pro­fess­ors and pro­fess­ors emeriti.

After the con­fer­ence I stayed in Cal­gary for another couple weeks work­ing on my thesis and going through bounds infer­ence in detail with Brian. Unfor­tu­nately, and excit­ingly, we found a big prob­lem with the mix­ture of coin­duct­ive and induct­ive recur­sion which can take one out of poly­no­mial time. I may write on that more at some other time, but only after I think of a good way to describe it, at which point the first place it will appear is my thesis.


FMCS

June 10, 2010 in Research | Comments (0)

Tags: , , ,

The fol­low­ing ffffff­fuuuuuuuuuuuu describes most of my life for this week:
Problem?

I’m fly­ing out to Cal­gary Sunday morn­ing and then head­ing to Kana­nas­kis for FMCS. My code is already work­ing for many cases, but it’s not as com­plete as I’d like it to be. I’d like to do a proper demon­stra­tion of bounds infer­ence when I give my talk. It’s a pretty laid-​​back con­fer­ence so, truth be told, even if I don’t get it totally work­ing by then I can still just demo what I have, or just not demo at all.

I went to FMCS once before, in 2004 at the end of my under­grad. It’s a very nice con­fer­ence, less formal than most, which makes it a lot more fun and a lot more pro­duct­ive, I think. After the con­fer­ence I’ll be hanging around in Cal­gary for another week or so work­ing on my thesis and hanging out with the par­ents. Good times.


FMCS

May 28, 2010 in Research | Comments (0)

Tags: , , ,

I’m going to be going to attend­ing FMCS 2010 in Kana­nas­kis — not far from Cal­gary — in a couple weeks. I’ll be giv­ing a talk on the imple­ment­a­tion of Pola in some capa­city, though I haven’t figured out how broadly scoped or what to focus on.

I’m get­ting pretty psyched about it. The con­fer­ence will be fun if it’s any­thing like I remem­ber FMCS 2004 to be. The loc­a­tion is amaz­ing. Plus after that I get to spend some time in Cal­gary with my par­ents and hanging out with Brian and, prob­ably most import­antly but least awe­somely, work­ing on my thesis.


Itanium

April 6, 2010 in Personal,Research | Comments (5)

Tags: , ,

Yes, I’m a com­puter archi­tec­ture nerd. I expect this won’t sur­prise anyone.

The recent story on Microsoft end­ing sup­port for Itanium (side note: this is hardly news. No one ran Win­dows on Itanium in the first place) rekindled my love affair with the Itanium archi­tec­ture. Every six to twelve months I become infatu­ated with it all over again.

My infatu­ation usu­ally dies down when I real­ize the Itanium is out of reach for mere mor­tals. Some­times I day dream about when I’ve acci­dent­ally stumbled into money and I’m able to afford one. It’s hard to find a new Itanium server for under $30k and play­ing around with the online con­fig­ur­at­ors it’s not hard to run your­self into the half a mil­lion dol­lar range.

Today’s dif­fer­ent, though: today I decided to check out Ebay. Used Itanium serv­ers are actu­ally very cheap. Here’s one for $340. It’s only about 6 or 7 years out-​​of-​​date, too. Being out-​​of-​​date with Itanium isn’t such a big deal since they were never in-​​date to begin with. The pro­spect that I might be able to buy myself one as a gradu­ation present — when I have time to play with it — is exciting.

I won’t bore you with the details of Itanium and why it failed in its prom­ise to be the next big saviour, the one com­puter archi­tec­ture to bind them all. I was actu­ally going to write about why I love the Itanium so much, but before I knew it I’d writ­ten six para­graphs about how beau­ti­ful the archi­tec­ture is and real­ized no one but me would ever care to read it. Suf­fice it to say it’s the nicest archi­tec­ture I’ve ever seen, from the per­spect­ive of someone who truly enjoys writ­ing assembly code, the per­fect bal­ance between expos­ing the archi­tec­ture and hid­ing away the mundane details that some­time plagued RISC archi­tec­tures. Whenever someone fool­ishly asks me about Itanium — don’t worry, I’m usu­ally able to restrain myself — I describe it as “everything SPARC should have been”, SPARC being one of the more eleg­ant RISC archi­tec­tures to date.

For my pur­poses it doesn’t mat­ter if Itanium is prac­tical or pop­u­lar or well-​​fabricated or none of the above since it’s just for my own enjoy­ment. One of the biggest prob­lems is that no one’s man­aged to write a suit­able com­piler for it. That suits me just fine since I’d rather be writ­ing assembly code by hand or writ­ing my own com­piler for it. I’m actu­ally half con­vinced that if any­one actu­ally is going to write a bril­liant com­piler for Itanium, one that intel­li­gently takes advant­age of all its spec­u­lat­ive loads and rotat­ing register win­dows and sim­ilar toys that I like to drool over, it’s going to be a com­piler that has a ser­i­ous leg up in static ana­lysis, maybe for a lan­guage that’s been ser­i­ously restric­ted, for which my research would be appropriate.

Well I’m not so arrog­ant as to think that I can write a com­piler for Itanium where so some of the world’s top back-​​end developers have failed before. Even if fail­ure is nigh guar­an­teed, it would be a really fun chal­lenge, and it’s always more fun when the chal­lenge is inher­ent in the beauty of what you’re work­ing with. I think I may have to ser­i­ously put aside a few hun­dred dol­lars for after gradu­ation so I have this to play with.


LambdaVM failure

January 19, 2010 in Research | Comments (0)

Tags: ,

The LambdaVM pro­ject is actu­ally a really bril­liant pro­ject. It’s a modi­fic­a­tion of GHC to tar­get the JVM. I installed it in Octo­ber of last year and played around with it, feel­ing that it might actu­ally have a place in help­ing spread the gos­pel of Pola.

The thing is I can’t expect people to down­load the source to Pola if they want to play around with it, so I have to provide pre-​​compiled bin­ar­ies. OS X, Win­dows and Sol­aris are easy for me to pro­duce bin­ar­ies for, but then you have to think about Linux, BSD, OpenSol­aris, 64-​​bit Win­dows, etc., on vari­ous plat­forms. Tra­di­tion­ally I have about 6 or 7 bin­ar­ies up there for the most pop­u­lar archi­tec­tures — past releases have been most pop­u­lar with x86 Debian and x86 Win­dows — but every time I make a new release I have to rebuild them all.

So I was hop­ing to have a JVM ver­sion of Pola to put up there as a catch-​​all for archi­tec­tures I hadn’t had a chance to build for yet. While the LambdaVM pro­ject has treated me fant­ast­ic­ally well for little toy examples, it doesn’t do well for Pola. I tried it and it crashed after about 2 minutes after run­ning out of heap space. The stack trace showed it was still doing type inference…after two minutes…some­thing which Pola nat­ively com­piled does in less than a hun­dredth of a second.

I’m sure if I fiddled around with it I could get it sort of work­ing, but it doesn’t seem like a good use of my time, espe­cially since the end res­ult will be huge — the JAR file is 18MB, com­pared to 2MB for an uncom­pressed bin­ary — and many orders of mag­nitude slower and since I still have hopes of gradu­at­ing soon.

Still, the LambdaVM pro­ject is pretty awe­some. I hope it ends up kick­ing some ass.


Pola website in flux

January 5, 2010 in Website | Comments (0)

Tags:

I just dis­covered the Pola web­site has not been work­ing prop­erly for non-​​English users. From a Ger­man user I was get­ting errors like:

ActionView::TemplateError (trans­la­tion miss­ing: de, num­ber, human, storage_​units, format) on line #8 of app/views/attachments/_form.rhtml:

I tracked the prob­lem down to an incom­plete Ger­man loc­al­iz­a­tion file. I’m not really a “web guy” so I haven’t taken the time to determ­ine if my Red­mine install­a­tion is out-​​of-​​date or just mis­con­figured. In any case, after adding the miss­ing storage_​unit entries to the de.yml file and restart­ing the server, it appears to be work­ing now for Ger­man, or at least it works for me when using the Ger­man localization.

I’ll take a bet­ter look at it and fix up the other loc­al­iz­a­tions when I get a chance.


Off to Holland

October 31, 2009 in Personal,Research | Comments (0)

Tags: , , , , ,

I’m cur­rently hanging out at my gate in Pear­son air­port. In a couple hours I’ll be on my way to Paris and tomor­row morn­ing I’ll catch my con­nect­ing flight to Ams­ter­dam and then I take the train to Utrecht to see Jasna’s sis­ter, Ana, and her hus­band, Andre.

Jasna and I aren’t very good with sep­ar­a­tion, though I think this time went bet­ter than most. It could be that it’s a shorter sep­ar­a­tion this time — five days, in con­trast to Jasna’s recent two-​​month trip — or that we’re too tired from last night’s Hallowe’en party to get as worked up. Maybe we’re just get­ting bet­ter at it, though. It’s not like no tears were shed, but I think we did rel­at­ively well.

Unfor­tu­nately today my cam­era bat­tery decided to crap out on me. The upside to this is Jasna lent me her (very awe­some) DSLR cam­era for the trip. I’ll try to keep pic­tures of blondes down to a min­imum. Mostly I’m excited to see Ana and Andre, but I think they’ll be busy most of the time, so I’ll prob­ably ven­ture into Ams­ter­dam at least once to enter­tain myself. I brought the cam­era cable with me, so watch my photo gal­lery in the next day or two for pic­tures to start appearing.

The con­fer­ence — and my present­a­tion there — I haven’t thought a whole lot about yet. I’ll have to dis­ap­pear to Eind­hoven, which I think is only about half an hour from Utrecht — but then again maybe everything’s half an hour away from everything in the Neth­er­lands, who knows — and see what’s going on there. I’m fairly excited to see what FOPARA ends up being like since this is the first year the workshop’s being done. I’m espe­cially excited to see the Hume pro­ject people, like Kevin Ham­mond, since I’ve never met any.

I should say there’s still a lot of work that’s going on behind the scenes, work even on what I’m going to present to FOPARA. While I was in Cal­gary we decided to put in a new typ­ing sys­tem based on bunched logics which deals eleg­antly with a lot of the prob­lems with peeks that we’ve been sort­ing out in Pola, plus some new features.


Another successful trip to Calgary

October 7, 2009 in Research | Comments (0)

Tags: , , ,

My visit this week to Cal­gary to work with Brian and Robin is com­ing to an end and has def­in­itely paid off again. We have another day at least of work ahead of us, but prob­ably not much more real work will get done by then since we still have the FOPARA paper to fin­ish up and get cam­era ready. But, just in the past couple of days we’ve already made tre­mend­ous pro­gress in improv­ing and sta­bil­iz­ing the lan­guage. It won’t be too much longer before “core Pola” is finalized.

I should say there was one inter­est­ing res­ult that Brian told me about. The peek con­struct is a unique con­struct to the lan­guage, which allows one to, under some restric­tions, break affine­ness, i.e., allows one to ref­er­ence a vari­able mul­tiple times to give the pro­gram­mer more express­ive­ness. It’s a del­ic­ate busi­ness since affine­ness is what keeps Pola pro­grams polynomial-​​time, par­tic­u­larly in the con­text of recur­sion. As it turns out, if you remove the recursion-​​symbol restric­tions on peeks — allow­ing recur­sion within the con­di­tion of a peek—but keep the other restric­tions on peeks, you exactly cap­ture PSPACE! We demon­strated this by chan­ging just a couple lines of code, allow­ing recur­sion, and cod­ing up QSAT to play with. (more…)


Sickness and preparations for Calgary

September 29, 2009 in Personal,Research | Comments (0)

Tags: , ,

That’s my ther­mo­meter from a couple minutes ago. I’ve been sick essen­tially since Sat­urday and it looks like it’s finally on the mend! For some reason the last couple times I’ve been sick I’ve got cold instead of fever. This morn­ing I was down to 35.6ºC (for you Amer­ic­ans, that’s 96ºF) and had to take a long bath just to keep warm. It looks like I’m finally get­ting back to health.

The upside to the sick­ness is I did do quite a bit of work today. The major rewrite of the bounds infer­ence for Pola accord­ing to the last paper is get­ting close. Only 4 or 5 screen­fuls of typ­ing errors to sort out and then test­ing, ha! I’m hop­ing I’ll get it fin­ished in the next couple days as it would be nice to have all the ducks in a row for my trip to Cal­gary next week to see my par­ents and work with Brian and Robin again!


The longevity of make

September 17, 2009 in Research | Comments (0)

Tags: , ,

I recently rewrote the build sys­tem for Pola from ant to GNU make. Keep­ing things in ant was get­ting to be too much work, try­ing to be proper and writ­ing tasks (in Java) rather than just using the shell. I was ini­tially a little wor­ried about how much work it would be to redo the build sys­tem, but I was pleas­antly reminded by how simple it is. It took prob­ably about a quarter the amount of time to rewrite the entire build sys­tem from scratch in make than it would have taken to do a little incre­mental change to the ant sys­tem. As a bonus I man­aged to clean up the pro­ject a lot, redu­cing the build sys­tem down to just two files of a com­bined 70 lines. (more…)