Кажется, не пропустил. Перечень типов вами заранее определён в шаблоне. Где здесь динамика? Тем более, где здесь полиморфизм?(Ладно, это я погорячился.)
"Полиморфные структуры данных и производительность"? Насколько я понял, поставленную в первом абзаце задачу вы не решили. Где здесь, собственно, "полиморфизм", если вы решили задачу разворачивания вектора структур в структуру из векторов. Где здесь, собственно, "динамический", если у вас всё на статике и этапе компиляции?
Не, сама по себе структура прикольная - и очень полезна в числодробилках. Возможно, я её у вас даже и притырю. Просто назовите статью честно, "Преобразование AoS в SoA на двадцатых шаблонах", и будет вам почёт и уважение. А так, я пришёл за пельменями, а меня шарлоткой накормили. Вкусно, конечно, но не то.
Если договор уже есть, нужно судиться, чтобы суд признал некоторые пункты договора ничтожными (то есть, вычеркнул). А если нет, можно в прокуратуру написать, чтобы текст договоров проверили, так как какая-либо УК химичит. А как иначе?
Депутаты хором отвечают, что никогда не занимались заданным вопросом и ничего не понимают в заданном вопросе.
Так-то, нормальный ответ. Если я за медицину не знаю, я в неё и не лезу. Вам нужно интересоваться профильными комиссиями, к какой из них ваш вопрос подходит. А вы уверены, что ваш вопрос вообще должен быть адресован депутатам? Скорее всего, вам нужно в администрацию.
Депутаты имеют полномочия подавать депутатские запросы и обращения, а так же проводить проверку деятельности тех или иных госструктур. Вполне себе исполнительная власть. Другое дело, что там этих полномочий практически нет.
Депутаты и не должны исправлять ошибки в договоре. Депутаты - это законодательная и, отчасти, исполнительная власть. Они договорами не заведуют.
Если есть ошибки в договоре, нужно их через суд оспаривать, а не через депутатов. Нанимаете юриста, находите, согласно каким законам и указам у вас ошибки, подсчитываете ущерб - и судитесь. Если выиграете дело, суд может заставить УК выполнить все работы, провести перерасчёт. И может запретить УКшке передавать ваш дом на срок, например, до окончания действия договора или до выполнения всех требований. Ещё в прокуратуру можно жалобы отправлять, что УКшка не выполняет предписанные законом функции в полной мере. Особенно, если человек 10-15 из одного дома разом отправят, реакция бывает очень бурной (для УК).
Мой личный опыт - заочно до многих можно достучаться за 2-4 дня. Нужно стучать на контакты с официальных страниц (той же мэрии), там обычно секретари сидят, но бывают и они сами лично. С секретарями тоже можно договориться о способе связи, если значения Красноречия и Харизмы не отрицательные. Главное, чтобы не робот. Депутаты часто бывают в отъездах - это норма. Не нужно биться головой только к одному, их обычно от 50 до 200 человек. В конце концов, через одного депутата проще достучаться до остальных, чем через ноль депутатов. Ещё хорошая тема - помощники депутата. Там часто толковые молодые и идейные бывают (потому что платят мало, не идейных на долго не хватает). Вот с личными встречами непросто, пробиться через толпу не самых адекватных бабок и просто городских сумасшедших. Некоторые депутаты идут на контакт, встретиться в неприёмные часы или после работы. Кто-то - нет. Но личные встречи обычно и не требуются.
Люди странно себя ведут. Они одной рукой дрочат на западные предвыборные рекламные слоганы "он обычный парень, такой же, как мы с вами", а другой рукой на предложение поговорить с представителем власти (да просто городским депутатом или начальником управляющей компании) пытаются тебя побить. Погодите, если вы хотите во власти "таких же парней из соседнего двора", почему вы стесняетесь к ним подойти, поболтать за жизнь, попросить совета или помощи? Да и просто поддержать, поздравить с праздником или с победой любимой команды? Это же обычные парни и девчонки из соседнего двора!
Получал я отписки. А ещё получал "По вашему обращению: рассмотрено дата передано к исполнению дата срок выполнения не позднее дата". Или "По вашему обращению: отказ в связи с технической невозможностью выполнения <список убедительных причин, с которыми я согласился>". А ещё вопросы отправлял в администрацию города через сайт - и эти вопросы входили в протоколы заседаний горсовета. Не всегда мне нравились ответы - но эти ответы были, и они не были формальными отписками. И один из них решил мои проблемы.
Предупредить проще, чем разгрести последствия. Вы с этим, скорее всего, не сталкивались на уровне ААААААЪКАААА314DECАААААААБЛДЖАААААААААД, поэтому и относитесь легкомысленно. Как только ответственность более-менее серьёзная, "не залететь" становится для ответственного идеей-фикс.
Вот, например, есть промышленные альпинисты. И у них должна быть экипировка в очень хорошем состоянии. Всё сомнительное - на выброс. И многие начальники снабжения этому неукоснительно следуют. А кто не следует - периодически заезжает в тюрьму лет эдак на 5, за халатность при исполнении, когда их подчинённые насмерть разбиваются из-за неисправного карабина. Это экстремальный пример, конечно. Но риски заехать по антикоррупционному - вполне себе осязаемы для чиновников. Поэтому им проще завалить закупки, нежели оправдаться за переплату.
Ваше же предложение наплодит кучу восхитительных историй, когда закупщик по своей инициативе натворит всякой дичи, а потом будет перекладывать ответственность на непричастных. Плавали, знаем. Они текст-то переписать не всегда могут без ошибок, поэтому появляются требования к "процессору" иметь "200 ГБ памяти" и вакансии на Java Crypts программистов. А вы им такие полномочия давать хотите.
Если я правильно понимаю суть происходящего, проблема в том, что в один алгоритм запихали слишком много, как в том стишке:
Берём сперва укропу. Потом кошачью жопу. Двадцать пять картошек. Семнадцать мандовошек.
и далее по тексту. То есть разные типы закупок заставляют проводить по единому алгоритму. И хорошим решением было бы эти алгоритмы разделить.
Закупки стандартного производственного, бытового и офисного оборудования оставить анонимно рыночными. Те же ноутбуки, телефоны и принтеры, для которых параметры следует задавать плавающими в широких пределах, а стоимость имеет больший вес, можно и на аукционах закупать.
Изготовление и закупка простых изделий может быть упрощены, вплоть до допуска ИП и физиков до конкурсов. Какая разница, кто вам вырежет 2000 табличек из акрила, если срок и качество соответствует требуемому? Или поставит 20 000 салфеток? Хотя, согласен, выбор исполнителя превратится в ад.
Изготовление и поставка сложного оборудования должна в большей степени подвержена предыдущему опыту компании, действующим контрактам и закупкам, и наличию требуемых мощностей, а так же качеству сопровождения. А цена должна быть на втором месте.
В таком изложении звучит просто. А потом начинаются детали, как это всё разделить, как это всё организовать и как это всё проверить...
Вы написали про допуск китайских OEM производителей, что это плохо. Я не спорю, у них часто продукт не отличается качеством. С другой стороны, и крупные вендоры, вроде HP или Brothers, порой такой шлак на рынок забрасывают, туши свет. А с российскими производителями китайцам бороться непросто, потому что графа "сделано в РФ" при закупках является значительным аргументом "за". Уж точно серьёзнее, чем разница в 5% стоимости. Поэтому именно этот аргумент звучит не настолько убедительно. Особенно, сейчас, когда многие крупные вендоры ушли с нашего рынка - и даже китайцы не все горят с государством торговать.
С другой стороны, я думаю, вы согласитесь с тем, что сама по себе формализованная процедура закупок с централизованным реестром - нужна и полезна. Хотя формализация усложняет процесс и оттягивает на себя ресурсы. И что процедура поиска оптимального набора правил необходима. А раз она необходима, нужно сначала ввести неоптимальные правила, потом оценить, в чём они не оптимальны, и затем сформировать новый набор. Мы уже 5 итераций прошли. Это значит, что законодатели понимают, что правила не оптимальны, но ещё не могут определить, в чём. И как их исправлять.
Мне бы хотелось, чтобы вот такие вот люди, как вы, непосредственно занятые в процессе, свои мысли не только на хабр выкладывали, но и присылали в профильный комитет госдумы - и лично депутатам из этого комитета. Передать обратную связь непосредственно с мест, так сказать, и описать практический опыт. Можно тысячу раз написать в комментах "Да они там знают, да они специально, да оно там куплено". А можно один раз начать переписку - и посмотреть, чем оно закончится. А вдруг станет лучше? Вдруг там люди действительно хотят всё сделать правильно? Что вы, в конце концов, теряете?
Не, идею с подменой макросов лучше оставить за бортом. На плюсах уже сколько десятилетий блюют от заголовочника <windows.h> и его глобально переопределения макросов min и max, перекрывающее даже стандартную библиотеку std. Вы НЕ хотите такого в своём ньюланге. Как минимум, импорт-экспорт нужно реализовывать, как в питоне, контролируя пространство. в которое попадают импортированные символы.
А вообще, цельтесь на AST. Так хотя бы будет оправдание, зачем нужен новый язык с кучей слешей. Пока что лучший аргумент "за" звучал просто "пусть будет". Сильно, но не очень.
"Куда более читаемым" - да. Я плюсы в пример привожу не столько потому, что на них пишу, сколько потому, что на них можно писать: 1) нечитаемо 2) ужасно 3) страшно 4) не по принятым стандартам
Пять лет спустя налетел на нашу переписку и с интересом перечитал. За это время произошло много интересных и, в общем-то, жутких событий, которые перетряхнули мир.
Забавно, как много действий в странах, которые принято считать "либеральными демократиями", прямо нарушало права и свободы большинства. Вплоть до санкционной политики, которая ставит существенную долю граждан на грань выживания. И как многие "либеральные" действия, которые мы вскользь упоминали в обсуждении (разрешение лёгких наркотиков, в том числе, через популяризацию антидепрессантов, или пропаганда ЛГБТ), уже принесли вполне себе осязаемые негативные эффекты обществам, в которых они внедрялись.
Однако, очень занимательно наблюдать, как твой взгляд на мир меняется со временем - и как он проверку этим временем проходит...
PVS-Studioне даст соврать, видимость символа ни капельки не уменьшает вероятность опечатки или пропуска правки во время копипасты.
Если честно, то я пока про это не задумывался, поэтому спасибо за идею
Вопрос с подвохом, потому что оба варианта хуже. Если позволить многоуровневые макросы вида \\\foo() -> \\bar() -> \buz()получается нечитаемая фигня без контроля вложенности, ломающая всё на своём пути. Если не позволить, параметризация макросов должна проходить через ветвления аля #ifdef #elif #endif. Что, в общем-то, неплохо, но ничем не лучше уже существующих решений, как по читаемости, так и по удобству. Вам бы макросы сделать, как код, выполняющийся над синтаксическим деревом языка в месте подстановки. Но в этом месте можно и порваться.
Слеш перед термином однозначно указывает на имя макроса, а использование префиксов для них является обязательным. Функция с именем макроса тоже может быть как и такой же объект в другом модуле или пространстве имен.
Помню я те прекрасные времена, когда ошибка в программе на питоне была из-за двух пробелов. Теперь ещё и слеши...
Макросы не возвращаются и не разименовываются, так как обрабатываются отдельным парсером ДО анализа компилятором языка.Именно этот момент позволяет использовать в макросах не только топовые операторы, но и полностью менять сам синтаксис (при большом извращенном желании).
То есть параметризировать сборку через параметризацию подстановки макросов нельзя? Как-то странно.
Меня смущает, что в вашем "примере покороче без знаков вопроса" пять слешей. Которые не нужны.
Кстати, а могут быть одноимённые функции, макросы и переменные? $next := \next(next(foobar)) А может ли макрос возвращать макрос, который можно разыменовать слешем? \\findMacroFor(situation)
Есть небольшая разница, нужно ли мне писать этот символ иногда, чтобы подчеркнуть какую-нибудь особенность типа double ** matrix_p или специальную операцию Singleton::instance()->foo() - или ::мне \нужно писать $их \чуть-\ли не в \каждом :слове.
Вы, конечно, можете возразить, что тут перемешаны переменные, макросы, типы и области видимости. Но мне не просто всё равно, мне абсолютно всё равно. Зато кому не всё равно, так это авторам более зрелых языков, которые у себя засахарили всякие auto, using и прочие &, чтобы исходник из адского ада
for (std::vector<MahType<Foo, Bar::Buz<BufferType, std::allocator<BufferType>>*>::iterator i = foos.begin(); i != foos.end(); ++i) {
(*i)->foobar();
/*...*/
}
превратился в абсолютно эквивалентный и куда более читаемый
using BarBuzBuffer = Bar::Buz<BufferType, std::allocator<BufferType>>;
using MahFooType = MahType<Foo, BarBuzBuffer>;
std::vector <MahFooType*> foos;
/*...*/
for (auto _i = foos.begin(); _i != foos.end(); ++_i) {
MahFooType * i = (*_i);
i->foobar();
/*...*/
}
Ага. Только всякую хрень про "распределённость", "уникальность" и "консенсус" можешь оставить не очень грамотным людям, которые термин "репликация" не слышали. Давай с козырей заходи сразу.
Тем не менее организовать это на уровне стандартных экономических и юридических процессов на международном уровне было бы невероятно сложно, долго и дорого.
Дороже всего в этом бренном мире нам обходятся гарантии. Чем сильнее и продолжительнее гарантия, тем больше её доля в стоимости. DAO дешёвый, потому что не имеет никакой юридической силы - и, соответственно, не даёт гарантий участникам.
Любая площадка по сбору денег на такой стартап сказала бы "Да вы за###тесь оформлять доли иностранным гражданам!!!" - и была бы права. Передать долю бизнеса резиденту уже не просто, а иностранному гражданину - в любой стране - очень серьёзная боль пониже копчика. И сильнее всего болеть будет кошелёк. Только какой-нить kickstarter или boomstarter явно заявляет в правилах, ну_наXYZ.gif, а основатель DAO об этой правовой засаде узнает только на этапе передачи долей.
большая часть таких проектов стартует с распродажи своих игровых предметов, а потом либо медленно загибается, либо пытается на маркетинге заманить новых игроков, с донатов которых выдать какой-никакой профит старым игрокам и тоже загнуться после этого. Поддерживать чужие NFT им вот вообще никак не выгодно.
Потому что перенос предметов = перенос денег. А переносить деньги между онлайновыми проектами без больших жертв можно только внутри одной компании. То есть, теоретически, те же близы могли бы переносить предметы между дрьяблами. Правда, непонятно, зачем? Разве что, раскрутить популярность мобильного недоразумения за счёт перезапуска классического шедевра. То есть повысить вероятность дропа рун на мобилке и позволить продавать их между всеми играми серии.
Совершенно не ясно, как перенос предмета в твою игру извне увеличит популярность твоего проекта. Скорее, наоборот, он уменьшит твой ресурс, потому что игрок пропустит часть твоего контента, "компенсировав" тебе это смарт-контрактом стороннего разработчика. Из которого ты, по идее, должен изъять некоторую сумму - вплоть до 100%, закрывая его... То есть, единственный вариант - это добавить ресурс, который в твоей игре добыть принципиально нельзя. И, вроде как, из этого можно сделать схему, когда ресурсы для одной игры добываются в другой, и общий рынок позволит стимулировать как приток игроков, так и покупку бустов. Но...
Короче, первый человек, который сделает вокруг NFT успешную игровую экосистему, не являющуюся финансовой пирамидой, заслуживает нобелевку по экономике.
Как там писал Пелевин, "Миром правит не тайное ложе, а явная лажа".
C++, как и прочие Java, идут корнями в Си, а Си, изначально, - это структурированный макроассемблер. Наивный, тупой и безответственный - за это он и становится первым ЯП для любой новой железки. И все аналогии в нём максимально простые и ассемблерные.
A * a;
a[i] == (*(A*)((void*)a + sizeof(A) * i));
Fortran, как и прочие MATLAB, языки глубоко специальные, и оперируют терминами предметной области. А в предметной области математических вычислений принято всё делать с единицы. Проще научить компилятор пересчитывать индексы, чем толпу математиков правильно переписать их формулы, да ещё на богохульную нумерацию с нуля! Вы бы ещё придумали, матрицы переписать в линейные массивы!!!
А задание области определения массива - это, конечно, интересная фишка, - но это синтаксический сахар над, собственно, областями. И если эти самые области больше нигде не встречаются, а индексация в языке реализуется через словарь, - требуйте возврата средств, вас обманули.
Сколько не спрашивал у всяких NFT-проповедников - никто не смог ответить на простой вопрос, а чем отличается блокчейн от обычной базы данных?
Потому что всё, что описано в статье, касается интеграции контента нескольких игр между собой. И NFT здесь нужен, как пятое колесо телеге. Точно так же интеграцию можно сделать через инвентарь Steam - или любую другую СУБД.
Только никто не делает. Интересно, почему? Наверное, потому что это вредит и игровому процессу, и экономической целесообразности. Плюс, дарит злоумышленникам шикарный инструмент по взлому игры. Но это не точно...
Кажется, не пропустил. Перечень типов вами заранее определён в шаблоне. Где здесь динамика?
Тем более, где здесь полиморфизм?(Ладно, это я погорячился.)Ок, согласен.
"Полиморфные структуры данных и производительность"?
Насколько я понял, поставленную в первом абзаце задачу вы не решили. Где здесь, собственно, "полиморфизм", если вы решили задачу разворачивания вектора структур в структуру из векторов. Где здесь, собственно, "динамический", если у вас всё на статике и этапе компиляции?
Не, сама по себе структура прикольная - и очень полезна в числодробилках. Возможно, я её у вас даже и притырю. Просто назовите статью честно, "Преобразование AoS в SoA на двадцатых шаблонах", и будет вам почёт и уважение.
А так, я пришёл за пельменями, а меня шарлоткой накормили. Вкусно, конечно, но не то.
Если договор уже есть, нужно судиться, чтобы суд признал некоторые пункты договора ничтожными (то есть, вычеркнул). А если нет, можно в прокуратуру написать, чтобы текст договоров проверили, так как какая-либо УК химичит. А как иначе?
Так-то, нормальный ответ. Если я за медицину не знаю, я в неё и не лезу. Вам нужно интересоваться профильными комиссиями, к какой из них ваш вопрос подходит.
А вы уверены, что ваш вопрос вообще должен быть адресован депутатам? Скорее всего, вам нужно в администрацию.
Депутаты имеют полномочия подавать депутатские запросы и обращения, а так же проводить проверку деятельности тех или иных госструктур. Вполне себе исполнительная власть. Другое дело, что там этих полномочий практически нет.
Депутаты и не должны исправлять ошибки в договоре. Депутаты - это законодательная и, отчасти, исполнительная власть. Они договорами не заведуют.
Если есть ошибки в договоре, нужно их через суд оспаривать, а не через депутатов. Нанимаете юриста, находите, согласно каким законам и указам у вас ошибки, подсчитываете ущерб - и судитесь. Если выиграете дело, суд может заставить УК выполнить все работы, провести перерасчёт. И может запретить УКшке передавать ваш дом на срок, например, до окончания действия договора или до выполнения всех требований.
Ещё в прокуратуру можно жалобы отправлять, что УКшка не выполняет предписанные законом функции в полной мере. Особенно, если человек 10-15 из одного дома разом отправят, реакция бывает очень бурной (для УК).
Мой личный опыт - заочно до многих можно достучаться за 2-4 дня. Нужно стучать на контакты с официальных страниц (той же мэрии), там обычно секретари сидят, но бывают и они сами лично. С секретарями тоже можно договориться о способе связи, если значения Красноречия и Харизмы не отрицательные. Главное, чтобы не робот.
Депутаты часто бывают в отъездах - это норма. Не нужно биться головой только к одному, их обычно от 50 до 200 человек. В конце концов, через одного депутата проще достучаться до остальных, чем через ноль депутатов. Ещё хорошая тема - помощники депутата. Там часто толковые молодые и идейные бывают (потому что платят мало, не идейных на долго не хватает).
Вот с личными встречами непросто, пробиться через толпу не самых адекватных бабок и просто городских сумасшедших. Некоторые депутаты идут на контакт, встретиться в неприёмные часы или после работы. Кто-то - нет. Но личные встречи обычно и не требуются.
Люди странно себя ведут. Они одной рукой дрочат на западные предвыборные рекламные слоганы "он обычный парень, такой же, как мы с вами", а другой рукой на предложение поговорить с представителем власти (да просто городским депутатом или начальником управляющей компании) пытаются тебя побить. Погодите, если вы хотите во власти "таких же парней из соседнего двора", почему вы стесняетесь к ним подойти, поболтать за жизнь, попросить совета или помощи? Да и просто поддержать, поздравить с праздником или с победой любимой команды? Это же обычные парни и девчонки из соседнего двора!
Получал я отписки. А ещё получал "По вашему обращению: рассмотрено дата передано к исполнению дата срок выполнения не позднее дата". Или "По вашему обращению: отказ в связи с технической невозможностью выполнения <список убедительных причин, с которыми я согласился>". А ещё вопросы отправлял в администрацию города через сайт - и эти вопросы входили в протоколы заседаний горсовета. Не всегда мне нравились ответы - но эти ответы были, и они не были формальными отписками. И один из них решил мои проблемы.
Предупредить проще, чем разгрести последствия. Вы с этим, скорее всего, не сталкивались на уровне ААААААЪКАААА314DECАААААААБЛДЖАААААААААД, поэтому и относитесь легкомысленно. Как только ответственность более-менее серьёзная, "не залететь" становится для ответственного идеей-фикс.
Вот, например, есть промышленные альпинисты. И у них должна быть экипировка в очень хорошем состоянии. Всё сомнительное - на выброс. И многие начальники снабжения этому неукоснительно следуют. А кто не следует - периодически заезжает в тюрьму лет эдак на 5, за халатность при исполнении, когда их подчинённые насмерть разбиваются из-за неисправного карабина.
Это экстремальный пример, конечно. Но риски заехать по антикоррупционному - вполне себе осязаемы для чиновников. Поэтому им проще завалить закупки, нежели оправдаться за переплату.
Ваше же предложение наплодит кучу восхитительных историй, когда закупщик по своей инициативе натворит всякой дичи, а потом будет перекладывать ответственность на непричастных. Плавали, знаем. Они текст-то переписать не всегда могут без ошибок, поэтому появляются требования к "процессору" иметь "200 ГБ памяти" и вакансии на Java Crypts программистов. А вы им такие полномочия давать хотите.
Если я правильно понимаю суть происходящего, проблема в том, что в один алгоритм запихали слишком много, как в том стишке:
и далее по тексту. То есть разные типы закупок заставляют проводить по единому алгоритму. И хорошим решением было бы эти алгоритмы разделить.
Закупки стандартного производственного, бытового и офисного оборудования оставить анонимно рыночными. Те же ноутбуки, телефоны и принтеры, для которых параметры следует задавать плавающими в широких пределах, а стоимость имеет больший вес, можно и на аукционах закупать.
Изготовление и закупка простых изделий может быть упрощены, вплоть до допуска ИП и физиков до конкурсов. Какая разница, кто вам вырежет 2000 табличек из акрила, если срок и качество соответствует требуемому? Или поставит 20 000 салфеток? Хотя, согласен, выбор исполнителя превратится в ад.
Изготовление и поставка сложного оборудования должна в большей степени подвержена предыдущему опыту компании, действующим контрактам и закупкам, и наличию требуемых мощностей, а так же качеству сопровождения. А цена должна быть на втором месте.
В таком изложении звучит просто. А потом начинаются детали, как это всё разделить, как это всё организовать и как это всё проверить...
Вы написали про допуск китайских OEM производителей, что это плохо. Я не спорю, у них часто продукт не отличается качеством. С другой стороны, и крупные вендоры, вроде HP или Brothers, порой такой шлак на рынок забрасывают, туши свет. А с российскими производителями китайцам бороться непросто, потому что графа "сделано в РФ" при закупках является значительным аргументом "за". Уж точно серьёзнее, чем разница в 5% стоимости. Поэтому именно этот аргумент звучит не настолько убедительно. Особенно, сейчас, когда многие крупные вендоры ушли с нашего рынка - и даже китайцы не все горят с государством торговать.
С другой стороны, я думаю, вы согласитесь с тем, что сама по себе формализованная процедура закупок с централизованным реестром - нужна и полезна. Хотя формализация усложняет процесс и оттягивает на себя ресурсы. И что процедура поиска оптимального набора правил необходима. А раз она необходима, нужно сначала ввести неоптимальные правила, потом оценить, в чём они не оптимальны, и затем сформировать новый набор. Мы уже 5 итераций прошли. Это значит, что законодатели понимают, что правила не оптимальны, но ещё не могут определить, в чём. И как их исправлять.
Мне бы хотелось, чтобы вот такие вот люди, как вы, непосредственно занятые в процессе, свои мысли не только на хабр выкладывали, но и присылали в профильный комитет госдумы - и лично депутатам из этого комитета. Передать обратную связь непосредственно с мест, так сказать, и описать практический опыт. Можно тысячу раз написать в комментах "Да они там знают, да они специально, да оно там куплено". А можно один раз начать переписку - и посмотреть, чем оно закончится. А вдруг станет лучше? Вдруг там люди действительно хотят всё сделать правильно? Что вы, в конце концов, теряете?
Не, идею с подменой макросов лучше оставить за бортом. На плюсах уже сколько десятилетий блюют от заголовочника <windows.h> и его глобально переопределения макросов min и max, перекрывающее даже стандартную библиотеку std. Вы НЕ хотите такого в своём ньюланге. Как минимум, импорт-экспорт нужно реализовывать, как в питоне, контролируя пространство. в которое попадают импортированные символы.
А вообще, цельтесь на AST. Так хотя бы будет оправдание, зачем нужен новый язык с кучей слешей. Пока что лучший аргумент "за" звучал просто "пусть будет". Сильно, но не очень.
"Куда более читаемым" - да. Я плюсы в пример привожу не столько потому, что на них пишу, сколько потому, что на них можно писать:
1) нечитаемо
2) ужасно
3) страшно
4) не по принятым стандартам
Пять лет спустя налетел на нашу переписку и с интересом перечитал. За это время произошло много интересных и, в общем-то, жутких событий, которые перетряхнули мир.
Забавно, как много действий в странах, которые принято считать "либеральными демократиями", прямо нарушало права и свободы большинства. Вплоть до санкционной политики, которая ставит существенную долю граждан на грань выживания. И как многие "либеральные" действия, которые мы вскользь упоминали в обсуждении (разрешение лёгких наркотиков, в том числе, через популяризацию антидепрессантов, или пропаганда ЛГБТ), уже принесли вполне себе осязаемые негативные эффекты обществам, в которых они внедрялись.
Однако, очень занимательно наблюдать, как твой взгляд на мир меняется со временем - и как он проверку этим временем проходит...
PVS-Studioне даст соврать, видимость символа ни капельки не уменьшает вероятность опечатки или пропуска правки во время копипасты.
Вопрос с подвохом, потому что оба варианта хуже. Если позволить многоуровневые макросы вида
\\\foo() -> \\bar() -> \buz()получается нечитаемая фигня без контроля вложенности, ломающая всё на своём пути. Если не позволить, параметризация макросов должна проходить через ветвления аля#ifdef #elif #endif. Что, в общем-то, неплохо, но ничем не лучше уже существующих решений, как по читаемости, так и по удобству. Вам бы макросы сделать, как код, выполняющийся над синтаксическим деревом языка в месте подстановки. Но в этом месте можно и порваться.Помню я те прекрасные времена, когда ошибка в программе на питоне была из-за двух пробелов. Теперь ещё и слеши...
То есть параметризировать сборку через параметризацию подстановки макросов нельзя? Как-то странно.
Меня смущает, что в вашем "примере покороче без знаков вопроса" пять слешей. Которые не нужны.
Кстати, а могут быть одноимённые функции, макросы и переменные?
$next := \next(next(foobar))А может ли макрос возвращать макрос, который можно разыменовать слешем?
\\findMacroFor(situation)Есть небольшая разница, нужно ли мне писать этот символ иногда, чтобы подчеркнуть какую-нибудь особенность типа
double ** matrix_pили специальную операциюSingleton::instance()->foo()- или ::мне \нужно писать $их \чуть-\ли не в \каждом :слове.Вы, конечно, можете возразить, что тут перемешаны переменные, макросы, типы и области видимости. Но мне не просто всё равно, мне абсолютно всё равно. Зато кому не всё равно, так это авторам более зрелых языков, которые у себя засахарили всякие
auto,usingи прочие&, чтобы исходник из адского адапревратился в абсолютно эквивалентный и куда более читаемый
или менее совместимый
Ага. Только всякую хрень про "распределённость", "уникальность" и "консенсус" можешь оставить не очень грамотным людям, которые термин "репликация" не слышали. Давай с козырей заходи сразу.
Дороже всего в этом бренном мире нам обходятся гарантии. Чем сильнее и продолжительнее гарантия, тем больше её доля в стоимости. DAO дешёвый, потому что не имеет никакой юридической силы - и, соответственно, не даёт гарантий участникам.
Любая площадка по сбору денег на такой стартап сказала бы "Да вы за###тесь оформлять доли иностранным гражданам!!!" - и была бы права. Передать долю бизнеса резиденту уже не просто, а иностранному гражданину - в любой стране - очень серьёзная боль пониже копчика. И сильнее всего болеть будет кошелёк. Только какой-нить kickstarter или boomstarter явно заявляет в правилах, ну_наXYZ.gif, а основатель DAO об этой правовой засаде узнает только на этапе передачи долей.
Потому что перенос предметов = перенос денег. А переносить деньги между онлайновыми проектами без больших жертв можно только внутри одной компании. То есть, теоретически, те же близы могли бы переносить предметы между д
рьяблами. Правда, непонятно, зачем? Разве что, раскрутить популярность мобильного недоразумения за счёт перезапуска классического шедевра. То есть повысить вероятность дропа рун на мобилке и позволить продавать их между всеми играми серии.Совершенно не ясно, как перенос предмета в твою игру извне увеличит популярность твоего проекта. Скорее, наоборот, он уменьшит твой ресурс, потому что игрок пропустит часть твоего контента, "компенсировав" тебе это смарт-контрактом стороннего разработчика. Из которого ты, по идее, должен изъять некоторую сумму - вплоть до 100%, закрывая его... То есть, единственный вариант - это добавить ресурс, который в твоей игре добыть принципиально нельзя. И, вроде как, из этого можно сделать схему, когда ресурсы для одной игры добываются в другой, и общий рынок позволит стимулировать как приток игроков, так и покупку бустов. Но...
Короче, первый человек, который сделает вокруг NFT успешную игровую экосистему, не являющуюся финансовой пирамидой, заслуживает нобелевку по экономике.
Как там писал Пелевин, "Миром правит не тайное ложе, а явная лажа".
C++, как и прочие Java, идут корнями в Си, а Си, изначально, - это структурированный макроассемблер. Наивный, тупой и безответственный - за это он и становится первым ЯП для любой новой железки. И все аналогии в нём максимально простые и ассемблерные.
Fortran, как и прочие MATLAB, языки глубоко специальные, и оперируют терминами предметной области. А в предметной области математических вычислений принято всё делать с единицы. Проще научить компилятор пересчитывать индексы, чем толпу математиков правильно переписать их формулы, да ещё на богохульную нумерацию с нуля! Вы бы ещё придумали, матрицы переписать в линейные массивы!!!
А задание области определения массива - это, конечно, интересная фишка, - но это синтаксический сахар над, собственно, областями. И если эти самые области больше нигде не встречаются, а индексация в языке реализуется через словарь, - требуйте возврата средств, вас обманули.
Сколько не спрашивал у всяких NFT-проповедников - никто не смог ответить на простой вопрос, а чем отличается блокчейн от обычной базы данных?
Потому что всё, что описано в статье, касается интеграции контента нескольких игр между собой. И NFT здесь нужен, как пятое колесо телеге. Точно так же интеграцию можно сделать через инвентарь Steam - или любую другую СУБД.
Только никто не делает. Интересно, почему? Наверное, потому что это вредит и игровому процессу, и экономической целесообразности. Плюс, дарит злоумышленникам шикарный инструмент по взлому игры. Но это не точно...
Унижающий интерпретатор Куроко: "И программист ты посредственный, и язык используешь убогий, и код твой годится только на утилизацию".