@gogolang

Страница 1395 из 1630
Roman
12.09.2018
13:22:10
но я, конечно, обвиню тебя в недостаточном знаии AWK в итоге :)
да, напиши логическое поведение и взаимодействие сотен/тысяч объектов в игровом мире на AWK/bash. пожалуйста, я тебя даже останавливать не буду

лишь лапу пожму и удачи пожелаю ?

Alexander
12.09.2018
13:23:48
И иногда так бывает, что надо тупо хороший шел-скрипт написать, а не грузить машину херней на С++ размером 50 MB, которая при своих требованиях к вычислительным ресурсам и квалификации персонала просто того не стоит

Alex
12.09.2018
13:25:10
Google
Roman
12.09.2018
13:25:14
Доброго времени суток. Плюсы Вы выделили верные, только вот немного о том что такое скриптование в компьютерных играх... по сути это обвязка вокруг двигла задачей которой является описание повидения мира (игрового в данном случае), перед скриптовым языком не ставят те цели которые вы описали, перед скриптовым языком ставят цель - быстрая разработка (быстрое получение получени результат)... и вот тут го проигрывает python/lua и подобных им... и к слову, многие студии пишут свои собственные языки скриптования игры...
моё утверждение заключалось в том, что не смотря на то что нафигачить 10 строчный JS для описания поведения двери - всегда будет легче чем Go, на Go можно описать более сложную логику в более безопасном и производительном виде не притрагиваясь к C++. когда речь идёт о симуляции эконимики, взаимодействий большого колва объектов и т.д. JS/Lua быстро теряют свою актуальность.

Alexander
12.09.2018
13:25:35
shell - очень быстрый! Просто его обычно используют там где много операций с диском, и думают поэтому, что шелл тормозной

Roman
12.09.2018
13:27:20
Interactions & local logic = JS / Lua / Visual Scripting [> / Go?] Game world logic = Go > C++ Repetitive time consuming logic = C++ Engine = C++

в любом случае game world server на Go писать самое оно

Aleksandr
12.09.2018
13:31:41
ладно, поспорили и хватит

Roman
12.09.2018
13:33:28
ладно, поспорили и хватит
согласен. Однако стоит подметить что атмосферу чата стоит более научной сохранять, уровень троллинга порой зашкаливает.

Alexander
12.09.2018
13:35:26
ладно, поспорили и хватит
Чмоке тибе в этам чати!

ладно, поспорили и хватит
А в Питере улица Зеленина - не твоим именем названа?

Михаил
12.09.2018
13:36:04
Всем привет. Кто знает как можно ограничить размер изображения если оно загружается через multipart/form-data, multipartreader?

Andrei
12.09.2018
13:36:49
согласен. Однако стоит подметить что атмосферу чата стоит более научной сохранять, уровень троллинга порой зашкаливает.
на 90% вопросов в этом чате гугл дает ответ первой же ссылкой на первой странице выдачи, так что более научным этот чат не сделать никак

Google
Aleksandr
12.09.2018
13:37:33
А в Питере улица Зеленина - не твоим именем названа?
слушай, я люблю шутки, но примитивные бесят

Alexander
12.09.2018
13:37:57
Vladislav
12.09.2018
13:38:07
Ну почему... ну почему тут нельзя лакайть и дизлайкать ответы и "ответы" ?

Roman
12.09.2018
13:38:19
на 90% вопросов в этом чате гугл дает ответ первой же ссылкой на первой странице выдачи, так что более научным этот чат не сделать никак
сделать, давать людям RO на часик за необоснованное обсирание и экспоненциально растить период RO за повторение

Михаил
12.09.2018
13:38:30
https://github.com/golang/go/issues/23165
Parse подразумевает считывание в память, мне через стримы

