@proGO

Страница 1054 из 1674
Dmitriy
15.12.2017
08:38:11
event-driven это когда событие управляет выполненияем. Причем здесь позднее связывание?

Что мне мешает написать код поверх libev, когда все вызовы будут известны на этапе компиляции?

Где здесь позднее связывание?

Модель акторов, например. Все вызовы тоже будут известны

Google
Dmitriy
15.12.2017
08:39:18
Чем не ED? ED.

Anatoly
15.12.2017
08:39:51
если есть событие за которое я могу зацепиться - я могу в будущем расширить механизм. есть возможность позднего связвания. если события нет - единственный путь менять код исходного механизма. нет возможности позднего связывания.

для того чтобы были события и я мог за них цепляться - нужна событийная механика внутри системы

Dmitriy
15.12.2017
08:40:50
А чем тебе select/epoll/kqueue не событийная механика?

Anatoly
15.12.2017
08:41:18
А чем тебе select/epoll/kqueue не событийная механика?
это разные вещи. у них только одно общее - слово событие.

epoll - это петля событий. асинхронное исполнение.

Dmitriy
15.12.2017
08:42:22
А мы когда говорим про событийное программирование нам нужны другие слова кроме "событие"?)

Если копнуть глубже, окажется что нам интересны побочные эффекты

Anatoly
15.12.2017
08:43:54
Дмитрий, сорри, но я не готов спорить. Мне лишь нужно знать есть тут у кого то опыт создания больших модульных систем или работы с событийной архитектурой. Если вы не знаете что это такое, я не смогу вам это объяснить.

Dmitriy
15.12.2017
08:44:32
А на чем мсье пишет?)

Anatoly
15.12.2017
08:44:45
так WordPress конечно же ))

Dmitriy
15.12.2017
08:45:12
У меня большой опыт программирования всяких больших штук на эрланге, так что я, наверное, немного таки понимаю в предмете разговора

Anatoly
15.12.2017
08:46:06
Если вы путаете Event Driven & Event Loop и не способны понять разницу - то видимо зря потратили время

Google
Dmitriy
15.12.2017
08:46:16
Да да, конечно

Vany
15.12.2017
08:56:53
Перл теперь ко мне отойдёт =) На переле есть Офигенный AnyEvent и доисторическое POE

К теме вопроса - у меня хороший опыт написания модульной системы на перле, когда модули добавляют свои события и слушают общие, но на Го оно не переносится. Наследование слишком куцее, НЕТ МИКСИНОВ!!!

Единственное что я вижу на Го - Это интерфейс Плагин, у которого есть инициализация и регистрация своих именованных хуков, ну так же ему можно дать доступ в нетипизированное межплагинное хранилище данных напрямую.

Anatoly
15.12.2017
09:10:57
сам механизм событий пишется за пару часов. там ничего сложного. и гуглится легко https://github.com/youaresofunny/gohooks однако одно дело формальное наличие, другое дело опыт использования. птм и интересно есть ли реальный опыт.

Alexander
15.12.2017
09:13:09
топовая либа))

Anatoly
15.12.2017
09:14:37
нечто похожее есть у Symfony как компонент. у JS есть нативная реализация. у WP/Drupal оно встроено в ядро платформы. у RoR есть некие зачатки в Redmine. Но очень бедно и хрупко. во всех вариантах есть успешный опыт применения как в рунете, так и у меня. а птм хочется понять есть ли что то подобное у Go сообщества.

Vany
15.12.2017
09:21:40
У нас такое тоже есть, поразвесестие, например, что делать, если один из хуков работает 20 секунд? а 20000 секунд ? =) у нас такой есть. Поэтому хуки приоритезируются и есть отдельная горутина для их выполнения.

Arch
15.12.2017
09:47:52
Народ, скажите, а в го есть какой-то инструментарий по контролю за горутинами? кроме каналов, как узнать сколько их сейчас крутится, список всех горутин, завершить определенные и тд и тп

Ilya
15.12.2017
09:50:10
без костылей никак

Arch
15.12.2017
09:59:10
you are doing it wrong
And how i need do this?

John
15.12.2017
10:00:15
And how i need do this?
Если тебе, внезапно, это понадобилось, значит, что-то не так с дизайном

Arch
15.12.2017
10:01:25
Я хочу проверять не осталось ли у меня зомби горутин))) после закрытия каналов

Чтобы память не утекала

Arch
15.12.2017
10:02:51
Понял)

Google
Vany
15.12.2017
10:09:02
Roman
15.12.2017
13:41:38
в Go 1.9 до сих пор существует overhead вызова C/C++ ?

Nick
15.12.2017
13:44:32
он существует у всех языков с gc

Kirill
15.12.2017
13:45:51
он существует у всех языков с gc
...но почему-то мы ждем, что в го его не будет уже в версии 1.9

