[Haskell-cafe] Dynamic thread management?

Tim Chevalier catamorphism at gmail.com
Tue Aug 21 03:14:38 EDT 2007

On 8/21/07, Hugh Perkins <hughperkins at gmail.com> wrote:
> On 8/11/07, Neil Bartlett <njbartlett at gmail.com> wrote:
> > You're absolutely right that a dynamic/adaptive approach is the only
> > one that will work when the tasks are of unknown size. Whether this
> > approach is as easy as you think is open for you to prove. I look
> > forward to testing your VM implementation,
> Well... obviously migrating Haskell to use a VM is itself non-trivial
> ;-)  There are two obstacles:
> - technical
> - political
> The technical obstacle means implementing it.  Given that high
> performance VMs exist this is largely pure software engineering,
> rather than research?

GHCi, of course, is a bytecode interpreter, so that's sort of like a
VM. You might start by looking at how GHCi works and see what you
would need to change if performance rather than interactivity was your

> The political obstacle means: pursuading people to use it if it were
> written.  If no-one uses it, it wont be maintained, and is basically
> pretty useless.  The main reasons why it might not be used are:
> - breaks the status quo / de facto standard
> - provides no advantage in a single-core environment
> Breaking the status quo is not an inconsiderable obstacle, but it
> would be broken if there was a real advantage of using automatic
> threading, which there is not right now because most machines are
> single-cored.  Whilst it's the right time to think about how to
> implement things, it's maybe a year or two early to actually implement
> it and expect people to use it.

I don't think you have to worry too much about the political
obstacles. People want automatic multithreading, and in a year or two
we'll all have multicore boxen. In any case, if you don't solve the
technical problems, the political ones will never surface; if you
build it, people will come, or if they don't, you at least know
something that you wouldn't have known if you didn't build it :-)

> Writing a paper would be fun.  I think I'm a little out of my depth to
> be writing a paper ;-) but just on the off-chance, how does one go
> about writing a paper and getting it published?  Does one have to be a
> member of an accredited institution, or can one write one as a
> "freelancer"?  If one has to be a member of an accredited institution,
> what are the options?

Anyone can submit a paper to a CS journal or conference. While most
people who do so are affiliated with universities, research labs, or
(more rarely) non-research companies, there are independent
researchers out there, and sometimes you'll notice a paper where
someone is listed by just their name with no affiliation. Conferences
issue calls for papers (you might see some posted on this mailing
list) that give you an idea for the rough format of the paper and
submission guidelines. But really, you'll want to find a mentor who
can give you advice on how to write a paper that will fit the mold.
First come up with a technical result that you believe is
paper-worthy, then find other people to talk to who can confirm that
opinion and help you get your paper submitted :-)


Tim Chevalier * catamorphism.org * Often in error, never in doubt
"I cannot remember a time when I did not take it as understood that
everybody has at least two, if not twenty-two, sides to
him."--Robertson Davies

More information about the Haskell-Cafe mailing list