Куча говна / Говнокод #21258 Ссылка на оригинал

0

  1. 1
Посоветуй нативный язык с выводом типов. И не Хаскель. В идеале без мономорфизм рестрикшен

Запостил: LispGovno LispGovno, (Updated )

Комментарии (64) RSS

  • >> нативный язык с выводом типов.
    C++, auto

    Кстати, нативным может быть компилятор а не ЯП. Разве нет?
    Ответить
    • > auto
      не смеши мои тапочки. Где вывод параметра шаблона класса из конструктора? Где вывод типов членов класса? Почему вообще такой громоздкий синтаксис для вывода типов?

      Хотябы сильно модифициованный хиндлемилнера пускай завезут, а не этот порочный сокращенный синтаксис для шаблонов. Короче нужен нормальный inference, хотяб как в Хаскеле, а не эта питушня.
      Ответить
    • небось динамическитипизированная хренота. я говорю только про статически типизированные языки
      Ответить
    • > Nemerle с .NET Native
      Ну оси или под кросплатформу на этой штуке не попишешь, но
      > Нет зависимости от десктопного .NET Runtime при установке
      Так что надо подумать где-бы могло пригодится.

      > D
      А где там вывод типов? Кресты крестами.

      > Nim
      > A fast non-tracing garbage collector that supports soft real-time systems (like games).
      Сразу видно школьник какой-то писал.
      Но читаем дальше:
      Список оптимизаций типичного крестокомпилятора в списке главных фич языка, дальше даже разбираться не хочется после такого:
      System programming features: Ability to manage your own memory and access the hardware directly. Pointers to garbage collected memory are distinguished from pointers to manually managed memory.
      Zero-overhead iterators.
      Cross-module inlining.
      Dynamic method binding with inlining and without virtual method table.
      Compile time evaluation of user-defined functions.
      Whole program dead code elimination: Only used functions are included in the executable.
      Value-based datatypes: For instance, objects and arrays can be allocated on the stack.



      Хотя:
      > Nim plays nice with others
      Ожидал такое от багра, но надо тоже глянуть.
      Ответить
    • > > Note that the negative sign is represented by the tilde symbol (~) in ATS.

      бля, ну почему.

      "we decided to fuck up something unique in our language. but since everything else was already fucked up by other new languages, the only thing remaining was the minus sign. so we fucked it up, to uphold the long-standing tradition of the new languages: to freak out the developers, and cause the most amount of confusion possible."
      Ответить
      • > ну почему

        На самом деле, иногда это имеет смысл. Например, в OCaml унарный минус часто приходится окружать скобками, чтобы избежать неоднозначности. К примеру, код для создания массива размера n, заполненного -1, выглядит примерно так:
        Array.make n (-1)
        Если скобки убрать, компилятор подумает, что мы вычитаем единицу из функции.
        Если бы был особый символ для унарного минуса, этой проблемы бы не было.
        Ответить
        • > Если скобки убрать, компилятор подумает, что мы вычитаем единицу из функции.

          так это потому что наверное язык говняный, пользуется пробелами для разделения выражений? унарный минус я догадываюсь там будет самой мелкой проблемой.

          ЗЫ мне в одном месте когда-то приходилось писать `0-1` для выражения `-1` потому что там официально не было унарного минуса.
          Ответить
          • > язык говняный, пользуется пробелами для разделения выражений?

            Для разделения аргументов функции.

            Спасибо, но я уж лучше буду ставить скобки там, где они реально нужны, чем вообще везде.
            Ответить
            • > Спасибо, но я уж лучше буду ставить скобки там, где они реально нужны, чем вообще везде.

              А ты пишешь на каком языке?
              Ответить
              • На русском.
                Мне бы хаски для начала осилить. А так в свободное время окамлом в последнее время балуюсь для всяких алгоритмических задачек.
                Ответить
                • В руском скобки ставят везде, а не там где нужны))))
                  Ответить
                  • > В руском скобки ставят везде

                    Это ты с лиспом перепутал. Кстати, у тебя в сообщении скобки не сбалансированы.
                    Ответить
                • > > А ты пишешь на каком языке?
                  > На русском.
                  Не пиши на нем, вандал. Не порти достояние общественности своими граффити

                  А из языков программирования на каких пишешь? Кресты всякие можешь не называть, меня больше интересует на каком языке тебе так на работе повезло не ставить лишние скобки:
                  > Спасибо, но я уж лучше буду ставить скобки там, где они реально нужны, чем вообще везде.
                  Ответить
                  • > не ставить лишние скобки
                    Питон. После крестов там намного меньше скобок...
                    Ответить
                      • Да, макаки видят скобки в языке (например в крестах) и думают что это лисп. Думают, что раз это лисп, то он устарел. А раз устарел, значит не нужен.
                        Следовательно кресты не нужны.
                        Ответить
                          • форт хорошо в космосе работает

                            orth is used in the Open Firmware boot loader, in space applications,[1] such as the Philae spacecraft and other embedded systems which involve interaction with hardware. The bestselling 1986 DOS game Starflight, from Electronic Arts, was written with a custom Forth.[2]
                            Ответить
            • 99% разрабов стявят запятую - и никому еще не пришло в голову жаловатся на это. потому что как бы и логично, что между выражениями нужен разделитель. иначе говно получается. "казнить нельзя помиловать."
              Ответить
              • хаски в итоге выглядит как f (a) (b) (c) (d) вместо f(a,b,c,d), так что ещё вопрос кто выиграл
                Ответить
                • попробуй в хаски написать `f (a) (b) <new-line> (c) (d)`.

                  в высокой теории хаски выигрывает. но на приземленной практике, там где настоящие программы и пишутся...
                  Ответить
                  • > попробуй в хаски написать `f (a) (b) <new-line> (c) (d)`.
                    А что будет? ` - вроде как обычно юзают для превращения префиксной функции в инфиксную функцию
                    Ответить
        • Да, в хаски с -1 тоже проблема есть( Пробелы приходилось расставлять(
          Ответить
    • > ATS allows the programmer to reduce the memory footprint of a program by making use of linear types.
      > linear types
      Опять небось какая-нибудь фигня в вакууме типа монад или растовского управления памятью?

      > ATS allows the programmer to enhance the safety (and efficiency) of a program by making use of theorem-proving.
      > theorem-proving
      Ты уверен, что это вообще не язык для упоротых, типа Хаскеля и он не будет заставлять писать код в стиле, способствующем док-ву времени компиляции?

      Я думаю, что раз он непопулярен, значит есть в нем что-то такое, что делает его непригодным для использования. нет кодбазы сторонних либ, документации, заброшен авторами
      Ответить
    • на первый взгляд язык не плохой, но вывод типов членов похоже отсутствует. ну и понятно код только в репозитории автора в основном. а ещё язык с выводом типов бесполезен, если к нему нет иде, эти типы показывающей, если где-то сходу не понятно. Для Немерле такая иде есть.

      И теперь самое главное:
      отсутствует разница между присвоением и определением переменной. Такой язык сразу проще отправить в помойку, чем юзать.
      Ответить
      • > но вывод типов членов похоже отсутствует.
        Был, убрали, теперь определяет члены только по простым выражениям в конструкторе. Ну там длинная история, но в целом - в каких-то местах вывод типов убран чтобы не требовать парсить всю программу для определения типа. Мне это даже нравится.
        > а ещё язык с выводом типов бесполезен, если к нему нет иде, эти типы показывающей, если где-то сходу не понятно. Для Немерле такая иде есть.
        В атоме показывает, хотя пока что так неудобно что проще не использовать (требует чтобы код был без ошибок чтобы распарсить). Ну а немерле умер все равно.
        > отсутствует разница между присвоением и определением переменной. Такой язык сразу проще отправить в помойку, чем юзать.
        Это да, он только для любителей руби.
        Ответить
  • Меркури. Только там типы не такие, к которым ты привык. Но вывод есть. ИДЕ для этого по-моему нету.
    Ответить
    • Ты сам-то на нем хоть хеловорлд написал, бесполезный пиздун?
      Ответить
      • Лол, а ты пользу приносишь? Унылый троль-долбоеб. Просто засираешь ресурс, который был интересным пару лет назад.
        Ответить

Добавить комментарий

Помни, guest, за тобой могут следить!

    А не использовать ли нам bbcode?


    8