Алексей
12.09.2018
13:38:40
моё утверждение заключалось в том, что не смотря на то что нафигачить 10 строчный JS для описания поведения двери - всегда будет легче чем Go, на Go можно описать более сложную логику в более безопасном и производительном виде не притрагиваясь к C++. когда речь идёт о симуляции эконимики, взаимодействий большого колва объектов и т.д. JS/Lua быстро теряют свою актуальность.
Я просто не много не в теме происходящего, я так и не с мог понять с чего все начлоась, но опишу следующую мысль Вообще выделение отдельного слоя как "скрипты" выделяют при наличии большой команды, когда мы можем разделить команду на условные "core" и программисты "логики"/"интерфейсов" и тому подобное, когда Вас один-трое и вы программист всего, не стоит заморачиваться скриптованием, можно сделать заготовочки на будущее но заморачиваться на это... так что тут думаю многое зависит от сложности проекта и размеров команды

Alexander
12.09.2018
13:38:48
Я просто родился на Петроградской стороне, так что эту улицу знаю, как родную :)

Roman
12.09.2018
13:41:18
Илья
12.09.2018
13:42:41
Roman
12.09.2018
13:44:00
runtime производительность, память, многопоточность, отсутствие compile-time гарантий.
вот про скорость, предлагаю простой бенч: сумма квадратов всех чисел от 0 до n

Roman
12.09.2018
13:44:43
вот про скорость, предлагаю простой бенч: сумма квадратов всех чисел от 0 до n
да вот вчера только сравнивали V8 JavaScript с Go, разница в скорости около 6000%, разница в памяти около 1600% https://github.com/xrei/prime-numbers-benchmark

Alexander
12.09.2018
13:45:36
Зеленин, ты не обижайся, или не делай вид, но ты - герой нашего времени! Я буду всем внукам рассказывать, что эта улица названа в честь тебя, а я с тобой лично в Телеграме общался!

Andrei
12.09.2018
13:45:47
сделать, давать людям RO на часик за необоснованное обсирание и экспоненциально растить период RO за повторение
а зачем нам еще один мертвый чат по го? один уже умер, слившись с данным чатом

Roman
12.09.2018
13:46:59
а зачем нам еще один мертвый чат по го? один уже умер, слившись с данным чатом
лучше мёртвый, чем бесполезный troll community а тот чат умер не по вине троллей, а по вине администратора который решил улетучиться

в чью пользу?
ну явно не в пользу динамического JS

Google
Roman
12.09.2018
13:48:30
в чью пользу?
го справился за 7 сек (16 сек если в 1 горутине) потребив при этом 13,7 мб, JS за ~460 с чем-то и сожрал при этом ~260mb озу

Rust вообще всех сделал за 26 миллисекунд (про память не в курсе, но очевидно меньше Go)

Nick
12.09.2018
13:49:18
Ну может там рантайм сразу выделят больше

Andrei
12.09.2018
13:49:22
лучше мёртвый, чем бесполезный troll community а тот чат умер не по вине троллей, а по вине администратора который решил улетучиться
ну это исключительно ваше мнение, пока что пусть и с троллингом, но здесь можно получить ответы на вменяемые вопросы

Nick
12.09.2018
13:49:34
Сколько аллокатор навыделал?

Roman
12.09.2018
13:50:37
а на чем сравнивали? На чем надо, как обычно?
prime numbers by square-root, числодробилка, алгоритм одинаковый

Alexander
12.09.2018
13:50:55
и чо?

Алексей
12.09.2018
13:50:59
конечно это зависит от размера команды и проекта. Обсуждалась лишь чисто гипотетическая возможность использования Go для описания игровой логики по перечисленным выше причинам.
Если вопрос чисто гипотетический и звучит как "можно ли использовать go в роли скриптового языка" - однозначно да. Но есть более простые решения... Сами по себе "скриптовые" языки имеют главное достоинство перед языками низкого уровня - скорость разработки. И если мы говорим о пунктах выше, уверены ли Вы что они описывают требование к скриптовому языку?

Алексей
12.09.2018
13:51:08
Читаю чат и вижу одни только мнения, необоснованные мнения.. Go в качестве скриптового языка интересен следующим: 1. Он относительно прост и прагматичен (надеюсь это пояснять не нужно). На C++ ведь никто скрипты игрового мира не пишет? (максимум повторяющееся поведение, где JS/Lua etc. недостаточно быстрые). 2. Одновременно он значительно производительнее и менее затратный по памяти таких языков как JavaScript и Lua, нужно объяснять в чём выгода? 3. Он быстро компилируется, вам нужно объяснять почему это хорошо для скриптинга? 4. Система актовор и вычисления AI хорошо укладывается на горутины, можно управлять большим колвом объкетов игрового мира используя весь потенциал CPU. 5. Модель памяти с GC отлично подходит для написания логики поведения. Без GC скрипты писать адово и опасно. что ещё... пока что всё, может что-то забыл упомянуть
Для скриптовых языков лучше брать скриптовые языки (вот это поворот!), а Go таким языком не является.

