如何在 Agda 中打破长线

How to break long lines in Agda

我需要打破这条长线:

postulate flipH/cw/cw/flipH : ∀ (t : Tile) -> flipH (cw (cw (flipH t))) ≡ cw (cw t)

Agda 不会接受以下任何一种:

postulate flipH/cw/cw/flipH
  : ∀ (t : Tile) -> flipH (cw (cw (flipH t))) ≡ cw (cw t)

postulate flipH/cw/cw/flipH : ∀ (t : Tile) ->
  flipH (cw (cw (flipH t))) ≡ cw (cw t)


但它确实接受了这不是很理想,因为在它再次变长之前它没有给我太多 space 的工作:

postulate flipH/cw/cw/flipH : ∀ (t : Tile) ->
                            flipH (cw (cw (flipH t))) ≡ cw (cw t)

有没有办法像我们在 Haskell 中那样断线?

postulate 是一个块关键字,这意味着它被设置为在 postulate 的单次出现下解析多个假设。例如:

postulate
  A : Set
  B : Set → Set

这意味着当您将 flipH/cw/cw/flipH 换行时,您的运气会更好。例如,您可能想写:

postulate
  flipH/cw/cw/flipH : ∀ (t : Tile) ->
    flipH (cw (cw (flipH t))) ≡ cw (cw t)