@dlangru

Страница 390 из 719
Pavel
25.01.2018
08:26:39
И чем больше тем лучше

Pavel
25.01.2018
08:27:16
Да есть empty

Google
Pavel
25.01.2018
08:28:20
Глянь в исходники, там внутри читается в буфер. И потом возвращается его длина.

Evgeny
25.01.2018
08:28:32
Как это можно гарантировать?
а в чем проблема? сокет знает саолько данных у него буферизовано

Igor
25.01.2018
08:28:52
Вообще должен быть вызов типа read в котором указан размер доступного буфера и нужно ли ждать его полного заполнения или можно вернуться при наличии любых данных

Pavel
25.01.2018
08:28:57
Если мы в буфер прочитали 500 байт то у нас гарантировано 500 байт

Igor
25.01.2018
08:29:14
Не юзерское это дело спрашивать есть данные или нет

Pavel
25.01.2018
08:33:31
http://forum.rejectedsoftware.com/groups/rejectedsoftware.vibed/thread/24403/#post-24416

Вот тут Людвиг и предлагает эти костыли

Google
Pavel
25.01.2018
08:34:57
Я так и сделал и смотрел удивлялся почему моя прокся при скачке файла выжирает одно ядро на 100%, а оказывается он по 1 байту читает в цикле :D

Pavel
25.01.2018
08:36:47
ну да и std.socket тоже нормально читают в неполный буфер

Igor
25.01.2018
08:36:53
Да... kqueue это отдаёт сразу по получении ивента

В линухе наверное нужен отдельный вызов

Pavel
25.01.2018
10:23:08
В общем я еще вчера интересное на форуме вычитал, не знаю говорили тут об этом ли нет. Есть чел по имени Илья Ярошенко. Еще год назад он поднял тему модульной стандартной библиотеки в режиме betterC и начал ее пилить

Подробности драмы можно прочитать тут http://forum.dlang.org/thread/phexetutyelrssyrucvw@forum.dlang.org

https://github.com/libmir/ а вот сама библиотека, но поскольку он математик-статистик, то в ней очень сильный уклон во всякие тензоры и прочий матан, и плохо развиты системные вещи. Имеет смысл в нее поконтрибутить или использовать ее как базу для betterC проектов.

Stepanos
25.01.2018
10:27:32
ооо, крутой дядька

Evgeny
25.01.2018
11:15:23
я всегда считал мир математической либой, там вообще системные вещи есть?

Pavel
25.01.2018
11:18:53
Вроде там только из этого какие-то зачатки безмусорных слайсов и контейнеры

Ну в общем все то что базово требуется почти всегда

qwerty
25.01.2018
11:19:53
так а на betterC есть какие-нибудь умные указатели?

Pavel
25.01.2018
11:20:58
Стандартного я ничего не встречал, велосипедов наверное много

Maxim
25.01.2018
11:23:18
самому за несколько секунд можно сделать)

https://paste.ofcode.org/xgEDqMVGMb4JU8e77eUwEx вот, например)

Igor
25.01.2018
11:24:20
такой вектор можно только по ссылке передать

Pavel
25.01.2018
11:26:14
Кстати а стилистически this (size_t n) nothrow @nogc так принято писать? Я всегда пишу всякие @nogc перед именем функции

Причем на строке выше

Maxim
25.01.2018
11:27:28
у меня как-то по настроению)

Google
Maxim
25.01.2018
11:28:23
обычно @ после имени, а nothrow перед, но пришел к выводу, что это практически такой же атрибут, как всякие @nogc, и теперь пишу после)

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

по крайней мере, у меня так)

Maxim
25.01.2018
12:00:00
он разный для 32 и 64 бит

32 и 64 бита соответственно)

Mike
25.01.2018
12:01:30
А смысл в нём вообще какой? Размер чего это? Почему нужно обязательно под архитектуру его подбирать?

