ufm: (Default)
[personal profile] ufm

package main

func a() (r struct{}) { println(«a»); return }

func b(struct{}) { println(«b»); return }

func main() {
defer b(a())
println(«Main»)
}

Выведет:
a
Main
b

Ну т.е. defer не вызывает в конце строчку как есть, а сначала подгатавливает все значения, а потом вызывает только функцию. Прикольно.

P.S. Кстати, ответ на вопрос «зачем ты им пользуешься, если он такая кака и тебе не нравится» очень простой — а кто сказал, что он мне не нравится? Язык, на самом деле — отличный. Он простой. Он удобный. Да, есть несколько вещей, которые мне в нём _очень_ ненравятся: отсутствие деструкторов, невозможность понять что канал закрыт перед отправкой в него данных и странное поведение при вызове функции с переменным числом параметров. Впрочем, вызов функции с переменным числом параметров — просто ненравится. А вот первые две вещи — да, _очень_ ненравятся. А больше у меня ни к языку ни к компилятору притензий нет.

Originally published at U.F.M's Homepage. You can comment here or there.

(no subject)

Date: 2014-05-23 10:25 (UTC)
From: [identity profile] theiced.livejournal.com
- мутабельные данные
- отсутсвие вообще возможностей для всяких разных метапрограммирований
- код выглядит как блевотина

(no subject)

Date: 2014-05-23 10:36 (UTC)
From: [identity profile] theiced.livejournal.com
ну и да - оно всё в диком пре-альфа состоянии и есть уверенность что так и останется как и вся гугелевская блевотина.

(no subject)

Date: 2014-05-23 11:00 (UTC)
From: [identity profile] ufm.livejournal.com
Ну а это уже просто у тебя в голове червяки. Так и говори - "я не люблю гугель". :)

(no subject)

Date: 2014-05-23 14:35 (UTC)
From: [identity profile] theiced.livejournal.com
https://code.google.com/p/google-gson/issues/detail?id=433

я не люблю пидорасов.

(no subject)

Date: 2014-05-23 14:49 (UTC)
From: [identity profile] ufm.livejournal.com
Ой, я тебя умоляю. Я таких багов, которые исправить - одну строчку поменять, и которые годами не исправляются - в любом, наверное, проекте найду. Что-ж теперь, вешаться? :)

(no subject)

Date: 2014-05-23 14:56 (UTC)
From: [identity profile] theiced.livejournal.com
у меня с гугловым говном опыт вот всегда вот такой.

(no subject)

Date: 2014-05-23 10:59 (UTC)
From: [identity profile] ufm.livejournal.com
1. Не жарко и не холодно. Ну т.е. я не вижу умопомрачительных ништяков, которые принесет иммутабельность данных.
2. Очень хорошо. Очень.
3. Вкусовщина.

(no subject)

Date: 2014-05-23 14:36 (UTC)
From: [identity profile] theiced.livejournal.com
1. адова мультипоточность (или горутиновость) + мутабельные данные = гарантированный пиздец.
2. ты про то что они таки есть? почему я их не видел?
3. да, конечно. у меня до этого такой же рвотный рефлекс был только на перл.

(no subject)

Date: 2014-05-23 14:45 (UTC)
From: [identity profile] ufm.livejournal.com
1. Ну так не делай глобальных мутабельных данных без мьютексов, делов-то? Или вообще не делай - никто-ж не заставляет. В ерланге ets - по сути теже самые мутабельные данные, что не мешает.
2. Нет, я про то, что их нет и слава богу.
3. Ну я вот тоже перл не люблю, что не мешает им пользоваться, когда приперает. А есть люди, которым он нравится до жути. Имеют право. Я и говорю - вкусовщина. :)