Stepan
Все так. В некоторых моментах свифт очевиднее, но в некоторых совсем наоборот.
Сережа
да, и вообще джава! кроссплатформенность!
Michael
uh oh
Anonymous
Anton
жава? пффф
тайп классы поглотят всех! всем скала!
Anonymous
Это не «наезд», мне действительно любопытно
Michael
обилие типов-указателей в расте тоже доставляет
Stepan
Пример наоборот можно, сэр?
Я вас от руки не буду код писать сейчас, но также замыкания можно описать несколькими способами, в зависимости от количества аргументов, передаваемых в них. Понятно, что привыкнешь ко всем вариантам записи, но это создаёт путаницу. Там нет пока каких что четких рекомендаций как надо делать, а как не надо. Да и сама apple до сих пор сильно меняет язык от версии к версии
Michael
хипстер-компилятор
Anonymous
Anonymous
Сейчас как зациклюсь
Michael
плохому танцору мешает плохой жс
Anonymous
Почитал про систему типов в Rust. Улыбнулся.
Anonymous
Закрыл к черту.
Anonymous
Не знаю, как в англоязычной вики, но в русской..
Anonymous
Ссылка (разделяемое заимствование - shared borrow) &T (разделяемая, не изменяемая, не владеющая ресурсом), вместо того, чтобы забирать владение ресурсом, она его заимствует. Имена, которые заимствуют что-то, не освобождают ресурс, когда они выходят из области видимости. Кроме того, имена-владельцы переходят в заимствованное состояние[29].
Anonymous
У меня только один вопрос: «ЧИВО?».
(не осилил, ага)
Сережа
во время компиляции проверяется возможность состояния гонки
Сережа
т.е. один писатель или много читателей
Сережа
&T - читатель, их может быть много, если нет писателей, т.к. вроде как изменить то, что по этому типу ссылки нельзя
Сережа
владение ресурсом это семантика перемещения в c++
Michael
shared ptr, unique ptr
Сережа
это здесь причем?
Сережа
что unique перемещаемый?
Michael
нет, здесь Go, и я доволен, что в нём нет такой "наркомании"
Сережа
вроде как там есть теорема Гёделя о неполноте, следствием которой является невозможность доказать, что программа будет выполняться правильно
Сережа
в го большой рантайм
Сережа
и сборщик мусора, что делает его неприменимым в некоторых случаях
Сережа
хотя в таких случаях применяют си
Anonymous
плюсы, скорее
Anonymous
если прям жирный проект, то, наверное, сделаю ставку на плюсы
Anonymous
Но это неточно
Michael
плюсы с комами чтобы наверняка
Denis
Друзья, подскажите почему не пишет в файл
enyFile, err := os.Open("qw.txt")
defer enyFile.Close()
check(err)
enySize,_ := enyFile.Stat()
enyBs := make([]byte, enySize.Size())
_, err = enyFile.Read(enyBs)
check(err)
buf := bufio.NewWriter(enyFile)
_, err = buf.Write(enyBs)
Anton
не пишет и ошибок нет?
Denis
@troyanov в том то и дело
Сережа
1. укажи что открываешь файл на запись
Сережа
2. у тебя qw.txt какого размера?
Michael
open открывает только на чтение
Denis
@Mosolov А как ужазать на запись?
Michael
OpenFile
Сережа
https://godoc.org/os#OpenFile
Denis
Спасибо
Michael
генерики говорите, в Go 1.9 могли бы быть кватернионы
Сережа
веб-макакам очень нужно, как и комплексные числа
Ilia
Anton
Добрый день!
Извините за оффтоп, кто-нибудь может подсказать с запросом в MySQL?
Ilia
Anton
Почему-то, специальный чатик не нашелся поииском)
Сережа
не, компилятор 2007 года c++ не поддерживает c++11, а новую ОС никто делать не будет
Сережа
хочешь я гифку сделаю как светодиоды моргают?
Denis
enyFile, err := os.OpenFile("qw.txt", os.O_WRONLY, 0777)
defer enyFile.Close()
check(err)
buf := bufio.NewWriter(enyFile)
_, err = buf.Write(enyBs)
не выдает ошибку и не пишет в файл, подскажите в чем причина?
Сережа
вроде бы в коде раньше - ты сначала считывал из этого же файла в который писать - то что будешь писать
Сережа
он изначально у тебя не нулевого размера?
Сережа
O_WRONLY - это наверное открыть только на запись
Denis
@Mosolov поменял немного код что бы разобраться, файл не пустой
Сережа
O_WRONLY int = syscall.O_WRONLY // open the file write-only.
Vasiliy
Denis
тоже самое с записью O_RDWR
Сережа
может не хватает os.O_APPEND как подсказывают
Сережа
может го по умолчанию новый файл создает
Сережа
похоже, что нет
Сережа
скинь весь свой код https://play.golang.org/
Dmitry
Dmitry
Vasiliy
buf.Flush()
Vasiliy
Dmitry
Denis если надо писать сразу без Flush, то можно использовать функцию io.WriteString(enyFile, "sometext")
Denis
спасибо, дело было в buf.Flush()
Denis
👍
Denis
вернее в его отсутствии
Сережа
да ладно, что в гау при завершении программы из буферов может не все записаться, если не успело?
Dmitry
это не от языка зависит