Alexander
12.09.2018
13:52:06
Для скриптовых языков лучше брать скриптовые языки -хорошо сказано

Алексей
12.09.2018
13:52:21
Вот простая задача: при разработке, во время игры надо что-то быстренько поменять небольшим количеством кода без рестарта этой самой игры

Roman
12.09.2018
13:52:54
ну это исключительно ваше мнение, пока что пусть и с троллингом, но здесь можно получить ответы на вменяемые вопросы
а помимо ответов услышать 100500 мнений о том что нет генериков, что Go говно, что надо писать на Rust, что "ты дурак?!", что ты ничего не понимаешь... это ничто иное как засирание истории чата и с этим нужно бороться! есть чего толкового сказать? Говори - обосновывай, аргументируй, это только приветствуется. Срачь никому не полезен

Михаил
12.09.2018
13:52:55
Алексей
12.09.2018
13:53:01
я не знаю скриптового языка, который не поддерживал бы eval

Алексей
12.09.2018
13:53:36
у юнити шарп обычно, что, тоже на мой взгляд так себе выбор

Lua
Lua походу вообще в этой области вне конкуренции, ибо встроить его куда-либо проще простого.

Google
Александр
12.09.2018
13:54:56
собственно еще раз: Есть пакет responce: type v1ApiResponce struct { } func (res *v1ApiResponce) Success(data interface{}) *Response { return &Response{ data: data, status: "success" } } ---- type Response struct { status string data string } func (r *Response) WriteJson(w http.ResponseWriter) error { .... } есть пакет handlers: type ResponseInterface interface { Success(data interface{}) *Response } тут то мы и ловим циклическую зависимость

думаю как обойти вот

Roman
12.09.2018
13:55:47
Interactions & local logic = JS / Lua / Visual Scripting [> / Go?] Game world logic = Go > C++ Repetitive time consuming logic = C++ Engine = C++
@a_alexei_0 вот тут я уже всё описал, вроде мы тему уже закрыли)

Andrei
12.09.2018
13:55:59
а помимо ответов услышать 100500 мнений о том что нет генериков, что Go говно, что надо писать на Rust, что "ты дурак?!", что ты ничего не понимаешь... это ничто иное как засирание истории чата и с этим нужно бороться! есть чего толкового сказать? Говори - обосновывай, аргументируй, это только приветствуется. Срачь никому не полезен
опять же это исключительно ваше мнение, комьюнити и правила поведения здесь уже сформированны и все общаются так, как им комфортно, хотите чатик с академическим общением, можете попробовать организовать, только с такими правилами вы получите средний онлайн около нуля

где то был отдельный специальный чатик для людей не осиливших го тур, но, по моему, он загнулся, т.к. все всё равно сразу шли сюда

Roman
12.09.2018
13:58:11
Shiro
12.09.2018
13:58:18
Rust вообще всех сделал за 26 миллисекунд (про память не в курсе, но очевидно меньше Go)
Но на Rust не так приятно писать, как на Go. К тому же, собственно, го для таких вычислений не очень подходит, если нужна именно скорость вычисления. Меня вполне устраивает то, что го проигрывает расту и си++, но на нем легко и удобно писать в микросервисы и простенькие программы. Я бы не стала выбирать язык по критериям скорости и объемам памяти, ну такое себе это.

Admin
ERROR: S client not available

Foxcool
12.09.2018
13:59:09
++

