User avatar

Go plans to introduce `try` operator: https://github.com/golang/go/issues/32437#issue-452239211
`y = try(f(x))` assigns f(x) to y if it is not an error, or returns the error that f(x) produced from the enclosing function. A great design: it achieves the same as proper monadic Either/Result would, without breaking backwards compatibility.
#golang_school_of_success #avoid_math_at_all_costs. #link

Comment

Аааа

 ‎· Glory to Mankind
Comment

да, но скорее всего нет

 ‎· крылолёт буеров
Comment

хотя бы потому что гошникам приятнее написать пять раз y, err := f(x); if err != nil { ...} чем p := try(f(x, try(g(y, try(h(z, t))))))

 ‎· крылолёт буеров 1
Comment

@hotgiraffe: Зачем, с этой штукой можно линейно (в смысле, в столбик, без вложенности) писать do notation :) Надеюсь, для Maybe, в смысле, nil, они тоже постепенно изобретут какою-нибудь паскалеобразную штуку, позволяющую уменьшить boilerplate.

 ‎· 9000
Comment

ну, да, в столбик писать придётся, потому что вместо RAII у нас ручные defer-ы

 ‎· крылолёт буеров
Comment

Based on the overwhelming community response and extensive discussion here, we are marking this proposal declined ahead of schedule. https://github.com/golang/go/issues/32437#issuecomment-512035919 #все_расходимся

 ‎· крылолёт буеров 5
Comment

I sometimes feel compasion to Russ Cox. From what he writes, he's a man of good taste, wide knowledge, and deep consideration. It's sad that he ended up a steward of the modern Cobol, with a community actively wanting it to only stay Cobolish.

 ‎· 9000
Comment

@9000: каждый дурак может хороший экспрессивный язык мейнтейнить. А вы попробуйте го — вот тут уже могучий интеллект нужен.

 ‎· G.O.D. of the D.o.D. 3
Comment

"declined ahead of schedule" это отличная фраза вне всякого контекста.

 ‎· Голоса в голове медведя 9
Comment

try(introduce_new_operator())

 ‎· псы в рапиде 10
Comment

Монады подкинули проблем

 ‎· я думаю, що це б‘ютіфул 1
Comment

^^^^ интеллекта в индустрии и так в достатке; тут нужно смирение.

 ‎· 9000 1
Comment

@9000: вот люди и смиряются, сил не жалеют. Голанг одно сплошное смирение, каждый день. Чего ещё нужно.

 ‎· G.O.D. of the D.o.D.
Comment

Что-то мне в этом месте лотусовые @-функции мерещятся. На полном автомате же писал localvar=somecall; @if(@iserror(localvar); "хуйня случилась"; localvar)

 ‎· j'suis snob 3

1 2 3 4 5 6 7 8 9 10