27

» Программирование / Монада MayBe

Mihahail, там монады есть для trycatch. То есть достаточно дописать к названию монады слово Try в начале (например TryWith) и она будет выбивать екзепшн, если таковой есть. Но опять же ты прав - с однострочниками в этом плане всего туговато
На самом деле сам часто поглядываю на хаскель, но никак не могу его освоить. Пробовал брать литературу в руки, но там сразу все начинается с терминов аля комбинаторы/унарные методы/анализаторы без малейших разъяснений, потому ничего не понимая в фундаменте мне не дается понимание этой парадигмы и на этом я закругляюсь. Плюс когда смотрю даже на элементарный код - вопросов уйма, а спросить про них не у кого - хаскель не очень популярный язык чтобы было к кому обратиться, если есть вопросы.
27

» Программирование / Монада MayBe

просто я немного по другому оформляю
Я сам так оформляю, просто по причине того что я написал "однострочник" и изобразил одной строкой :)
бтв забыл сказать - код с 'Truple' только для новых шарпиков, скажем шарп в юнити его не понимает
27

» Программирование / Монада MayBe

Хочу заметить, я никого не принуждаю к использованию подобного метода. Но им пользуется огромное количество людей, в том числе и я сам. Раз я временами выкладываю наработки то было бы разумно опубликовать и такие куски, чтобы в дальнейшем свободно делать публикации с использованием этой монады.
Имхо монада дает неоспоримые плюсы. Например тот же пример что выше, немного перефразируем. Скажем у нас есть вот такая ситуация:
var result = calc != null && calc.handle != null && calc.handle.method != null && calc.handle.method.value != null ? calc.handle.method.value : null;
С монадой будет проще некуда:
var result = calc.With(x => x.handle).With(x => x.method).With(x => x.value);
Монада выглядит читабельней имхо.
Опять же, можно взять к примеру стандартные монады - Select, Where, Any - ведь они действительно удобны. Но всегда будут люди, которые скажут "фээ, я лучше буду разворачивать форичи вместо однострочника"
в первом примере handle у меня абстрактного типа Handle, и я привожу его к конкретному HandleMethod и только в случае если он имеет данный тип цепочка выполняется дальше.
27

» Программирование / Монада MayBe

Mihahail,
Шарп поддерживает монадические конструкции, хотя конечно не в той мере в которой это происходит в языках функционального программирования.
Соль не в перечисляемых объектах, если почитаешь монаду чуть пониже, то для обычных объектов она тоже юзается. В общем соль такова - это просто пробрасывание значения. Исключение постоянных проверок на Null.
Вот пример кода который я пишу прямо сейчас. Его смысл в том чтобы проверить, содержит ли текущий объект нужную мне конструкцию. В обычном коде он выглядит так:
bool result = false;
if (calc != null && calc.handle != null)
{
    var methodHandle = calc.handle as HandleMethod;
    if (methodHandle != null && methodHandle.method == checkMethod)
        result = true;
}
То есть фактически мне нужно просто пройти в calc.handle.method и сравнить его с моим checkMethod. При том если я не могу туда попасть по причине того что объектов нет - вернуть false
С помощью монады этот же самый код я могу забить однострочником
var result = calc.With(x => x.handle).OfType<HandleMethod>().With(x => x.method).If(x => x == checkMethod).ReturnSuccess();
Соответственно такая цепочка будет толкать null дальше, либо выполнять выражение.
С хаскеллом не работал, потому перечислить отличия не могу. Но это явно сдернуто оттуда.
27

» XGM Team / Небольшое изменение в премодерации проектов

H, бтв, вынесите в раздел специальных раздел конкурсов. А то до него сейчас самый простой способ добраться - крутить историю ленты.
27

» Шатер GenElCon'a / RPG с открытым миром на Unity?

правда, как выгружать, я еще не понял)
публикуешь всю сцену в иерархию одного объекта и по необходимости удаляешь
lentinant:
с навмешами и лайтмапами будет проблема
это уже проблемы реализации самих этих систем. Навмеш сам по себе не гибкий, лучше писать свой поиск пути. А с учетом вот этих асинхронных штук там очень небольшой выбор какой алгоритм юзать.
Естественно что разные локации имеют по дефолту разные графы, что и заложено в стандартном юнити навмеше.
27

» Странный Блог / Холодному синтезу - быть

