OCaml hacking session at MIT, Cambridge *US*, on June 6th

I’ll set up a wiki page with resources, and a wiki page to log information there about what people are doing. You should feel free to use the same wiki page and add content to the same log.

We can of couse use an IRC channel (#ocaml-hackaton on Freenode?), but I don’t expect to personally have any activity there, because in my experience I’d spend most of the time looking over people shoulders or answering IRL questions. Still if we can crowd-source some of the questions/answers work to the IRC, I guess that would be very nice. Let’s do it!

1 Like

In fact maybe we could just use #ocaml? I’ll ask the regulars there.

To cut down on the amount of work I’ve accidentally asked you to do, I’ll note that https://github.com/ocamllabs/compiler-hacking/wiki
exists already!

In case that particular URL is too ocamllabs-specific, it’s only because we’ve had compiler sessions locally. Now that they’re springing up all over, we’re most happy to move that over somewhere more central for others to use as a resource as well (perhaps in the ocaml/ org?)

The idea of putting “our” log on the compiler-hacking wiki did not previously occur to me, but I see nothing wrong with it (I don’t think the specifity of the URL is a particular problem; the American log would start with a mention of where it happened and that’s fine).

One thing though: although I of course point to the material created for Cambridge-actually-on-the-Cam sessions, my idea of having a different wiki page was also that I would use them to write stuff that is not on the ocamllabs wiki, and also emphasize the tasks offered differently (in general I think that many of the tasks of the ocamllabs wiki are too ambitious for a one-night thing; they might make sense when a regular crowd comes several time, or thanks to the superpower of Jeremy/Leo/Jérémie etc., but I don’t see myself throwing beginners at them). I could of course edit the ocamllabs wiki with that content, but I don’t think it is such a good idea, given that obviously the people that created it are comfortable with the current presentation. So I think for content differences parallel pages are better than concurrent edition – although I could even use new sub-pages of the ocamllabs wiki for the alternative pages.

I’m not sure I would infer that :slight_smile: It seems to me that effort taken to make the project suggestions more beginner-friendly and appropriate to a single-night hackathon context would be welcome. An actual, current Cambridge-on-the-Cam organizer could probably shed some light on this, though!

I think for content differences parallel pages are better than concurrent edition

Fair enough, but I’m not sure that edition would be concurrent. Again, other-Cambridge folks would know better than me!

I’ll confirm what @yomimono said – that layout was created in a different time and age, many moons ago, and the scope of the events have since expanded in practise to include more ecosystem activity as well. I’m sure we’d all be fine with more help maintaining it, and to increase its inclusiveness for a wider range of tasks.

I’m also sure that having a fragmented list of activities for these events would not be good, so we’re happy to rearrange the compiler event information as appropriate to help others contribute to the task list. Ideally if someone else wants to arrange a compiler event in (e.g.) France, they could just grab tasks from a more central list for beginners to do, rather than wading through separate wikis for Cambridge, Cambridge and Cambridge :slight_smile:

1 Like

Smaller and more beginner-oriented tasks/projects would definitely be welcomed, and would be very useful for the UK Cam events as well as others… @gasche if you would be willing to edit the existing wiki with the projects you envisage for your event, in the meantime I (and others) can work on updating the existing content too. I think a few of us have planned to update it for a while, but have had difficult keeping on top of it - more help maintaining a more general list would be much appreciated!

I’m looking to confirm the room number for tonight’s event.

On this post it says:

The event will take place at MIT, between 17:00 and 23:30, in the room 3-1331.

But on the linked access instructions, it says:

The event will take place at MIT, room 3-1331, between 5pm and 11:30pm.

Is it room 3-1331, or 4-145?

@persianturtle There was a change of room: it was initially 4-145 and we moved to 3-133 (if it says 1331 it’s a mistake, I’ll go over and fix it). I’ll add a comment on thinks, thanks!

@gemmag, @avsm: ok, I’ll work on the wiki directly. Most of the work that I expect to have the time to do anyway is to curate the “junior job” tickets on the Mantis bugtracker, which is orthogonal to the wiki content.

Thanks for hosting this, @gasche! I’m excited for compiler hacking on this side of the pond. :slight_smile:

I hope you all have an excellent hacking evening today! Take some pictures :slight_smile:

1 Like

These tasks about the OCaml website may also be a good starting point — some of them do not require much expertise.

3 Likes

Really psyched to discover that this is happening.

Relative newcomer here - I’ve been doing hobby projects in OCaml for <1 year, and am looking forward to the opportunity to come and hack! Planning to bring an OCaml-inclined friend as well.

4 Likes

(At the last minute, of course.)

I created an organization wiki page to just add stuff for everyone to access, and a log wiki page for everyone to record their participation.

If you participate to the hackaton (physically or just online or in some other physical place), please add yourself to the log wiki page!

2 Likes

Thanks @gasche! Looks like it went really well :smiley:

From your log, I was interested to see that @bthom tested the RISC-V backend – I was considering setting up a qemu-based CI for it for OPAM in anticipation of getting some real hardware soon, so keen to hear how the testing went!

Yep, it was funk, thanks!

(I still have some cleanup work to do; I plan to transfer some of the “temporary page” organization to the normal wiki, and maybe restructure the log.)

So it turns out that bthom wanted a cross-compiler rather than a compiler, and I think the previous backend was written as a compiler (intended to be built itself within qemu). Most of the effort went into him discovering how to hack the ./configure for cross-compilation (we looked at how @whitequark does his cross-compilation trees but they directly contain the post-configuration output, and you still need to first play with ./configure to figure out what those outputs should do). Finally, he wanted to run bare-metal RISC-V program, so last I know he was gutting out the parts of the (target) runtime depending on dirent.h and other OS things. I don’t think that much actual testing was done (the one part of ./configure that actually execute binaries was run under spike, if that counts), but hopefully that could happen in the future.

I fleshed out the log page a bit more, with the intent of making sure that its content will keep making sense in the future (it can be archived somewhere or stay where it is).

I’ll work on moving the event-specific list of tasks into the general wiki pages. Then I think the “temporary page” used for coordination/organization can be archived or even deleted.

2 Likes

Since there is interest in centralising the compiler hacking activities now that they are going more global, there is also an issue to discuss the move here: https://github.com/ocamllabs/compiler-hacking/issues/12

Feel free to chime in with your opinions, especially if you want to host your own session!