Здравствуйте, Мишень-сан, Вы писали:
МС>Идеи хорошие, но синтаксис в стиле J и уйма сокращений немного напрягают. В данном случае это именно экономия на спичках. Насчёт модели памяти и ссылок ничего умного сказать не могу, т.к. опыта маловато. Может, и можно было бы сделать попроще. Хотя в том же D, который все регулярно вспоминают, обошлись собственно управляемой кучей и placement new.
В D забили на многопоточность.
Здравствуйте, Мишень-сан, Вы писали:
МС>Насчёт модели памяти и ссылок ничего умного сказать не могу, т.к. опыта маловато. Может, и можно было бы сделать попроще. Хотя в том же D, который все регулярно вспоминают, обошлись собственно управляемой кучей и placement new.
В D по дефолту потоки не шарят память. Там есть модификаторы immutable (никто не меняет) и const (тебе нельзя менять), потоки обмениваются immutable сообщениями.
Здравствуйте, Cyberax, Вы писали:
C>В D забили на многопоточность.
Как это? Разверни мысль, пожалуйста. Из того, что я видел, там наоборот много мыслей ей посвящено и многое уже удобно сделано (кое-какая изоляция потоков, посылка-прием сообщений а-ля эрланг, удобные конструкции для параллельной обработки данных).
Здравствуйте, D. Mon, Вы писали:
C>>В D забили на многопоточность.
DM>Как это? Разверни мысль, пожалуйста. Из того, что я видел, там наоборот много мыслей ей посвящено и многое уже удобно сделано (кое-какая изоляция потоков, посылка-прием сообщений а-ля эрланг, удобные конструкции для параллельной обработки данных).
Он, видимо, имеет ввиду, что GC там глобальный. И модель памяти не запрещает шаринг данных.
Здравствуйте, Mr.Delphist, Вы писали:
MD>Мне почему-то это напоминает попытки "reinventing C++, но с перловым преферансом и функциональными девушками"
Да, начинает напоминать. Но вот плохо ли это? По большому счету, в Rust куда более грамотно отрезали опасные вещи связанные с работой с памятью, чем, к примеру, это было сделано в Java. Для написания многопоточных серверных приложений, Rust обещает быть именно тем самым языком, который и работу упростит, и просадку по скорости и по памяти не сделает особо уж чудовищной. Но, это все будущее, и наступит ли оно, пока не известно. Так что на данный момент, можно смотреть как язык развивается и помогать ему, если есть на то желание, родиться и окрепнуть
Здравствуйте, kaa.python, Вы писали:
KP> Кроме того, я сделал перевод обзора основных нововведений несколько дополнив его, относительно официальной версии.
Так что в блоге то? Давай у нас, в виде статьи, опубликуем.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Синтаксис — няшка (сравнительно с Си-подобными ЯП).
Аннотации чистоты в том виде, в котором они есть сейчас (без полиморфизма эффектов) — не очень. Вообще, проблема с системами эффектов в том что они либо недостаточно выразительны, либо синтаксически тяжеловесны.
Отсутствие разделяемой между потоками памяти — большой минус, это можно сделать безопасно если ограничить такие данные иммутабельными.
Здравствуйте, SilentNoise, Вы писали:
SN>Отсутствие разделяемой между потоками памяти — большой минус, это можно сделать безопасно если ограничить такие данные иммутабельными.
Здравствуйте, kaa.python, Вы писали:
KP>Здравствуйте, SilentNoise, Вы писали:
SN>>Отсутствие разделяемой между потоками памяти — большой минус, это можно сделать безопасно если ограничить такие данные иммутабельными.
KP>Так это есть же.
Здравствуйте, kaa.python, Вы писали:
KP>Здравствуйте, SilentNoise, Вы писали:
SN>>Отсутствие разделяемой между потоками памяти — большой минус, это можно сделать безопасно если ограничить такие данные иммутабельными.
KP>Так это есть же.
Возможно, я что-то не так понял, но как мне сделать иммутабельную структуру данных разделяемую между разными потоками (не отдельные копии для каждого потока, а просто указатель на эту структуру в каждом потоке), если разделяемые указатели не могут быть переданы в другой поток?
Здравствуйте, kaa.python, Вы писали:
KP>Да там синтаксис постоянно меняется, вроде говорят что в последнем релизе он "почти окончательный", так что буду писать
Ну, дык, можешь хоть раз в месяц описывать. Что нам жалко что ли?
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, SilentNoise, Вы писали:
SN>Возможно, я что-то не так понял, но как мне сделать иммутабельную структуру данных разделяемую между разными потоками (не отдельные копии для каждого потока, а просто указатель на эту структуру в каждом потоке), если разделяемые указатели не могут быть переданы в другой поток?
Иммутабельные структуры (Const) передаются между потоками без копирования.
Здравствуйте, kaa.python, Вы писали:
KP>Здравствуйте, jazzer, Вы писали:
J>>Ух ты! А куда, если не секрет?
KP>По ряду причин мы вернулись в Мск. KP>Так что я со следующей недели буду сотрудником ЛК во второй раз, тут это практически без альтернативный вариант