← All posts tagged GOlang

beard
programming закладки Go GOlang Golang daemon — habrahabr.rugithub.com
Какой ужас. Велосиперазм и костылизм. В bsd всю жизнь был системный вызов daemon(), который делает весь комплект:
Порождение дочернего процесса и завершение родительского (системный вызов fork); Далее в дочернем процессе:
Установка маски для прав доступа на вновь создаваемые файлы (системный вызов umask);
Создание нового сеанса, отключение от терминала (системный вызов setsid);
Смена рабочей директории на корневую (системный вызов chdir);
Перенаправление дескрипторов потоков стандартного ввода/вывода на /dev/null.
beard
programming Go GOlang А новым конпилятором оно не собирается:
conn_read.go:165: too many arguments in call to strings.Split
Вот в этой конструкции:
parts := strings.Split(tag, " ", -1)
Что-то было в ченьжлоге по этому поводу вроде....
Это ещё в r59 было:
Package strings's Split function has itself been split into Split and SplitN. SplitN is the same as the old Split. The new Split is equivalent to SplitN with a final argument of -1.
Т.е. нонче оно обзывается SplitN или нужно завершающий -1 удалить.. И нафига такие грабли?? И как правильно поступить в этой конкретной ситуации? Добавлю N
beard
FreeBSD размышлизмы Go GOlang Ну ладно, вручную вроде деинсталл прошёл, хотя на что-то вроде ругалось, заметить не успел, проскочило очень быстро. Осталась либа, вручную собранная, pgsql.a. А вот с ней что делать?? Переложить на новое место, работать будет? Или новым компилятором пересобирать?
beard
FreeBSD Go GOlang Сегодня обновился порт. Стало go-20110920 r60.1 9497
Что-то поменялось с путями к либам. Разместили в каталоге /usr/local/go. Раньше было в /usr/local/lib/go. Не деинсталлился предыдущий go-20110515. Бинарники, вроде, обновились.
Образовался какой-то срач.
beard
programming Go GOlang Играюсь со слайсами.
a := [...]int{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
s := a[low : high]
The index expressions "low" and "high" select which elements appear in the result. The result has indexes starting at 0 and length equal to "high - low"
Индексные выражения Лоу и Хай выбирают, какие элементы появляются в результате. Результат имеет индексы, начинающиеся с нули и длинной равной Хай — Лоу.
Индексы отсчитываются от нуля. Иными словами: Лоу — указывает на начальный элемент массива, включаемый в результат; Хай — указывает на конечный элемент массива, не включаемый в результат.
Длинна массива — количество элементов (на единицу больше верхнего индекса). Вроде бы логично, максимум для high = len(a). А с другой стороны непонятно. Если это индекс, то при максимуме он выходит за границу массива. Значит это не индекс. Но называется именно индексом — index expressions "low" and "high".
Наркоманы. У меня такой травы нет.