Каковы различные концепции языков программирования и какие языки показывают их в чистом виде

Я не знаток языков, но я ' m в последнее время на языки и пытается получить обзор основных понятий и «своих» языков. Это похоже на другой вопрос о книгах . Итак, во-первых, каковы основные концепции языка программирования, например,

  • структурированный
  • процедурный
  • объектно-ориентированный
  • объектно-ориентированный - основанный на прототипе (например, Java Script)
  • функциональный (например, Haskell)
  • логика ориентированный (например, Пролог)
  • мета (если это чистая концепция?)
  • основанный на стеке (например, Forth)
  • на основе математики / ориентированный на массив (например, APL)
  • декларативный
  • конкатенативный (например, PostScript)
  • (определенно неполный список ...)

и, во-вторых, чтобы получить хорошее представление об этих концепциях, какой язык программирования основан на / реализует свою основную концепцию наиболее естественно и чисто?

  • Для пример Java - объектно ориентированный, но это ' Это не очень хороший пример, потому что это не чистый объектно-ориентированный язык из-за атомов.
  • Lisp известен как функциональный язык, но он мультипарадигмальный, поэтому он не чистый. Но Лисп может быть чистой реализацией «основанного на списках» (если это считается концепцией).
  • Есть ли язык, который структурирован (без GOTO), но не процедурный? (Может быть, XSLT v1.x)

5
задан Community 23 May 2017 в 11:51
поделиться