Языки програмирования

Discussion in 'WASM.HEAP' started by Blackbeam, Oct 24, 2010.

  1. Blackbeam

    Blackbeam New Member

    Blog Posts:
    0
    интересует мнение по след. вопросам:

    1. почему яп много
    2. недостатки распостранённых яп, которые раздражают лично вас
    3. чего не хватает в том яп, которым вы пользуетесь
    4. каким вы видите правильный яп
    5. возможно ли попытаться создать универсальный яп
    (была идея написать компилятор с внешней таблицей импорта - бесконечно расширяемый)
     
  2. r90

    r90 New Member

    Blog Posts:
    0
    1. Потому что никто, до сих пор, не может придумать как надо правильно писать программы.
    2. Распространённые это C/C++/Java/PHP? Главный их недостаток -- это то, что их в большинстве случаев используют не по назначению, для решения задач, на которые они не рассчитаны. Но, по большому счёту, это не их недостаток.
    3. Всего достаточно. Я б сказал что даже избыточность наблюдается.
    4. Для чего правильный?
    5. Попытаться возможно. Создать нереально.
     
  3. Blackbeam

    Blackbeam New Member

    Blog Posts:
    0
    - имеется ввиду, что мы только только начали и всё есчо впереди, современные языки далеки от совершенства, хотя большиство считают ( и так было во все времена ), что достигнут если не предел, то почти и все кто пытается создать что-то новое - дураки, мягко говоря
     
  4. PSR1257

    PSR1257 New Member

    Blog Posts:
    0
    Потому что никто, до сих пор, не может придумать как надо правильно писать программы.

    ДА!!!!!!!!!!!!!!!!!! +666

    1. Некоторые считают что удобство программирования важнее чем качество конечного кода - появляется разная шняга типа #C. Нет единого стандарта, нет "ООН" или организации как принято в научном мире - Fortran там всякий. Напейсание кода во-многом определяется туманными предпочтениями программиста но не четкими критериями (которых - выше - нет).
    2. Ненавижу когда язык сделан для программиста а не чтобы писать лучший код.
    3. Наверное библух грамотных ... а может я просто ленив их искать.
    4. Предполагая наличие критериев типа "только на этом языке можно строить самый лучший код" язык может быть определен.
    5. Ну если не язык то может быть опейсание алгоритмов на каком-нить стандарте который бы легко прилеплялся к другим языкам ... типа BubbleSort(IN ARRAY,ARRAY_SIZE,...) (без указания типов или в максимально общем виде).
     
  5. s_d_f

    s_d_f New Member

    Blog Posts:
    0
    Очень трудно предпочесть один яп когда всерано всё одинаково сводится к изучению англейского.
    Из-за этого даже ассемблер в сравнении с C++ не такая уж и жуть.
     
  6. GoldFinch

    GoldFinch New Member

    Blog Posts:
    0
    потому что никто не хочет\не может менять существующие языки,
    т.к. нужна совместимость с legacy кодом
    т.к. есть стандарты на некоторые языки и процедура их изменения слишком бюрократична
    С++ - куча проблем изза совместимости с Си
    проблемы изза кроссплатформенности, которая лично мне не нужна
    отсутствие нужных фич, типа строк в параметрах шаблона
    избыточный синтакис, типа template<typename T> class Foo вместо например class Foo<T>
    отсутствие нормальной интроспекции
    отсутствие нормального вывода типов (даже в С++0х)

    С# - нет шаблонов как в С++ (хотя вроде будут в следующей версии)

    общий недостаток многих языков - большая избыточность, надо несколкьо раз писать одно и то же, хотя можно было бы и не писать.
    это усложняет рефакторинг кода - надо вносить больши изменений
    это приводит к ошибкам, т.к. можно написать не то что надо
    см. п. 2

    + в С++ нужны концепции.
    таким чтобы код на нем был надежным, удобным для внесения изменений, удобным для повторного использования
    должна быть мощная ИДЕ (sic!), т.к. отсутстие подсветки и ручной рефакторинг ведет к ошибкам

    язык должен иметь простой с точки зрения парсинга синтаксис, чтобы ИДЕ могла с ним справиться.
    У языка не должно быть строго определенного синтаксиса. Должна быть только строго определенная семантика. Тогда код с любым синтаксисом можно будет распарсить в одно и то же AST. Это позволит каждому программисту использовать свой любимый синтаксис, и ИДЕ сможет транслировать один синтаксис в другой, с сохранением семантики. Сейчас это практически достигнуто с помощью CodeDom в .NET - разные языки, например C# и VB.NET парсятся в один и тот же AST, и если бы они имели одинаковую семантику, их можно было бы свободно транслировать один в другой.
    да. но их должно быть несколько.
    как минимум язык со статической типизацией, и язык с динамической типизацией
    при этом их синтаксис и дизайн библиотек должен быть близок, чтобы не надо было переучиваться.
     
  7. CyberManiac

    CyberManiac New Member

    Blog Posts:
    0
    Delphi меня не устраивает только двумя вещами:

    1. в нём встроенный ассемблер - тяжкое наследие TASM, соответственно, никаких .if , invoke и прочих друзей человечества в нём не предусмотрено.
    2. он компилит только под платформу Win32. И не компилит, сцуко, под моё мабилко на Symbian 9.
     
  8. Booster

    Booster New Member

    Blog Posts:
    0
    GoldFinch
    Есть дженерики(как и в яве и во многих других), кодогенерация(t4). Шаблоны не нужны. Ещё нужно добавить в интерфейсы операторы, и будет вообще ляпота.

    Самый мощный язык это лисп, изучите его и поймёте чего нехватает в других. Универсальных языков не бывает, все универсальные проигрывают узкоспециализированным.
     
  9. GoldFinch

    GoldFinch New Member

    Blog Posts:
    0
    Booster
    дженерики С# не позволяют писать обобщенный код, они только для контейнеров
    шаблоны нужны для обобщенного кода и метапрограммирования времени компиляции

    лисп неюзабелен из за скобок
     
  10. Booster

    Booster New Member

    Blog Posts:
    0
    GoldFinch
    Никто не запрещает использовать дженерики и для обобщённого кода. Хотя там в основном используется перегрузка.

    Дело привычки.
     
  11. Blackbeam

    Blackbeam New Member

    Blog Posts:
    0
    книжку по лиспу выкинул, когда понял, что ни один человек, находясчийся в здравом уме, писать на нём не будет
     
  12. Booster

    Booster New Member

    Blog Posts:
    0
    Blackbeam
    Зря, на нём пишут. Но даже если и не пишешь, то изучить полезно. Это как ассемблер, но только не вниз, а вверх.
     
  13. Clerk

    Clerk Забанен

    Blog Posts:
    0
    1. Много тех кто захотел написать свой го.вноскрипт.
    2. Отсутствие контроля кода. Я не знаю что скомпилит любой скриптовый компиль и этим в достаточной степени нельзя управлять.
    3. В моём хватает всего(масм). Ну почти, конечно макроязык хотелось бы погибче и багов поменьше, но это не проблема. В скриптах вобще отсутствует контроль создаваемого кода и средства управления, они не пригодны для решения моих задач.
    4. Большое число макро. Низкоуровневый компиль. Точнее средства позволяющие на этом уровне управлять компиляцией.
    5. Нет.
     
  14. GoldFinch

    GoldFinch New Member

    Blog Posts:
    0
    Если не знаете, нечего писать.

    То что вы чего-то не понимаете - это не недостаток того чего вы не понимаете, это ваш недостаток.
     
  15. Clerk

    Clerk Забанен

    Blog Posts:
    0
    GoldFinch
    Так и не пишу. Я же скрипт не юзаю, знаете ведь. Причины выше описаны. Разница между нами в том, что может вы и знаете тотже си лучше меня, но вы нуб товарищ.
     
  16. Booster

    Booster New Member

    Blog Posts:
    0
    GoldFinch
    Не ввязывайся, товарищ просто тролль.
     
  17. Clerk

    Clerk Забанен

    Blog Posts:
    0
    Booster
    Угу, троль у которого сдесь сообщений технических больше чем у вас всех вместе взятых. Судя по ним троль сдесь бустер.
     
  18. Booster

    Booster New Member

    Blog Posts:
    0
    Clerk
    Тут все тролли и нубы, кроме Вас. Этот форум не достоин вашей светлости.
     
  19. osox

    osox New Member

    Blog Posts:
    0
    2all
    а в чем смысл выбора одного асма и открещивания от скриптов
    или наобоорот выбор скриптов и открещивания от асма
    нужно и то и другое знать надо и то и другое
    инструменты себе и утилиты писать с простецким машинным
    кодом скрипты для этого именно как генераторы
    кода в самый раз подходят а что то изощренное нужен асм конечно
    я для себя вижу знание асма и потихоньку его учу чтоб
    юзать совместно с скриптами
     
  20. Blackbeam

    Blackbeam New Member

    Blog Posts:
    0
    опять вас понесло

    вчера по культуре была интересная киношка про французского балетмейстера, вроде того, смотрел не сначала и не до конца

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