Алексей
12.09.2018
13:59:10
дак вот моё утверждение было именно в том, что когда не 10 строчек нужно написать а весчь чуть более сложнее - Go возможно обгонет по скорости разработки тот-же Lua и JS
Именно по скорости разработки, наврятли, ибо скорость разработки на скриптовых языках очень велика. Говнища при этом конечно получается много и зачастую такие скрипты могут быстро портится и протухать и сделать на них макаронный код проще чем на go, но разработка точно выше. Есть ещё один момент, он тоже не мало важен... способ доставки скриптов... Вы собираетесь компились все скрипты отдельно или после правки Вы будете пересобирать весь проект? Скриптовые языки инторпритируемы и все что Вам надо что бы проверить их работу - перезапустить приложение...

Tux
12.09.2018
13:59:45
оу, на расте очень приятно писать. Не приятно использовать tokio

Илья
12.09.2018
13:59:49
А можно подробнее
См пакет image decodeconfig

Илья
12.09.2018
14:00:33
Там правда есть замррочка, я городом teereader, чтобы потом с картинкой работать

Andrei
12.09.2018
14:00:46
в том то и дело, что я не хочу делать из этого чата академический форум. Я просто хочу сохранить в нём приятную и полезную атмосферу общения, разве вы это не приветствуете?
я параллельно сижу в чатах по нескольким языкам, т.к. пишу одновременно на нескольких, и из всего моего набора чатов этот чат - самый адекватный и полезный, и я сомневаюсь, что можно сделать еще лучше не поломав то, что уже есть

Artem
12.09.2018
14:00:47
где то был отдельный специальный чатик для людей не осиливших го тур, но, по моему, он загнулся, т.к. все всё равно сразу шли сюда
В прошлом чате меня добила дискуссия имени дениса, который пишет на го месяц,поспорившего с жавистом двух летним опытом, что его уделает, что вылилось в сравнение жавы и го на примере хттп сервера получающего два числа и делящего их. Что бы выяснить что лучше работает с числами с плавающей точкой.

Pawel
12.09.2018
14:01:03
Не, вобще, чтобы связываться со форнтэндом - это надо быть дизайнером и любителем красоты, а не ремесленником. Go - больше для ремесленников, Так я думаю
Ты думаешь не правильно. Программисты вообще не должны заниматься дизайном, а дизайнеры программированием иначе будет херня. Есть секта цсс хакеров, но это исключение

Google
Subbotin
12.09.2018
14:01:40
что за безумный бенчмарк

Михаил
12.09.2018
14:01:41
Там правда есть замррочка, я городом teereader, чтобы потом с картинкой работать
Так мне не нужно с картинкой работать как с объектов. Просто идет стрим из запроса в хранилище без загрузки в память и его нужно ограничить по объему

Roman
12.09.2018
14:01:45
Artem
12.09.2018
14:03:32
лол. накладные расходы на http стэк много больше деления двух чисел
Ему это пытались объяснить, без результатов

Александр
12.09.2018
14:03:39
заспамили блин вопрос

рррр!

Roman
12.09.2018
14:06:26
читабельность кода в 1 строчку просто прекрасна)) </irony>

Алексей
12.09.2018
14:07:18
если учитывать изначальное написание кода то однозначно да - написать скрипт на JS/Lua гораздо проще. если учитывать maintainance, refactoring, bug fixing, adding of new feature то всё это быстро превратится в кашу
да, багов там много но и правятся они быстро и рефакторинг быстро происходит, так как это скриптовый блок, там нет серьезной архитектуры. Да, часто такой код превращается в кашу, но не причине того что плохой язык, а по причине бизнесс процессов, чаще всего перед рабочим приложением стоят цели быстро сделать новые фичи, реализовать или переработать какую-то логику, и там ставится вопрос только в скорости, потому что промедление это деньги...

Михаил
12.09.2018
14:08:44
LimitedReader или LimitReader в io пакете
Так я смогу ограничить размер стрима. Тоесть если я загружаю стримом картинку то она просто обрежется и все? А как проверить она была больше или нет?

Roman
12.09.2018
14:10:08
https://paste.ubuntu.com/p/9j5j49RW4Z/ https://paste.ubuntu.com/p/PS8Q9RSMYd/
если есть желание добавить пример Lua того-же алгоритма то милости просим

Труба
12.09.2018
14:10:54
Хочу чтобы вы знали, когда вы говорите плохо про Node.js вы задеваете мои нежные чувства.

Страница 1395 из 1630