Maxim
25.01.2018
12:03:48
мы тут как-то обсуждали уже вопрос и пришли к выводу, что исторически — это размер указателя на конкретной архитектуре

есть еще diffptr_t — он той же битности, что size_t, но со знаком

Alexey
25.01.2018
12:05:20
прямо как в плюсах :-)

Maxim
25.01.2018
12:05:30
прямо да

Pavel
25.01.2018
12:11:45
А смысл в нём вообще какой? Размер чего это? Почему нужно обязательно под архитектуру его подбирать?
Грубо говоря это абстрактный размер адресности любого всего что ты хочешь выразить в памяти

Если тебе нужен размер строки или размер массива или размер буфера или блока памяти или объекта, сразу берешь size_t и не думаешь особо

Хотя для очень больших объектов которые не помещаются в память целиком и лежат на диске, этого не хватит.

На 64 битах это получается 16 тысяч петабайт примерно можно охватить

Думаю до 2020 таких размеров точно будет хватать

Maxim
25.01.2018
12:15:36
если еще более абстрактно, то size_t — это максимальный размер непрерывного участка памяти, который теоретически способна предоставить архитектура)

Mike
25.01.2018
12:17:46
Если тебе нужен размер строки или размер массива или размер буфера или блока памяти или объекта, сразу берешь size_t и не думаешь особо
А что тут «думать особо»?) ? я всегда выбираю тип в зависимости от максимального возможного значения, которое собираюсь хранить ? зачем гвозди микроскопом забивать)) А насчёт указателей — так мне вообще пох как он там устроен, меня же интересуют лишь данные НА которые он указывает - и именно их тип... а внутреннее представление это удел явно не мой) Я не прав..?

Pavel
25.01.2018
12:18:31
Ты прав, именно поэтому тебе не надо выбирать между uint и ulong, а можно просто писать size_t

Google
Pavel
25.01.2018
12:19:27
> я всегда выбираю тип в зависимости от максимального возможного значения, которое собираюсь хранить Ты сам не можешь знать какой тип будет в качестве адреса, если ты его жестко зафиксируешь то при сборке на 32битной архитектуре может все покрешиться

Или наоборот, возьмешь ulong, а потом придумают 128битную архитектуру, и опять твоя программа покрешится

Pavel
25.01.2018
12:26:25
Не только адрес но и размер

Массива, блока памяти

Maxim
25.01.2018
12:29:25
собственно, встроенные массивы — это две переменные, насколько я понимаю, размера size_t: размер массива и указатель на начало)

ну и вообще, когда программа вспоминает, что она выполняется на электронном устройстве, начинается жонглирование указателями хотя бы неявное)

qwerty
25.01.2018
13:36:22
https://github.com/atilaneves/automem можно в betterC использовать?

Pavel
25.01.2018
13:38:18
Я вижу там есть немного использования std. библиотеки, может не заработать

Admin
ERROR: S client not available

Mike
25.01.2018
14:26:39
ещё вопросик от дилетанта: каким образом ЭТО работает? (ниже два скрина)





Уточню: КАК импорт модуля может добаить свойств/методов кому-то из другого модуля??? ?

qwerty
25.01.2018
14:28:11
UFCS

"123 456 567".split тоже самое что и split("123 456 567")

Dmitriy
25.01.2018
14:29:25
Вопрос был в другом надо полагать. Как классу массив добавляется новый метод при подключении дополнительного пакета

qwerty
25.01.2018
14:29:56
классу новых методов не добавляется

импортирутеся метод split

который вызывается

Google
qwerty
25.01.2018
14:31:31
https://tour.dlang.org/tour/en/gems/uniform-function-call-syntax-ufcs

Mike
25.01.2018
14:32:22
Вопрос был в другом надо полагать. Как классу массив добавляется новый метод при подключении дополнительного пакета
1) мне ответили именно то что я спрашивал 2) твоя "перефразировка" ничо не поменяла ?

