# fishing/index.ludic - a private record and a private event, spelt as hunting spells its own module fishing property Catch { fish: int = 0 } event Landed { fish: int } export state FishingState { landed: int = 0 last: Catch = null } @On(Landed) handler Count(fishing_st: mut FishingState) { fishing_st.landed += fish } function catch_new(n: int) -> Catch { let c = new Catch c.fish = n return c } export function fishing_day(fishing_st: mut FishingState) -> int { fishing_st.last = catch_new(3) emit Landed(fish: fishing_st.last.fish) emit Landed(fish: 4) return fishing_st.landed }