@dlangru

Страница 331 из 719
qwerty
05.12.2017
17:48:58
за то теперь никого не посадят за лайк в VK

Oleg
05.12.2017
18:03:26
вопрос по opensource разработке

вот допустим есть проблема

issue открыт

Google
Oleg
05.12.2017
18:04:07
какой общепринятый механизм есть для определения кто решает проблему?

Eto
05.12.2017
18:04:47
Кто возьмётся тот и решает.

Oleg
05.12.2017
18:04:47
без такого механизма 2 и более людей могут начать решать проблему, а это как-то расточительно в плане ресурсов

ну понятно, что кто возьмётся

Eto
05.12.2017
18:05:22
Обычно пишут, когда решили сделать.

Oleg
05.12.2017
18:05:39
в issue? или создают wip pull request?

или ещё как-то?

или общепринятого нет?

Eto
05.12.2017
18:07:55
На себя можно вешать issues, можно написать в комментариях, можно просто сделать PR пока issue бесхозное или открыть WIP PR, но это обычно для чего-то большого и требующего обратную связь. Конкретные проекты могут иметь определённые правила в этом, а могут и не иметь.

https://tomayko.com/blog/2012/adopt-an-open-source-process-constraints

Oleg
05.12.2017
18:09:48
на себя повесить issue не будучи в команде, которая имеет write доступ в репозитарий вроде нельзя же

Eto
05.12.2017
18:10:49
Да, можно, если состоишь в команде. А это ещё нужно заслужить своими действиями.

Google
Stepanos
05.12.2017
19:45:31
https://github.com/deviator/duseful/pull/5

так лучше уже?

Oleg
05.12.2017
20:08:40
супер!

Stepanos
05.12.2017
20:10:51
буду джава раздел допиливать потехоньку

вопросов много будет по многопоточности)) ибо я ее в D не шарю, остальное вроде +- шарю

Oleg
05.12.2017
20:13:20
думаю общими усилиями можно все вопросы осветить будет

Stepanos
05.12.2017
20:16:24
прочитал еще сравнение с питоном - интересньіе вещи открьіл для себя)

Eto
05.12.2017
20:30:04
Сравнения с C нет?

Ackeard
05.12.2017
20:47:44
/1@PollBot

Oleg
05.12.2017
21:28:38
Сравнения с C нет?
имеет смысл? С++ практически расширение С. Часть возможностей в С отсутствует, а что присутствует общее с С++.

/1@PollBot
там есть новое голосование, старое не поддерживало несколько вариантов

на каких ресурсах вы состоите в группах по языку D? ▪️ telegram (dlang.ru) ▫️ vk (vk_dlang) ▪️ habrahabr ▫️ Discord ▪️ IRC ▫️ jabber(d@conference.jabber.ru) ? Можно выбрать несколько вариантов

Сравнения с C нет?
хотя, наверное, можно сделать, так как есть люди, знающие С, но плохо знающие С++

Eto
05.12.2017
22:36:10
Да, мне лично пофиг на всё в C++, кроме перегрузки функций и операторов.

У D есть свой Discord?

Andrey
05.12.2017
22:42:12
https://discord.gg/S9yzYuA

Oleg
05.12.2017
22:57:31
Да, мне лично пофиг на всё в C++, кроме перегрузки функций и операторов.
значит надо будет сделать общую папку для моментов, пересекающихся в С и С++

либо ссылками

хотя лучше ссылками

qwerty
06.12.2017
08:06:29
а у нас нельзя удалить элемент из массива через Range как-нибудь

Google
qwerty
06.12.2017
08:06:43
по аналогии с erase в векторе из C++

Igor
06.12.2017
08:07:47
a = a[0..1] ~ a[2..$] ?

Eto
06.12.2017
08:08:20
Изврат.

Igor
06.12.2017
08:08:26
)

qwerty
06.12.2017
08:08:58
А что извращенского в удалении элемента из контейнера?

везде это есть

Evil
06.12.2017
08:11:26
a = a[0..1] ~ a[2..$] ?
Ипанёт жи, если иф не поставить?

Igor
06.12.2017
08:12:15
я не возражаю что изврат

)