Dmitriy
25.01.2018
14:34:47
Evgeny
25.01.2018
15:10:48
не, пропустил. полагаю, что с ЕСП пока все плохо. Оно все запроприетарено, поэтому компилятора D для него не существует. Статья в начальной стадии из-за моих частых поездок по стране.

Как только запузырю статью в песочницу обязательно отпишусь в эту группу

Mike
25.01.2018
15:37:07
не, пропустил. полагаю, что с ЕСП пока все плохо. Оно все запроприетарено, поэтому компилятора D для него не существует. Статья в начальной стадии из-за моих частых поездок по стране.
всегда поражался китайским бизнесменам - выпустили вкусную железк уи продают за копейки, однако выжать из неё весь потенциал невозможно, потому что софтовая часть для неё в состоянии попаболь ? я вот сейчас даже не смог нагуглить какая именно архитектура у ядра - то ли arm, то ли mips...... Вот за это мне нравятся старые-добрые АВРки: подробная инфа в открыторм доступе, давно запилен gcc и libc сооответственно, куча всяких программаторов (мне нравится usbASP в связке с avrdude ?) — я просто психологически отдыхаю когда на АВРке что-то делаю...... серьёзно: когда нервы уже не выдерживают мирового дерьма, то я сажусь паять какую-нибудь железку (хоть усилитель на биполятниках навесным монтажем), а потом программировать АВРку...... ? так обидно порой становится от того что в этом мире 99% вещей сделаны через жопу.................................................... ?

Evgeny
25.01.2018
15:38:41
всегда поражался китайским бизнесменам - выпустили вкусную железк уи продают за копейки, однако выжать из неё весь потенциал невозможно, потому что софтовая часть для неё в состоянии попаболь ? я вот сейчас даже не смог нагуглить какая именно архитектура у ядра - то ли arm, то ли mips...... Вот за это мне нравятся старые-добрые АВРки: подробная инфа в открыторм доступе, давно запилен gcc и libc сооответственно, куча всяких программаторов (мне нравится usbASP в связке с avrdude ?) — я просто психологически отдыхаю когда на АВРке что-то делаю...... серьёзно: когда нервы уже не выдерживают мирового дерьма, то я сажусь паять какую-нибудь железку (хоть усилитель на биполятниках навесным монтажем), а потом программировать АВРку...... ? так обидно порой становится от того что в этом мире 99% вещей сделаны через жопу.................................................... ?
да, архитектура неведомая. есть еще СТМки, не хуже ЕСП

причем с вайфаем тоже есть сборки

Mike
25.01.2018
15:41:39
причем с вайфаем тоже есть сборки
покажи варианты)) а то как-то они популярностью во всяких хобби-магазинчиках не пользуются.... а та же esp8266 190р в питере стоит (http://roboshop.spb.ru/esp-12e) - под неё адаптирована Mongoose OS и там на яваскрипте можно "хуяк хуяк и в продакшин" какую-нить простенькую хрень........... но это всё как-то "не серьёзно"(( хочется больше контроля железа, больше эффективности...

Evgeny
25.01.2018
15:45:00
https://m.seeedstudio.com/productDetail/2122 или помельче https://m.seeedstudio.com/productDetail/2488

оно правда подороже, зато известная архитектура, даташиты

и гпио много

Mike
25.01.2018
15:48:40
оно правда подороже, зато известная архитектура, даташиты
ещё есть популярные блютус-модулёчки типо "HC-04" - у его чипа внутри 51е ядро, но, блин тоже никакой инфы про него - а так бы тоже можно было бы юзать как "беспроводной МК" ?

Evgeny
25.01.2018
15:49:40
после аврок (особенно ардуины), стмки разрывают мозг

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

Mike
25.01.2018
15:59:22
после аврок (особенно ардуины), стмки разрывают мозг
я немножко приобщался... дошёл до моргания светодиодом)) ( вроде как достаточным понимаем что там внутри для этого делается ?)

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