Stack is a build tool for Haskell with focus on reproducible build plans, multi-package projects, and a consistent, easy-to-learn interface. With stack, one can create new project: stack new my-project yesod-sqlite (more in the quick start guide: https://www.yesodweb.com/page/quickstart)
models is used to define shape of the data and Yesod uses it to generate datatypes and database for you. For example, to define a Star that has name, spectral type, luminosity class and link to StarSystem, one can write:
Custom types, like LuminosityClass, need mapping between datatype and database. In simple cases like this, Yesod can do that:
data LuminosityClass = Iap | Ia | Iab | Ib | II | III | IV | V | VI | VII
deriving (Show, Read, Eq)
The "derivePersistField" part is template haskell call that will generate mapping needed.
Comment #1 posted on 2018-11-30 09:07:51 by klaatu
Cool game idea, cool intro
This sounds like it would be kind of an amazing game, actually. I hope it happens. If not, it's still a neat idea.
And thanks for the taste of Haskell. I've been mildly curious about it for a while, so it's nice to hear something substantial about it.
Comment #2 posted on 2018-12-01 06:01:53 by tuturto
Thanks, I'm kind of fond of the idea too. Ideas of course are cheap and actual implementation is the tricky part. But I'm trying to get at least very minimally working system up and running at somepoint. Main idea is just to explore idea of writing such a game and learn a bit Haskell and Elm on the side.
Note to Verbose Commenters
If you can't fit everything you want to say in the comment below then you really should record a response show instead.
Note to Spammers
All comments are moderated. All links are checked by humans. We strip out all html. Feel free to record a show about yourself, or your industry, or any other topic we may find interesting. We also check shows for spam :).