Evil
06.12.2017
08:15:24
Учитывая, что и так пишем на D, то все тут. Хотя отличный язык.

Igor
06.12.2017
08:30:12
может ошибаюсь, но если говорить о слайсах то удалять элемент из слайса который может использоваться кем-то еще - тоже изврат

добавлять - да, перемещать целиком - да, но двигать данные внутри?

Eto
06.12.2017
08:37:46
qwerty
06.12.2017
08:38:25
да я знаю

мне и надо удалить элемент контейнера

Igor
06.12.2017
08:40:35
https://dlang.org/phobos/std_algorithm_mutation.html#remove

удалить по позиции, по значению?

qwerty
06.12.2017
08:43:56
ну да по значению. Я бы сказал по итератору

или по указателю

как std::vector::erase в C++

Google
Andrey
06.12.2017
09:39:13
если контейнера, то возможно так auto a = Array!int(1, 2, 3, 4, 5); auto r = a[2..3]; a.linearRemove(r); writeln(a[]);

Oleg
06.12.2017
14:25:58
https://docs.google.com/forms/d/e/1FAIpQLSdPFx9ebHJ05QSW1VypBsQPw-1RbZ1v8FMgo1su6NvN6VErBw/viewform

наконец начали собирать фидбеки

qwerty
06.12.2017
14:49:03
кто автор формы?

dlang foundation

?

Andrey
06.12.2017
14:55:40
Это массив из std.array?
это из std.container.array. std.array это методы для дишных встроенных массивов

Oleg
06.12.2017
14:55:46
кто автор формы?
https://forum.dlang.org/thread/hrtakvaqrhvayeidqxbb@forum.dlang.org

webfreak001

Admin
ERROR: S client not available

Andrey
06.12.2017
14:56:03
контейнеры, ранги, массивы.. ))

qwerty
06.12.2017
14:56:14
ничего себе сколько людей из рашки

ассоциативный массив это реализация hash table ?

да

не могу понять red black tree и hash set это одно и то же или нет

вот я смотрю на определение в некоторых ресурсах и пишут, что hash set не сортирует элементы. Однако, я смотрю на реализацию в python и его реализация hashset сортирует их

как и красно черное дерево

Andrey
06.12.2017
19:21:35
red black tree это дерево, а hash set - хэш таблица

Google
qwerty
06.12.2017
19:48:46
hash map - это таблица

Dmitry
06.12.2017
19:52:31
Интересный коммент: "Пробывали писать на aiohttp, и… не получилось. В определенный момент пришлось переписать все на стандартном стэке Flask + SQLAlchemy. Aiohttp — хороший фреймворк для написания простых и плоских (flat) приложений (вроде todo-листа или веб-чата), но когда дело доходит до написания серьезных приложений, насыщенных ООП и с хоть какой-нибудь вложенностью, то делать это крайне тяжело. Поскольку любые функции для работы с БД должны быть корутинами, то и функции, вызывающие их, так же должны быть корутинами. В результате весь код превращается в одну большую корутину, со всеми вытекающими последствиями." У D такая же ситуация?

Andrey
06.12.2017
20:14:23
hash map - это таблица
Тут я имел ввиду что hashmap hashset это хэш таблицы, где hashmap хранит значения, а hashset не хранит.

qwerty
06.12.2017
20:14:35
во!

то есть все-таки разные вещи?

Andrey
06.12.2017
20:15:24
грубо говоря hashset это урезанный hashmap

