• История о том, как я ОС в Minecraft писал
    –3
    Иными словами, если включен pretty, то вернется tostring от функции

    Товарищ, вы бы хоть потестировали либу для начала вместо анализа ее кода. Аргумент Pretty сериализует массив не в таком виде

    {["privet"] = 123, ["hello"] = {["test"] = 12}}
    

    А в таком:

    {
      ["privet"] = 123,
      ["hello"] = {
        ["test"] = 12
      }
    }
    


    Иными словами, Pretty добавляет \n в конце каждого элемента для лучшей читабельности, вот и все. Не надо додумывать функционал на основе кода — поработайте с библиотекой сами, а потом уже пишите.
  • История о том, как я ОС в Minecraft писал
    –1
    Вообще вы правы: если делаешь что-то для юзеров — изволь обеспечивать максимальное удобство пользования, удовлетворяющее максимально широкую аудиторию. Это применимо к библиотекам, фреймворкам и, разумеется, к готовым приложениям. А биографии читал, правда, не до конца — наскучило где-то на середине, Айзексон пишет скучным языком, как по мне. Да и не особо люблю читать про историю жизни каких-то людей, пусть и великих — фантастику предпочитаю.
    На мой взгляд, у Вас есть элементы комплекса: «я так легко понимаю программы, но другие, плохо понимающие, успешны. Почему?»

    Вот эту фразу, правда, не совсем понял: никогда в жизни не задавался подобным вопросом, весь свой код я пишу исключительно для себя и собственного удовольствия, редко что-то выкладывая в широкие массы. Кодинг для меня не более чем хобби, которое можно бросить в любой момент, если оно надоест. Плюс, искусство искусством, а деньги деньгами, работодателя редко интересует, насколько искусно написан код — важен результат поставленной задачи в указанные сроки.
  • История о том, как я ОС в Minecraft писал
    –2
    Я не знаю, о какой статье вы говорите

    Вы выписываете термин из довольно изестной статьи, и не знаете, о чем я говорю? Попахивает вредностью.
    Вот в этом утверждении: «система является скучным говном, как правило, с кучей модульных функций». Вы продолжаете не видеть разницы между «я не осилил» и «система — говно».

    Неверно, ибо либу я осилил. Мне она неудобна в использовании, поэтому перешел на более простую версию с двумя методами, соответствующую моим требованиям.
  • История о том, как я ОС в Minecraft писал
    –3
    Эта реализация и есть то, о чем я говорю. Судя по всему, вы не поняли моих требований к ее функционалу, постоянно переспрашивая то про JSON, то еще про что-то, поэтому и возникает такой вот диссонанс. В любом случае, эта либа — именно то, чего мне не хватало в шарпе, на этом и покончим.
  • История о том, как я ОС в Minecraft писал
    –3
    вы про понятие essential complexity не слышали

    Слышал-слышал, забавная статья, которую обосрали уже все, кому только не лень. Моя личная позиция по данному вопросу такова: любая софтина или либа обязана быть одновременно простой для начинающих и максимально гибкой для «шарящих». Любое отклонение в ту (Internet API OpenComputers) или иную (HttpClient) сторону не является правильным и требует рефакторинга кода.
    Кому-то вот принципиально не даются указатели — это же не значит, что указатели говно.

    Лично мне даются и указатели, и апи для запросов, и все, что я пожелаю. Вопрос лишь в том, как долго я осваиваю указанный материал. Если быстро — система хороша, и я искренне благодарю батьку-девелопера за простоту и доступность этой системы, если медленно — система является скучным говном, как правило, с кучей модульных функций. О чем мы дискуссию-то ведем вообще? Вам нравится этот HttpClient, мне нет. В чем проблема-то? Зачем по пустякам заводить длинные ветки обсуждения?
  • История о том, как я ОС в Minecraft писал
    –2
    Никто никому не противоречит, ибо эта функция предназначена для сериализации таблиц, в которых может содержать все, что угодно, если это все не закрыто в теле цикла. Функции также сериализуются в виде строки, это проверено мною лично на практике и часто используется для дебага. Ну, а если запихнуть в нее число или просто строку, то она выдаст nil, т. е. ничего. Так что any туда не запихнешь, автор вики неверно указал типы.
  • История о том, как я ОС в Minecraft писал
    –2
    А я тоже подчеркиваю, для обучения я бы не выбрал курсы, где мусолят лишь теоретическую часть, отдавая ей основное предпочтение — это устаревший и непродуктивный метод обучения. Нет ничего плохого в том, чтобы разбираться в типах данных и уметь грамотно их использовать, плохо — когда матчасть занимает основную нишу учебного процесса. Я человек-практик, привык изучать теорию в процессе кодинга, и почему-то я до сих пор никогда не лажал на ровном месте, ровно как и большинство моих товарищей, ибо курсы были хорошие, а преподаватель явлалась крутой, умнющей девкой, и знала свое дело.
  • История о том, как я ОС в Minecraft писал
    –4
    А, это легко.

    Что за глупости? Мне нужен не результат выполнения функции, а строковое представление структуры самой функции со всем содержимым и значениями переменных. Т.е. как записал ее в изначальном коде — такой и должен быть вывод, с той лишь разницей, что переменные могут быть изменены извне. То же самое касается и массивов, и классов.
    Кстати, а можно ссылочку на эту «стандартную либу»?

    Качайте мод на майн, ставьте OpenOS, смотрите апи serialization, находится в папке lib. Очень простая и лаконичная библиотека, проходящаяся через цикл по структуре массива или функции, реализовать ее легко даже с базовыми знаниями Lua, ну, и при условии, что вы умеете юзать регулярки. Правда, она не совсем оптимизирована в плане расхода на память, т.к. использует быдлокодерскую конкатенацию строк, но в целом понять ее суть легко.
    Подозреваю, что и с его освоением было то же самое — лень разбираться, проще говном назвать.

    Именно так. Если либа трудна в освоении по сравнению с остальными либами, идущими вместе с данной либой в комплекте, то данная либа является говном. Все очень просто и логично.
  • История о том, как я ОС в Minecraft писал
    –2
    Добавлю еще, что «поваров» я вижу везде: как в шарпе, так и в плюсах, бейсике, луа, питоне или явке. Говнокод неистребим, и нечего винить слабую типизацию языка в безалаберности юных кодеров. Лично у меня все работает одинаково хорошо как на сишных структурах, так и на луавских, а проблем из-за типов данных никогда не возникало.
  • История о том, как я ОС в Minecraft писал
    –5
    Да ну вас, я данный текст от балды написал с целью «заполнения пространства», не надо воспринимать столь серьезным образом.
  • История о том, как я ОС в Minecraft писал
    –3
    Ох. Как вы себе представляете конверсию в строку класса или функции?

    void funkcia()
    {
       print("bla-bla");
    }
    
    string stroka = toString(funkciya)
    

    А как именно? Что ж, меня это не особо волнует — в опенкомпах из поста есть стандартная либа для сериализации таблиц и функций, в C# нет, вот и все. Собственно, в нашей дискуссии и шла речь о том, каких функций мне не хватает в базовом C#.

    А примеры касательно Http мне лень приводить, все равно мое мнение останется на своем должном месте, а ваше на своем. Вы слишком занудный собеседник для меня, акцентирующий внимание на мелочах, на которые я обычно кладу болт. Боюсь, если я приведу примеры, то наша милая беседа затянется на куда большее количество символов, а символы — это, между прочим, физический труд в плане нажатия на клавиши. Так что лень-матушка взяла свое.
  • История о том, как я ОС в Minecraft писал
    –3
    Это дело вкуса. Мне абсолютно все равно, какие структуры данных мы имеем, мне совершенно не интересно понимать процессы при написании элементарных программ (консольный калькулятор, графопостроитель и прочая элементарная чушь, которую дают в типичных универах как задание чаще всего). При обучении (я подчеркиваю, при обучении) я хочу просто кодить, понимать суть языка, понимать основы. А если потребуются какие-то дополнительные знания по конкретному вопросу, будь то оптимизация воксельного приложения через указатели — это не проблема, я просто беру и изучаю доп. материал при возникновении необходимости.

    К слову, на платных курсах по C#, которые ведет моя хорошая знакомая, практически никогда не заостряется внимание на типизации данных. Люди просто получают задание и творят маленькие шедевры, получая за это хорошие деньги, при необходимости, опять же, спрашивая у лектора, как можно оптимизировать проект. Это в моем понимании и есть настоящее обучение программированию, когда ты программируешь, а не страдаешь ерундой, доказывая что-то ноунейму в комментариях.
  • История о том, как я ОС в Minecraft писал
    –4
    Это неправильная постановка задачи.

    Что ж тут неправильного и непонятного? Требуется функция, конвертирующая класс, массив или функцию в строку, и возвращающая эту строку. Опционально хотелось бы получать строку в человекочитабельном варианте с \n, чтобы ее впоследствии было легко парсить. Хватит казуистикой заниматься, тут и обезьяна поймет, о чем речь.
    Нет, не годится. Не либа (омг, в .net вообще нет такого понятия) сложна в освоении, а вы не осилили ее освоить. Чувствуете разницу?

    Ну не годится и не годится, переживу как-нибудь. А разницы не чувствую, ибо не освоить что-то можно лишь по одной причине: осваиваемый объект создает искусственные трудности в освоении. Каким бы ни был юнит, осваивающий этот объект — умным, глупым или одноклеточным — сложность осваиваемости задается именно создателем осваиваемого объекта. Любой объект можно создать универсальным, чтобы его суть понял даже конченный дебил с задержками в развитии (на то и существуют методы рефакторинга кода), а можно создать способом, понятным лишь кругу лиц, в котором находится автор — на все воля автора. Собственно, в случае с HttpClient мы имеем второй вариант. Говно-либа, неудобная в использовании.
  • История о том, как я ОС в Minecraft писал
    –4
    Зачем?

    Вот же ж упорный человек, а? Потому что нужно. Если меня спрашивают о том, как что-либо сделать, я озвучиваю способ (если он мне известен), а в противном случае просто молчу, не затевая бессмысленных диалогов с выяснением причин. Нужно, понимаете? Для работы, для личных грязных целей, для самых мерзопакостных делишек.
    Это не «мне не нравится».

    Именно по перечисленным вами моим высказываниям данная либа мне не нравится. Это обобщающий речевой оборот, выражающий вкратце мое отношение к либе.
  • История о том, как я ОС в Minecraft писал
    –8
    Если вам нужна сериализация в бинарный поток — то берите встроенную. Если в строку, то вам придется выбрать формат. Чем JSON хуже других?

    Не хочу я ничего выбирать, мне необходима функция toString(class/array/function), выводящая содержимое аргумента в строку C#-кода. И все тут, безо всяких джсонов, хуенов, потоков и прочей лабуды, которую так часто приходится писать во языках семейства СИ. Хотя надо признать, что в шарпе лабуды в разы меньше, это факт, да.
    Аргументы в студию

    Без проблем, сейчас пошарюсь по харду, найду старые проекты на шарпе, затерянные под вековой пылью, найду в них костыльный участок кода на HttpClient и немедленно отпишусь, чтобы удовлетворить ваше любопытство, минуток 10 подождите. А если серьезно, то в чем проблема вообще? Я высказал свою позицию, что лично мне не нравится эта либа, ибо прекрасно помню, какой с ней был геморрой на старте изучения шарпа, а если у вас данной проблемы не возникало, то остается только искренне порадоваться за вас, вот и все. Аргументы вам подавай, ишь ты! Говно-либа, сложна в освоении. Годится такой аргумент? Вот и все, не надо разводить демагогию в комментах, лучше кодить пойдемте, это всяко полезнее.
  • История о том, как я ОС в Minecraft писал
    –4
    Вы, наверное, JSON имеете в виду? JavaScriptSerializer (хотя Json.net лучше, не зря более поздние версии на него перешли).

    Нет, я имею в виду именно массивы, а также сериализацию классов и функций. JSON-генератор и -парсер не нужен.
    Серьезно?
    MD5, SHA256, SHA384, SHA512.

    Вот этого не нашел, сколько ни лазил по форумам — обычно всякую чушь обычно советуют вроде юзеровских библиотек, плагинов и т.д, так что спасибо за ссылочки, буду знать.
    HttpClient.

    Неадекватная библиотека, чтобы выполнить простую задачу, нужно проделать туеву хучу операций, так что работать с ней будут лишь мазохисты. Она имеет слишком много схожих методов с крайне непродуманными названиями и аргументами, поэтому использую кастомную с забугорного сайта, позволяющую делать то, что мне нужно, в одну строчку.
  • История о том, как я ОС в Minecraft писал
    –1
    В Lua отсутствует понятие «указатель», там все работает в автоматическом режиме: если присваешь первому массиву значение второго, то идет не дублирование массива, а именно обмен указателями. Да и понятие «страница видеопамяти» там тоже отсутствует («спасибо» автору мода), поэтому приходится работать с тем, что имеем.
  • История о том, как я ОС в Minecraft писал
    0
    Странный он какой-то. Не люблю лишних знаков в основных операторах. Зачем использовать := для присваивания, а == для проверки истинности? И что за =/= для проверки на неравенство, зачем аж 3 символа использовать? Вон, в BASIC было идеально в этом плане: и присваиваешь через =, и условия проверяешь в стиле IF A = B THEN B = C ENDIF, все было элементарно. Опять же, в современном языке все должно быть интеллектуально, он сам должен понимать, где присвоение, а где проверка истины. Да и массивы по вашей ссылке там явно будут в стиле СИ. То ли дело таблицы Lua, в которые пихай что хочешь: хоть функции, хоть другие таблицы, хоть строки, хоть числа, хоть все вместе. В современном языке должны быть именно такие массивы, а то и еще лучше.
  • История о том, как я ОС в Minecraft писал
    –4
    Легко.

    Отсутствует сериализация массивов в строку и наоборот, отсутствуют алгоритмы хеширования SHA2 и MD5, отсутствует адекватное интегрированное Internet API для осуществления элементарных GET и POST запросов. Разумеется, все это легко исправляется поиском по гуглу и скачиванием сторонних библиотек, зачастую очень и очень неплохих, однако сейчас у нас 2015 год на дворе, и в современном языке я хочу видеть максимум удобства, благо не в пещерном веке живем.
  • История о том, как я ОС в Minecraft писал
    0
    Ага. Но ситаксис убог, слишком много «иероглифов», поэтому увы и ах.
  • История о том, как я ОС в Minecraft писал
    0
    Ну, в самом Minecraft, как правило, пользуются обычным игровым чатом, не заморачиваясь на все эти технологичные приблуды. Иногда на серверах ставят моды для голосовой связи, такие как Gliby's Voice Chat, так что если и делать свой способ общения, то как-то в этом стиле, через модификации или плагины.
  • История о том, как я ОС в Minecraft писал
    0
    Я имел в виду реализацию всех необходимых функций «из коробки», без необходимости поиска встроенных или сторонних библиотек. Люблю, когда даже самый отбитый новичок сразу осваивается в данной среде — это и есть признак хорошего и грамотно сконструированного языка. Имхо, конечно.

    Ну, а так-то разобраться в плюсах или шарпе не столь уж и сложно при должном желании — противно в этих дебрях копаться, вот и все :)
  • История о том, как я ОС в Minecraft писал
    –7
    Дело в том, что я не люблю языки с некрасивым синтаксисом или непонятными обозначениями стандартных функций. Не люблю все эти скобочки, звездочки, стрелочки — фу, гадость абстрактная. Я не хочу понимать что-то «до уровня ячейки памяти», мне искренне все равно, как оно там работает. Я хочу просто сидеть и кодить полезные и графонистые штучки без мозготраха.

    Вообще, идеального языка пока что не встречал — что в C#, что C++ отсутствует большинство необходимых мне функций для старта написания софта, а если они и есть, то реализованы не для людей. В Lua отсутствует понятие «указатель» и понятие «класс», что порой затрудняет работу и заставляет писать костыли. В Java приходится создавать отдельный класс для каждой мелочи, это я вообще считаю верхом безумия. Про Python лучше промолчу. Но все это, конечно, субъективные впечатления человека, слабо знакомого с этими языками и работавшего с ними от силы пару дней — однако именно по первым ощущениям и складывается общее отношение к языку. Если ты элементарно не можешь перевести int в string одной стандартной функцией — то весь язык я сразу считаю кучкой кала. Интересно, сложно ли написать свой язык…
  • История о том, как я ОС в Minecraft писал
    0
    На OpenComputers уже имеется мессенджер, подключающийся к IRC, и им пользуются, в основном, гики и крайне узкий круг лиц. Обычным пользователям больше нравится писать скрипты для роботов, как-то взаимодействовать с игровым миром, а не общаться через эти компы (сужу исключительно по опыту администратора сервера), так что не думаю, что еще один сервис будет востребован. Но чисто ради забавы и кодерского любопытства было бы интересно написать клиент для вашего сервиса. Хотя я во всех этих сетевых протоколах довольно слабо разбираюсь, и вряд ли смогу накодить это сам.
  • История о том, как я ОС в Minecraft писал
    0
    Тоже писали, и даже работала система. Правда, медленно, т.к. автор ограничил количество пакетов, передаваемых за раз через игровые модемы. Можно, конечно, сделать через реальные php-скрипты, чтобы, например, управлять игровым компом с браузера, но в php я полный ноль. Такие дела.
  • История о том, как я ОС в Minecraft писал
    +3
    Писали-писали. Делали и «синие экраны», и полное удаление всех файлов, и инжект в код стандартной OpenOS, чтобы сложнее было обнаружить вирус. Делали так, что раз в 2 минуты компьютер выдавал окно с текстом «требую печеньки». В общем, много чего там можно сделать, чтобы испортить жизнь юзерам.