Nick
15.12.2017
13:46:19
чего не будет? gc ?

Kirill
15.12.2017
13:46:40
Оверхеда

Nick
15.12.2017
13:46:47
фантастика

Kirill
15.12.2017
13:46:53
Бинго

Да чего уж там, уже, можно сказать, скатился

Sergey
15.12.2017
14:03:21
чтобы скатиться нужно сначала подняться, а он даже не поднимался

?
15.12.2017
14:04:38
каааааааааааааааак?

Lucky
15.12.2017
14:07:39
И куда теперь с го?

?
15.12.2017
14:08:35
будем ждать, пока кто-то не создаст новый яп?

Tema
15.12.2017
14:08:35
Lee
15.12.2017
14:08:49
Из-за чего кипишь, воу!

Tema
15.12.2017
14:08:51
Rust называется

Lee
15.12.2017
14:09:18
Перестаньте разводить

Kirill
15.12.2017
14:09:52
Rust называется
Будь я админом, банил бы за такое на месяц :)

Tema
15.12.2017
14:10:06
Google
Kirill
15.12.2017
14:10:07
Просто для профилактики жирных

Tema
15.12.2017
14:10:12
накинулся за просто так

Kirill
15.12.2017
14:10:21
Ну правильно, я теперь еще и тролль.

Lee
15.12.2017
14:10:46
Вот из-за таких как вы — приходится выключать уведомления и пропускать важную информацию.

Kirill
15.12.2017
14:11:16
Rust ну такое... там своих приколов хватает. Я понимаю, что есть целый слой Rustодрочеров, которые молятся на него, аки нацисты на пенис Гитлера, но от этого ни Гитлер лучше не становится, ни Rust

Вообще, сравнивать системный язык с языком общего назначения имхо не очень корректно

Admin
ERROR: S client not available

Tema
15.12.2017
14:13:19
ну про Rust было типа в контексте "новый язык"

Kirill
15.12.2017
14:14:58
А, просто какой-нибудь новый?))

Foxcool
15.12.2017
14:15:06
Перл 6

Ща будем перебирать (((:

Anatoly
15.12.2017
14:15:46
А, просто какой-нибудь новый?))
Стоит попробовать Kotlin без JVM (Kotlin Native)

Nick
15.12.2017
14:16:24
Стоит попробовать Kotlin без JVM (Kotlin Native)
если только ты на линуксе

Anatoly
15.12.2017
14:16:36
если только ты на линуксе
почему? Kotlin Native построен на базе LLVM, поэтому кодогенерация будет и под iOS, Windows, Linux

Nick
15.12.2017
14:17:24
наивный

рантаим сам себя не напишет

Arch
15.12.2017
14:24:45
А с Го - то что не так стало?

летом что-то про го2 писали

Tema
15.12.2017
14:25:12
А с Го - то что не так стало?
кто то решил что с++ медленный

Arch
15.12.2017
14:26:08
Кому медленно, попробуйте питон, там реал медленно)))) После питона - исполнение го как глоток свежего воздуха

Google
Dmitriy
15.12.2017
14:39:58
зато скорость разработки наоборот, после го как глоток свежего воздуха

?
15.12.2017
14:41:08
вот и хотелось новый язык

но я уже привык и к питону и к го и уж тем более к пхп?

Dmitriy
15.12.2017
14:42:22
руби попробуйте, если охота красивый язык

Sparrow
15.12.2017
14:42:37
бггг

Dmitriy
15.12.2017
14:42:50
бгг

?
15.12.2017
14:43:01
нет спасибо, там есть некрасивость одна... ща

Dmitriy
15.12.2017
14:43:24
питон норм, а руби бггг . ну ну

?
15.12.2017
14:46:10
питон норм, а руби бггг . ну ну
это да, синтаксис более человечен у питона

Dmitriy
15.12.2017
14:47:25
одного порядка языки

?
15.12.2017
14:47:51
а тут например, посмотри end, if @names.nil? шта блин за @ и ? class MegaGreeter attr_accessor :names # Create the object def initialize(names = "World") @names = names end # Say hi to everybody def say_hi if @names.nil? puts "..." elsif @names.respond_to?("each") # @names is a list of some kind, iterate! @names.each do |name| puts "Hello #{name}!" end else puts "Hello #{@names}!" end end end

это вот еще @names.each do |name|

Dmitriy
15.12.2017
14:48:54
@names.nil? тут вообще не надо использовать. просто if @names

Dmitriy
15.12.2017
14:49:03
А что в сигилах не так?

?
15.12.2017
14:49:16
Хотя я Rust смотрел, там еще хуже...

Dmitriy
15.12.2017
14:50:39
@names.each do |name| - это передача блока. Пример убогий кстати

Lee
15.12.2017
15:02:22
Какого хрена? Я уже подумал, что в чат питонщиков попал

Страница 1054 из 1674