Кет, Mihahail, ну вы поняли же, ну что придираетесь. Я имел ввиду "с целью обсуждения темы". Ну и назвал обсуждение тем оффтопом.
Mihahail, и ты так и не ответил на вопрос - повод к чему это.
27

» Странный Блог / Холодному синтезу - быть

Mihahail, не, это ты меня не понял:
  1. Ты сказал "это повод", я попросил уточнить "повод к чему?"
  2. Это оффтоп - я про то что копипаста делается с целью создать оффтоп, обсуждение в блоге, не более. Как другу в вк новость отправить, только в рамках сообщества :)
27

» Странный Блог / Холодному синтезу - быть

Mihahail, повод то к чему? Это оффтоп. Ведущий блог не претендует на авторство. Он мог кинуть ссылку, но оформить страницей - правильней и удобней для юзеров. Все норм же
27

» XGM Конкурсы / Акция "YouTube/VK-репостер"

План по лвлапу
  • Набрать 700 ноунеймов в друзья
  • Зарепостить все 73 видео c канала
  • Получить минимум 36.500 опыта
27

» Шатер GenElCon'a / RPG с открытым миром на Unity?

Странный Парень, ненене, такого нет, и ваши программисты такого сделать не могли. Максимум они могли "слипить" уже подгруженные объекты, когда те не находятся в камере, чтобы они не сжирали время процессоров на анимации и физику. Но опять же - это подгружает и создает все объекты, но уже потом отключает "лишнее".
27

» Шатер GenElCon'a / RPG с открытым миром на Unity?

это все опять мои комплексы, что я/мой ресурс/мой вопрос недостаточно крут для ресурсов в таких проектах
и зря, сударь, я вот всех очень даже жду, "недостаточно крутых" в том числе. А то как сам с собой в проекте юнити.
RSQR вот правильно ответил - создается несколько террейнов. Каждый террейн имеет свой индекс по x/y, говорящий о том, какую часть "мира" занимается локация. Соответственно есть некий ректангл, при выходе за который одни локации удаляются, а другие асинхронно подгружаются. Дабы избежать например долгой компиляции такого приложения можно использовать например бандлы/WWW. А если надобно делать "неразрывность" для точности - тут пишется свой редактор, в котором так же как и в игре подгружается определенная территория на которую смотрит камера. Далее автоматом все это копируется в локи.
27

» Блог им. awesomesk1ll / На хакатоне игромира Games Coding Night «Побеждает Зло»!

имхо существенно обидней когда происходит копипаст статей с хабра (именно статей, а не постов блога) ) К счастью таких примеров немного - раз/два.

А по результатам хакатона - фигня.
Победители не блеснули новой интересной идеей, я бы им ручку подарил лучше. Хз что там за жюри такое было. Скрещивать А и Б для получения С - ну прямо никто до них про такие вещи не догадывался, нуну.
А вот управление космическим кораблем через кинект - куда интересней. Атмосферно, оригинально.
Мало того, с кинектом задача сложнее
27

» XGM Team / Изменения в рейтинговой системе

+ если система будет учитывать только скажем "100 последних оценок" - это будет уже наглядней, то есть любые изменения стопудово отразятся. А если "в целом", то показатели будет очень расплывчатыми
27

» XGM Team / Изменения в рейтинговой системе

Не показывало бы. Вот что есть "адекватность" с точки зрения выставления оценки? Минус может быть адекватной оценкой, плюс тоже. По факту почти все юзеры ставят плюсов больше, но это не показатель адекватности. Даже если взять соотношение/плюсов минусов, высчитать на их основе коэффицент от 0 до 1, показывающий нейтральность оценок - это все равно не будет показателем адекватности
27

» Странный Блог / Холодному синтезу - быть

Что за наезды ) В блогах сплошь и рядом копипасты, это ж блоги - просто место чтобы что-то обсудить. Я когда написал про копирку это было просто от сожаления, что слишком часто туда ссылаемся. Но не с целью наехать на конкретного человека. Наезд без повода и выглядит очень некрасиво.
27

» Программирование / Рефлексия - как достать метод с генериками?

alexprey, легче увы не нашел. Есть еще вариант вручную формировать строку-Assembly для типа, но боюсь так я что-то забуду. Спасает что кеширую, а не реал тайм вызываю.
27

» Странный Блог / Холодному синтезу - быть

Революция то произойдет не сразу, потому у России будет время поискать альтернативы, имхо. Ведь устройства задействующие новый вид топлива нужно еще разработать, а старые никуда не денутся на первых порах.
Однако сегодняшние перспективы действительно померкнут