Roman
поэтому без implicit cast - обратная совместимость с Go 1.x не может быть гарантирована
Co(n)stantine👨🔬
это печально, надо гарантировать обратную совместимость, а иначе язык превратится в python2
Co(n)stantine👨🔬
😞
Co(n)stantine👨🔬
@Romshark
Vladimir
Alexey
Vladimir
Alexey
Про готовое тоже напишу. Если краткого — нет живого
Vladimir
Не?
Vladimir
12 дней назад коммит
Vladimir
Вполне живое
Alexey
Их много разных. Но живых, больше чем с одним активным контрибьютором, особо нет
Vladimir
Alexey
Ну skylark не про то почти полностью
Vladimir
Он живой, более 1 контрибьютера
Alexey
Это не язык программирования :)
Vladimir
Skylark is a dialect of Python intended for use as a configuration language. Like Python, it is an untyped dynamic language with high-level data types, first-class functions with lexical scope, and garbage collection
Alexey
Я не хочу делать язык для описания конфигураций
Vladimir
Vladimir
Он не только под конфигурации катит
Alexey
Первое предложение в твоей собственной цитате
Alexey
Они не хотят его развивать в язык более общего назначения
Alexey
Ну и более одного контрибьютора — это очень условно: https://github.com/google/skylark/graphs/contributors
Alexey
Хорошо, я не буду больше спорить :)
Alexey
Добавлю только, что я его видел, трогал и общался с Аланом
Vladimir
Ок)
Vladimir
Alexey
Сразу тогда напишу, что то же относится к Anko, Neugram, Goby, Agora и к разным вариантам Lisp, Lua и JS
V
Ого сколько gosh'ей на гитхабе
Oleg
Всем привет!
Расскажите, зачем вообще го нужна?
Alexander
😁 Олег в разнос пошел
freezlite
Олег, где макет?
Ivan
.
@madgopher так в чем плоха модель памяти в Го? Расскажи пожалуйста
Sergey
freezlite
как назвать функцию
freezlite
которая результат записывает в мап
freezlite
ну обычно getSomeShit
freezlite
если возвращает
freezlite
а как обозвать assignSomeStat ?
freezlite
или как
Artem
add, write, create, update, Append, post
freezlite
writeStatsFromQuery ?
freezlite
там sql
freezlite
writeStatsByQuery?
freezlite
вообще по солид функция которая возвращает записи и которая записывает должны быть разными
freezlite
но пересоздавать мапу это как то рассточительно
freezlite
особенно для статы
Daniel
freezlite
но хороший нейминг и слабая связность лучше, чем плохой нейминг и слабая связность
freezlite
put
👍 как не пришло такое в глову
freezlite
runQueryAndPutStats хорошо говорит что функция делает
freezlite
но and свидетельствует о слабой связности
Vadim
freezlite
ты как будто говоришь о том что херого код пишешь)
freezlite
set мне кажется меньше подоходит, там словарь, а сет скорей для сколярных переменных
Marperia
Ещё раз здравствуйте! Не подскажете, как можно реализовать это самое переиспользование *sql.DB? Конкретно сейчас юзкейс довольно простой:
1. Подключаюсь к БД в main()
2. В том же main() стоят http.Handler() на контроллеры, например Registration(w http.ResponseWriter, r *http.Request)
3. В нём проверяются введённые данные и вызывается func (u User) Create()
Собственно, как передать *sql.DB в эту функцию? Или где почитать о контекстах?
Marperia
Мне уже предложили реализовать такой middleware:
func RegistrationHandler(db *sql.DB) http.HandlerFunc {
return Registration(w http.ResponseWriter, r *http.Request) {
//use db
db.Query(...)
}
}
Но мне это не особо нравится, хочется либо контекста, либо элегантности.
Andrei 🦉
Илья
а чем это неэлегантно?
Andrei 🦉
самый простой и элегантный путь
Marperia
Andrei 🦉
Marperia
Илья
причем тут ОРМ, и фреймворк я не понял, но вроде бы вы начали думать в правильном направлении
🎉
@marperia вот так попробуйте https://habr.com/post/329582/ мне понравилось, осталось только привести к божескому виду.
Marperia
А кто-нибудь знает, как (можно ли) реализовать нечто вроде глобального контекста, чтобы не лезть во все методы и не переписывать нахрен бизнес-логику?
Marperia
Спойлер: в текущей Б-Л используется db.Close() в каждой сраной функции.
Maksim
казалось бы, где связь между бизнесс логикой и db.close)
Andrei 🦉
на самом деле, только таким образом на го и можно построить поддерживаемую кодовую базу
Marperia