Re: [Haskell-cafe] mapping a concept to a type

2012-06-04 Thread Corentin Dupont
Hi, I'm still thinking on how I can express neatly two fundamentally aspects of a rule in Nomic. I'm not a lawyer ;) but in my opinion there is two sorts of rules in the legal system of any countries: - The rules that say *what* is legal or illegal. - The rules that say *how* to enforce the first

Re: [Haskell-cafe] mapping a concept to a type

2012-06-04 Thread Corentin Dupont
Hi, I'm still thinking on how I can express neatly two fundamentally aspects of a rule in Nomic. I'm not a lawyer but in my opinion there is two sorts of rules in the legal system of any countries: - The rules that say *what* is legal or illegal. - The rules that say *how* to enforce the first

[Haskell-cafe] mapping a concept to a type

2012-05-18 Thread Corentin Dupont
Hi everybody, I'm still working on implementing a nomic game in Haskell. Although the game is pretty advanced, I'm still confused by one fundamental question: A nomic game is composed of rules. A Rule is a sort of little program submitted by the player during the game. They come in two fashions: -

Re: [Haskell-cafe] mapping a concept to a type

2012-05-18 Thread Edward Z. Yang
I find both heavy and redundant. The first forces me to specify if I want an argument of not (with the constructors MR and NR) I'm sorry, I don't understand what you mean here. Do you know of a construction/abstraction that allows having or not an argument (a variable number of arguments,

Re: [Haskell-cafe] mapping a concept to a type

2012-05-18 Thread Ben Doyle
I wonder if you want a typeclass here, rather than a type? A Normal Rule is pretty much a State Transformer, while a Meta Rule seems like a higher-order function on Normal Rules[*]. These are different kinds of things --- and I say kind advisedly --- so perhaps better to define the specific

Re: [Haskell-cafe] mapping a concept to a type

2012-05-18 Thread Corentin Dupont
Yes I totally agree, they have different kind. A Normal Rule is * whereas a Meta Rule is * - *. But I have no experience with typeclasses. That could be what I'm looking for! What they have in common? Well, Id' say that a rule (whatever sort it is) can: - change the state of the game when executed