qwerty
06.12.2017
20:25:15
Интересный коммент: "Пробывали писать на aiohttp, и… не получилось. В определенный момент пришлось переписать все на стандартном стэке Flask + SQLAlchemy. Aiohttp — хороший фреймворк для написания простых и плоских (flat) приложений (вроде todo-листа или веб-чата), но когда дело доходит до написания серьезных приложений, насыщенных ООП и с хоть какой-нибудь вложенностью, то делать это крайне тяжело. Поскольку любые функции для работы с БД должны быть корутинами, то и функции, вызывающие их, так же должны быть корутинами. В результате весь код превращается в одну большую корутину, со всеми вытекающими последствиями." У D такая же ситуация?
тут дело не в языке, а скорее в архитектуре приложения. Когда нужен realtime, то берется такая асинхронная сетевая либа и соответственно строишь свое приложение исходя из того, что он должно быть realtime. И этот realtime надо контролировать. Если realtime не нужен (имеется ввиду, что не надо вручную им управлять. Делать корутины и т. п.), то берется какой-то веб фреймворк и делаешь endpiont-ы по которым доступны операции с данными. А вся асинхронность кладется на плечи веб-сервера. Бывает, что надо то и другое и пишут тогда 2 приложения на разных технологиях. Это обычная практика. Однако в своем высказывании я не до конца уверен, потому что есть nodejs, на котором пишется оба типа приложений. Но про мир JS я сказать ничего не могу

Oleg
06.12.2017
20:38:14
тут дело не в языке, а скорее в архитектуре приложения. Когда нужен realtime, то берется такая асинхронная сетевая либа и соответственно строишь свое приложение исходя из того, что он должно быть realtime. И этот realtime надо контролировать. Если realtime не нужен (имеется ввиду, что не надо вручную им управлять. Делать корутины и т. п.), то берется какой-то веб фреймворк и делаешь endpiont-ы по которым доступны операции с данными. А вся асинхронность кладется на плечи веб-сервера. Бывает, что надо то и другое и пишут тогда 2 приложения на разных технологиях. Это обычная практика. Однако в своем высказывании я не до конца уверен, потому что есть nodejs, на котором пишется оба типа приложений. Но про мир JS я сказать ничего не могу
/*зануда-мод*/ думаю не стоит вводить людей в заблуждение словом realtime, ибо в мире веб нет realtime т.к. realtime это требование к системе, когда алгоритм должен отреагировать на входные данные за заданный промежуток времени, а выход за пределы это критическая (для hard realtime) или восстановимая (для soft realtime), но всё же ошибка. Ни одна операционная система общего пользования (linux, windows, macos) в том виде, в котором её обычно используют не может подходить для realtime в этом понимании. Есть модификации планировщика задач linux, которые приближают выполнение софта к soft realtime, но и это тоже не про веб.

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

qwerty
06.12.2017
20:45:49
Realtime подразумевает фиксированное время реагирования или не более определённого времени

?

Oleg
06.12.2017
22:28:01
Realtime подразумевает фиксированное время реагирования или не более определённого времени
не более определённого времени (в смысле гарантированно) классический пример soft realtime это воспроизведение видео: если кадр будет разжиматься/отображаться медленней частоты кадров, то будет неприятно/невозможно смотреть видео, но, как минимум никто не умрёт системы, от которых зависит жизнь чаще всего hard realtime — если там что-то будет долго тупить, то это крайне критично

и опять же hard/soft realtime не обязательно будут иметь требование к скорости реакции на данные в пределах миллисекунд пример: домменая печь — система должна гарантированно реагировать на входящие данные в пределах минуты, но это однозначно должно произойти (система в этот момент не имеет права копаться со swap-разделом, совершать обновление или ещё какие-то действия)

так же из производства пример: механизм насыпания точной массы песка/щебня — створки должны закрыться именно в положенный момент, иначе песка/щебня будет насыпанно больше или меньше заданной массы (учитывается ещё масса падающего столба, который ещё не упал на весы, но преодолел створку)

Stepanos
06.12.2017
22:39:51
такие вещи апаратно делаются

Oleg
06.12.2017
22:39:57
не всегда

ну и что сейчас "аппаратно"?

сейчас именно "аппаратно" уже никто не делает, а делается микроконтроллеры с программами, которые выполняются в реальном времени

Stepanos
06.12.2017
22:41:23
ну да, realtime

я не говорю о механике

Oleg
06.12.2017
22:44:42
я в целом об использовании слова realtime как термина. когда люди под одним и тем же словом понимают разные вещи случается недопонимание

Andrey
06.12.2017
22:45:47
нужна спец пометка возле слова, когда человек использует термин в своем понимании

Oleg
06.12.2017
22:45:59
ну или хотябы кавычки

Страница 331 из 719