haskell-game/tiny-games-hs

Why no `Imports.hs` for the `base` category?

kindaro opened this issue · 2 comments

It seems unfair that people that choose to compete in the default category get to use more packages and also get more lines!

It is kind of hard to say in what sense exactly this is unfair, since there is no formal competition between categories. But I can try to make this precise like so:

  1. Any game fit for base also fits for default — it is vacuously true that it uses only default packages.
  2. I can therefore move any game built for base to default and get to move imports to Imports.hs and gain more lines. This is a clear advantage in the terms of taking the most out of the system.
  3. Therefore, if I am working on an idea for a game, my only incentive to keep it in base is to reduce competition. This puts everyone who chooses this category in bad light.

Another reason is that base has a lot of modules. It is hard to take advantage of them without using Imports.hs. In default you get to import any number of modules, but in base only a small amount. This seems like an arbitrary handicap to the category base itself.

So, this is unfair not to any individual competitor, but to the whole category base, for the above two reasons.

The above notwithstanding, I think it would be bad sport to change the rules now. Maybe the next competition can ameliorate this?

Hi! As you say the categories are not in competition. I encourage you to try them all! A few things to consider:

  • Restriction fosters creativity; the different levels of restriction produce different results.
  • The more restrictive categories allow participation with a smaller time commitment, which is part of the charm.
  • Each of these categories requires different use of the haskell tools to get a reliable game. (Try it..) A single self-contained file has some advantages in this area.
  • The single file is also closer to the spirit of BASIC and the original contest, and it's interesting for comparison.
  • We learn from trying stuff. It turns out that the default GHC packages aren't very useful for making games, and we have no entries in that category yet, so I doubt we'll use that one next time.

I hear you!