Океания
Папуасские языки {832}
Классификация папуасских языков является наименее разработанной. Традиционно (по Вурму) они делятся на 5 макросемей (включающих 83 семьи и 14 изолятов), 8 отдельных семей и 32 изолята.
- Трансновогвинейская макросемья {564}, вкл. 47 семей и 8 изолятов
- Западнопапуасская макросемья {26}, вкл. 6 семей и 3 изолята
- Восточнопапуасская макросемья {36}, вкл. 5 семей
- Сепик-раму макросемья {104}, вкл. 18 семей и 2 изолята
- Торричелли макросемья {48}, вкл. 7 семей и 1 изолят
- Ско семья {7}
- Квомтари семья {6}
- Араи семья {7}
- Амто-мусианская семья {2}
- Сарерская семья (залива Сарера, Гелвинк-бей) {33}
- Восточночендравасихская семья {3}
- Байоно-авбоно семья {2}
- Нижне-мамберамская семья {2}
Языки Австралии и Тасмании
- Австралийская макросемья {258}, иногда считаемая семьёй, иначе включающая 32 семьи и изолята
- Тасманийская семья † {5}
Африка и Юго-западная Азия
Основная статья: Языки Африки
Языки Африки традиционно объединяются в 4 «макросемьи», родство не всех из них доказано, однако они широко используются для удобства.
Афразийская макросемья {375}
- Семитская семья {77}
- Берберо-канарская семья {26}, состоящая из берберских и канарских (гуанчских) языков
-
Египетская семья {5}
- Древнеегипетский язык †
- Коптский язык †
-
Чадская надсемья {195}
- Ц.-чадская семья {86}
- З.-чадская семья {73}
- В.-чадская семья {36}
-
Кушитская надсемья {47}
- Бедауйе язык {1}
- Агавская семья {5}
- Южнокушитская семья {8}
- Восточнокушитская семья {33}
-
Омотская надсемья {28}
- С.-омотская семья {24}
- Ю.-омотская (ароидная) семья {4}
Нигеро-конголезская (конго-кордофанская) макросемья {1 514}
- Кордофанская семья {24}
- Манде семья {68}
- Атлантическая семья {64}
- Иджоидная семья {10}
- Догонская семья {10}
- Кру семья {39}
- Сенуфо семья {15}
- Гур семья {96}
- Адамава-убангийская семья {158}
- Ква семья {80}
- Бенуэ-конголезская семья {961}
Нило-сахарские языки {204}
- Сонгайская семья {9}
- Сахарская семья {9}
- Кульяк семья {3}
- Мабанская семья {9}
- Фур семья {3}
- Берта язык {1}
- Кунама язык {1}
- Центральносуданская семья {65}
- Восточносуданская семья {92}
- Гумуз язык (изолят) {1}
- Команская семья {5}
- Кадугли семья {7}
Койсанские языки {26}
- Кхой (центральнокойсанская) семья {8}
- Жу-къви семья {17} = сев.-койсанские языки + южнокойсанские языки
- Квади язык (изолят) † {1}
- Сандаве язык (изолят) {1}
- Хадза язык (изолят) {1}
Научное исследование генеалогической классификации языков
Генеалогическая языковая классификация получила свое развитие параллельно с общей лингвистикой в XIX веке. Но исследование вопросов родственного генезиса языков проводилось и в Средние века: в XI веке тюркский языковед Махмуд аль-Кашгари занимался изучением генетических связей тюркских языков; арабы и европейцы в этот же период сравнивали между собой семитские языки и т.д.
Систематизацией накопленных в этой области знаний занялся немецкий мыслитель Готфрид Лейбниц, разработавший концепцию исторического генезиса языков. Философ классифицировал языки по принципу родства. Ученый опроверг теорию о происхождении всех языков от древнееврейского, а также определил исторические связи между германским и славянским, финским и венгерским и другими языками.
Научно обоснованная база генеалогической классификации появилась в начале XIX века в контексте сравнительно-исторического языкознания. Родственные связи между языками устанавливались, исходя из теории лингвиста Августа Шлейхера о родословном дереве.
В XX веке в генеалогической классификации широко использовали данные языковой географии, волновую концепцию лингвистической эволюции немецкого ученого Иоганнеса Шмидта.
Акция
ВСЕМ, КТО ОСТАВИЛ ЗАЯВКУ ДО23 февраля
(ДА-ДА, ИМЕННО 2 ПОЛНОЦЕННЫХ 45 МИНУТНЫХ УРОКА, А НЕ ПРОБНЫХ, КАК У ДРУГИХ!)
1. В акции принимают участие все заполнившие заявку
2. Первый пробный урок (30 минут) проводится бесплатно.
3. При первой оплате 5 занятий студент получает 2 урока по 45 минут с выбранным преподавателем и по выбранному курсу бесплатно (1 урок с преподавателем — носителем языка).**
4. Акция не суммируется с другими действующими предложениями и скидками.*
* Например, студент оплативший первые три занятия по льготной цене, не принимает участия в данной акции.
** При оплате 30 минутных уроков студенту предоставляется 2 урока по 30 минут (1 урок 30 минут с носителем языка).
Логическая разработка
Логическое программирование – подход к создание программного обеспечения, который базируется на доказательстве разнообразных теорем, а также выводах информации при помощи установленных фактов. Результат – побочный продукт функционирования утилиты.
Логическое программирование опирается на математические теоремы, а также дискретную математику. Оно не слишком понятно «обычному человеку». Это – достаточно сложный «раздел» написания ПО.
Особенности
Некоторые считают соответствующую концепцию функциональной. Подобное утверждение не является истиной. Логическое программирование подходит для создания средств искусственного интеллекта. Такой вариант идеален, когда переменные подразделяются на выходные и входные.
Ключевая особенность подобной разработки – то, что приложение представлено определенными отношениями между различными компонентами кода. Из недостатков стоит отметить тот факт, что далеко не все задачи можно описать логически. Для большинства современных решений соответствующая парадигма будет выступать устаревшей.
Когда пригодится
У логического программирования в 21 веке есть практическое применение, но оно встречается на практике не слишком часто. Изучать такую концепцию рекомендуется всем разработчикам: она помогает лучше мыслить.
Сферы, в которых пригодятся навыки логического программирования:
- машинное обучение;
- искусственный интеллект;
- работа с информацией (особенно в больших объемах).
Также рекомендуется «для общего развития». В 21 веке соответствующая концепция – это «узкоспециализированное» направление.
Языки
Языков логического программирования не очень много. Связано это с тем, что соответствующее направление не получило широкого распространения на практике с развитием информационного и технологического прогресса. Чаще всего используются два языка, о которых речь зайдет далее.
Prolog
Первый вариант – это Prolog. С него началось логическое программирование. Создан в 1972 году некий Аленом Колмероэ. Выступает в качестве свежего и актуального по сей день. Синтаксис у Prolog далеко не самый простой, но он полезен в понимании логики ПК.
К преимуществам Пролога относят:
- простоту изучения и понимания;
- наличие фактов и выражений;
- отсутствие зависимости от выбранного пути.
Но для комплексного программного обеспечения Prolog не годится. Пользователю предстоит использовать его в связке с другими ЯП. Вычислительные операции здесь отнимают немало времени – итоговый контент может отличаться медленной работой.
Mercury
Это – второй вариант логического программирования. Он обеспечивает лучшую отладку и повышенную производительность по сравнению с «предшественником». Синтаксис от Prolog сильно отличается, что делает изучение Mercury достаточно трудным.
На практике встречается редко из-за того, что развивается медленно. Финансирование соответствующего проекта дефицитное.
Из чего состоит язык
Языки логического программирования, низкоуровневые, высокоуровневые и другие состоят из определенных компонентов. Сюда относят:
- Алфавит. Это – символы, которые в сочетании будут образовывать разного рода конструкции языка.
- Синтаксис. Совокупность правил записи функций, команд и иных языковых конструкций.
- Семантика. Правила, согласно которым происходит толкование и обработка заданных в приложении конструкций.
Также есть словари. Это – определенные слова, которые используются «специфическим» образом. Они задействуются в коде в отдельных ситуациях и реализовывают строго установленное назначение. Такими являются ключевые слова. Примеры – printf, if, input.
Евразия
Основная статья: Языки Евразии
- Баскская семья {3}
- Индоевропейская семья {449}
Следующие 2 семьи обычно называются кавказскими языками (не-генетическое объединение):
-
Северокавказская семья {34}, не общепринятое единство, состоит из:
- Абхазо-адыгских языков
- Нахско-дагестанских языков
- Картвельская семья {6}
- Уральская семья {39}
-
Алтайская семья {79} Признана не всеми исследователями. Обычно включает
- Монгольские языки
- Тюркские языки
- Тунгусо-маньчжурские языки; но в максимальном варианте также
- Корейский язык и
- Японо-рюкюские языки (включая японский язык и рюкюсские языки)
- Дравидийская семья {66}
- Бурушаски язык (изолят) {1}
Следующие 5 семей условно называются «Палеоазиатскими языками» (не-генетическое объединение):
- Енисейская семья {2}
- Юкагир(о-чуван)ская семья {2}
- Чукотско-камчатская семья {5}, в том числе: чукотский язык, корякский язык, ительменский язык и др.
- Нивхский язык (изолят) {1}
- Айнская семья † {3}
- Сино-тибетская семья {363}, в том числе китайский язык или скорее группа языков
- Тай-кадайская семья {70}
- Мяо-яо семья {22}
-
Австроазиатская надсемья
- Собственно австроазиатская семья {163}, в том числе вьетнамский язык
- Никобарская семья {6}
-
Австронезийская надсемья {1268}
- Малайско-полинезийская семья {1248}
- Формозская (тайваньская) семья {20}
- Андаманская семья {13}
Древние языки:
Основная статья: Реликтовые языки Евразии
- Тирренская семья {2} † (вкл. этрусский язык)
- Хуррито-урартская семья † {2}
- Шумерский язык (изолят) † {1}
- Эламский язык (изолят) † {1}
- Неклассифицированные языки {12}, в том числе иберский язык †, кипро-минойский язык †, этеокритский язык †, хаттский язык †, касситский язык † и другие реликтовые языки Западной Евразии.
Популярные языки разработки
Зная, что такое programming language, пользователь сможет выбрать один из них для более глубокого и тщательного изучения. Миру известны десятки ЯП – от языков низкого уровня до высокого. Но есть несколько непревзойденных лидеров, которые чаще всего встречаются на практике.
C++
Один из самых старых и актуальных языков. На C++ пишут практически все существующие приложения. Это – язык программирования универсального характера. Он помогает при создании не только игр, но и сложных бизнес-решений, веб-сайтов, служб для операционных систем.
Программист, свободно владеющий C++, сможет с легкостью найти себе место работы. Он демонстрирует профессионализм в сфере разработки ПО на высшем уровне.
К особенностям C++ относят:
- универсальность;
- трудности изучения – новичку разобраться с программным кодом достаточно тяжело;
- кроссплатформенность;
- сложность синтаксиса;
- огромный исходный код.
C++ — то, что рано или поздно должен освоить каждый грамотный разработчик.
Visual Basic
Это – объектно-ориентированный язык. На нем пишутся продукты от компании Microsoft. Отличается функциональностью, простотой освоения. Хорошо подходит для написания всевозможных прототипов.
Но у VB есть и минусы. Работа с памятью осуществляется медленно. Здесь нельзя оставлять комментарии, а сложные утилиты будут «тормозить» даже на самых мощных устройствах. Это – неплохой вариант для мини-приложений.
Python
Разобравшись, что собой представляет логическое программирование и другие концепции создания ПО, стоит обратить внимание на Питон. Данный ЯП в последние 5-8 лет стал набирать стремительную популярность
Он относится к языкам программирования общего назначения. Предусматривает концепции ООП в своем составе. Прост в изучении и функционален. Обладает хорошей поддержкой и финансированием.
На Python программист сможет создавать небольшие и средние проекты. А вот для полноценной крупномасштабной игры его придется использовать в связке с другим ЯП.
PHP
PHP – настоящий верный друг любого веб-разработчика. Данный ЯП официально признан «классическим» для создания веб-страниц. Кроссплатформенный, быстрый, удобный для изучения. Получаемый на выходе исходный код обладает высокой читаемостью.
К недостаткам PHP можно отнести:
- несовместимость имеющихся версий;
- отсутствие многопотоковой работы.
Это – императивный ЯП. Рекомендован всем веб-мастерам.
Java
Разобравшись в языках низкого и высокого уровней, стоит обратить внимание на Java. Это – «классический» ЯП для кроссплатформенной разработки
Часто встречается в мобильных приложениях.
Java легко освоить – его синтаксис напоминает английский. Исходный код компактен и хорошо читаем. Функциональности Джавы можно только позавидовать – она предусматривает множество библиотек и фреймворков. На Java написана популярная игра Minecraft.
Рекомендован для изучения всеми разработчиками. Но сложные проекты на нем реализовать тяжело – Java забирает у устройства много памяти и места.
JavaScript
Язык программирования, который подходит web-программистам. Базируется на скриптах, которые хорошо совместимы со всеми популярными интернет-обозревателями. Включает в себя огромное количество функций и инструментов.
При помощи JS можно создать:
- плагин;
- виджет;
- серверные утилиты;
- офисные приложения;
- прикладное ПО.
Существенный недостаток – это относительно низкий уровень безопасности кода.
SQL
Декларативное программирование включает в себя «языки баз данных и запросов». Самый популярный вариант – это SQL.
Он прост и понятен даже новичкам. Написание кодов не требует особой вдумчивости – вариантов достаточно мало. SQL использует строго ограниченный набор функций и команд. Обладает различными диалектами.
SQL полезен тем, кто планирует работать с информацией. Полноценное приложение на нем написать не удастся, а вот использовать для подключения БД – вполне.
HTML
На HTML можно:
- проводить форматирование текста;
- редактировать блоки информации;
- работать с имеющимися таблицами;
- вставлять разнообразные объекты (мультимедиа в том числе);
- работать с гиперссылками.
Для полноценной веб-разработки программисту пригодится CSS, а также навыки осуществления верстки.
Быстро выучить языки программирования низкого уровня (и высокого), а также научиться написанию ПО помогут специализированные онлайн курсы. Ученики смогут подобрать программы, соответствующие имеющемуся багажу знаний. Они научится разбирать коды программируемых утилит, создавать сложный контент «с нуля» на разных ЯП, а также использовать всевозможные инструменты разработчика. В конце будет выдан электронный сертификат.
Что такое генеалогическая классификация языков
Генеалогическая классификация языков — это группировка по генетическому принципу, предполагающая объединение языков, предположительно произошедших из одного общего наследственного языка и имеющих родственные связи.
Факт общего возникновения языков подтверждается, когда в них имеются аналогичные по происхождению морфемы.
Морфема — наименьшая единица языка, имеющая некоторый смысл.
Осторожно! Если преподаватель обнаружит плагиат в работе, не избежать крупных проблем (вплоть до отчисления). Если нет возможности написать самому, закажите тут
Доказательством того, что корни и аффиксы имеют общий генезис, являются постоянные звуковые соответствия между рассматриваемыми языками. Исходя из этого, определяется способ установления генетического родства языков. Для этого необходимо создать сравнительно-историческую фонетику, чтобы произвести реконструкцию морфем праязыка. Требуется проанализировать преобразование восстановленных морфем в морфемы языков-потомков. Такая методика применялась для определения родственных связей между языками большинства современных языковых семей.
Для установления места отдельного языка в рассматриваемой классификации используют сравнительно-исторический способ. Его суть состоит в том, чтобы сопоставить конкретный язык с другими из той же семьи, а также с их общим праязыком.
Что такое лингвистическая типология
Типология – один из разделов языкознания, который занимается выявлением закономерностей, присущих разных языкам. Лингвисты находят в языках общие черты, составляют по ним классификации, выясняют закономерности между такими чертами, предсказывают особенности языков по уже известным признакам.
В разных языках мира много общих особенностей и много разных черт, и все они совсем не обязательно связаны с родством. Эти закономерности можно найти на разных уровнях языка: в фонетике, фонологии, морфологии, синтаксисе и даже дискурсе. Это значит, что классифицировать языки можно по особенностям их звуков или ударения, по строению слов, по устройству предложений или текста.
Второстепенные классификации языков
Географическая классификация языков заключается в выделении на географической карте областей (ареалов), в которых концентрируются определённые группы языков. С помощью данного типа классификации изучается распространение языковых явлений как в пространстве, так и во времени.
Ареальная классификация характеризуется как промежуточная между генеалогической и типологической классификациями. Это связано с тем, что географическая классификация затрагивает и родственные отношения между языками (как правило, близко расположенные языки являются близкородственными), и их формальное сходство (которое связано утилитарными потребностями жителей одного региона).
Основными понятиями географической классификации языков являются:
- языковой ареал – это территориальные границы, в рамках которых встречаются определённые языковые явления;
- языковой союз – это объединение языков, которое основано на их географической близости и соответствующих контактах между ними (например, балканский языковой союз, кавказский языковой союз и т.д.).
Географическая классификация может применяться как к отдельным и самостоятельным языкам, так и к одному языку, обособляя его диалекты (например, таким образом выделяют в русском языке северное и южное наречия).
В основе функциональной классификации языков лежат множество факторов функционирования языков в обществе. Поэтому ею зачастую называют социально-функциональной или социолингвистической.
Так, по выполняемым в обществе функциям выделяют такие языки, как обыденная речь, литературный язык, профессионализмы, жаргонизмы и т.д.
С точки зрения распространенности языка по отношению к его исконной территории выделяют местные языки, региональные языки, языки межнационального общения и мировые языки.
А по связи языка с этнической общностью принято рассматривать языки племён, народностей и наций.
К каким типам принадлежит английский язык
Если мы будем понимать, какое место занимает английский язык в каждой из этих классификаций, нам будет проще чувствовать его особенности во время изучения и замечать различия между английским и русским, которые часто мешают студентам.
Английский – нетональный язык, в котором используется нефиксированное ударение. При этом ударение иногда играет смыслоразличительную роль, как и в русском: в некоторых словах от него постановки меняется значение. Например, increase с ударением на первом слоге – это существительное «увеличение», а с ударением на втором слоге – глагол «увеличивать».
Английский гораздо ближе к аналитическим языкам, чем к синтетическим. В нем грамматические отношения передаются чаще всего не морфологически, когда меняется слово, а синтаксически – когда в предложении используются служебные слова или другие способы. Например, в английском языке для выражения грамматических значений используются модальные глаголы, предлоги, фиксированный порядок слов. В этом английский очень похож на китайский, голландский, болгарский языки.
В прошлом английский был синтетическим языком, и сегодня в нем сохранились единичные случаи, когда грамматика влияет на строение слова: например, до сих пор используется суффикс s для выражения множественного числа: table – tables.
Лингвисты оценивают уровень синтетизма языков по специальной шкале, на которой английский язык имеет низкий показатель 0,5, для сравнения – индекс русского языка составляет примерно 2,5.
Английский язык относится также к изолирующим. В английском слово и морфема в большинстве случаев совпадают. Если проанализировать такие предложения как I can sing, we like reading, this book is good, будет видно, что каждая морфема соответствует отдельному слову, аффиксы не используются. Исключение – та же самая морфема s, показатель множественного числа.
Английский – язык с фиксированным порядком слов. Предложения строятся по формуле SVO за очень редкими исключениями. Если нарушить этот порядок – нарушится и смысл. Сравните: Mary kissed John и John kissed Mary.
Английский – типичный язык с выдвижением подлежащего. Подлежащее должно быть в каждом предложении, из-за чего у иностранцев часто случаются ошибки. Даже если по смыслу в предложении нет объекта действия, обязательно нужно использовать конструкции it is или there is, где it и there выполняют роль подлежащих: It’s amazing! – Потрясающе!
И, наконец, английский язык относится к языкам аккузативного строя – так же, как и русский. У него совпадают формы подлежащего с непереходным и переходным глаголом: They sing – They gave me a present. При этом дополнение при переходном глаголе отличается: I gave them a present.
В следующий раз при чтении английского текста обратите внимание на эти особенности английского языка. Отметьте для себя, как в нем проявляются аналитические и изолирующие свойства, как порядок слов влияет на смысл, в каких случаях ударение меняет значение слова
По принципам программирования
По принципам программирования различают процедурные, непроцедурные языки и языки объектно-ориентированного программирования.
Процедурные языки основаны на описании последовательной смены состояния компьютера, то есть значения ячеек памяти, состояния процессора и других устройств. Они манипулируют данными в пошаговом режиме, используя пошаговые инструкции. В процедурных языках выдерживают четкую структуризацию программ, поэтому их еще называют языками структурного программирования. К таким языкам относятся Fortran, Algol, Pascal, BASIC и др.
Процедурные языки полностью удовлетворяют потребности разработки небольших программ и программ средней сложности. Но в начале 80-х годов XX века объем и сложность программ достигли уровня, который требовал новых концептуальных подходов к программированию.
Непроцедурные языка эффективны для программирования поиска данных в больших объемах, а также для программирования задач, процесс решения которых невозможно описать точно (перевод, распознавание образов). В этих языках сама процедура поиска решения встроена в интерпретатор языка. К таким языкам относятся языки функционального и логического программирования.
В конце XX в. была презентована новая методика программирования, получила название объектно-ориентированного программирования (ООП). То есть начали развиваться языки, содержащие конструкции, позволяющие определять объекты, принадлежащие к классам и имеющие средства для работы с абстрактными типами данных. К таким языкам относятся C ++, Java, C #, Python и др. Сегодня языки ООП практически вытеснили с рынка профессионального программирования процедурные языки.
Основная классификация
Классификация языков разработки может быть совершенно разной
Здесь стоит обратить внимание на несколько способов «деления на категории»
Первый вариант – это классификация по зависимости от аппаратного устройства (компьютера):
- языки низкого уровня;
- языки высокого уровня.
По принципам программирования:
- процедурные;
- непроцедурные;
- объектно-ориентированные.
По ориентации на класс задач, выполняемых получившимся софтом:
- универсальные;
- специализированные.
Есть логическое программирование, функциональное, объектно-ориентированное. Programming Languages бывают также кроссплатформенными и нативными. Классифицировать ЯП можно по разным признакам, но предложенные варианты являются «классическими». Они помогают быстрее остальных форм разделения ЯП по типам выбрать подходящий вариант для дальнейшего изучения.
Степень зависимости
Стоит начать рассмотрение с языков низкого уровня. Они носят название машинно-ориентированные. Это – языки, в которых команды и данные будут учитывать непосредственную архитектуру компьютера. Они широко применяются в разработке ПО. У языков низкого уровня есть одна особенность – ориентированность на конкретный тип устройства. Итоговый контент не будет запускаться на платформе, для которого он не был создан изначально.
Низкоуровневые ЯП хорошо интерпретируются устройствами, но обычному человеку понять их бывает не слишком легко. В основе заложены двоичные коды. Пример – Assembler.
Кроме языков низкого уровня есть ЯП высокого «класса». Они носят название машинно-независимых. Программы, получаемые на выходе, будут использоваться на устройствах разного типа. Обладают большей доступностью, чем низкоуровневые. Пример – первый высокоуровневый ЯП Fortran.
По принципам разработки
Программирование может быть процедурным, непроцедурным и объектно-ориентированным. Это – второй тип классификации.
Процедурный вариант предусматривает следующие особенности:
- базируются на смене состояния устройства (значении ячеек памяти, процессора);
- управление информацией осуществляется пошагово;
- для реализации заданных операций используются так называемые инструкции%
- предусматривается четкая структуризация приложений.
Непроцедурное программирование эффективно тогда, когда требуется искать информацию в больших количествах. Оно применяется в ситуациях, при которых выстроить точное решение не получается (пример – переводы и распознавание образов). Решения здесь будут опираться на встроенный интерпретатор. Непроцедурная разработка предусматривает языки логического программирования и функционального.
Объектно-ориентированное программирование в 21 веке стало наиболее популярным решением в разработке ПО. Данная концепция возникла впервые в прошлом столетии. Сюда относят ЯП, которые определяют объекты, работают с классами и располагают абстрактными данными. В основе заложены принципы наследования, инкапсуляции и абстракции. Приложение представлено связью объектов. Оно опирается на взаимодействие компонентов на экране, а не на чистую логику.
Ориентация на класс задач
ЯП могут быть универсальными или специализированными. Первый вариант подходит для решения самых разных задач и проблем. Они используются для веб-разработки, создания игр, бизнес-приложений и многого другого.
Специализированные ЯП принимают во внимание специфику выбранной предметной области. Сегодня известны десятки таких вариантов:
- для web программирования;
- скриптовые;
- разметки;
- гипертекста;
- для мобильных платформ.
Часто специализированные языки применяются для того, чтобы создавать разного рода небольшие вспомогательные приложения.
Взаимосвязь языков
Генетически связанные языки объединяются в соответствующие структурные единицы:
- Макросемья — это обобщение нескольких языковых семей, имеющих гипотетическую связь друг с другом.
- Семья — группа родственно связанных языков, возникших из общего протоязыка.
- Ветвь, представляющая собой внутрисемейное группирование языков, обладающих генетической близостью.
- Группа — это единица классификации, предполагающая объединение языков, имеющих много морфемных и грамматических сходств.
- Подгруппа — это объединенные внутри группы языки с наиболее схожими признаками.
Русский язык принадлежит к восточнославянской подгруппе славянской группы балто-славянской ветви индоевропейской семьи ностратической макросемьи.
Внутри отдельного языка также существует генеалогическая классификация, осуществляемая с помощью следующих структурных единиц:
- Наречие — это подразделение языка, включающее диалекты и говоры общего происхождения.
- Диалект — это вариация языка с отличным от литературной нормы лексиконом, свойственная конкретной местности.
- Говор — это форма диалекта, используемая в коммуникации территориально небольшой группы населения.
Ростовский говор является частью костромского диалекта, который, в свою очередь, входит в северорусское наречие.
Составляющие части языка программирования
Любой язык программирования высокого уровня, как и любой другой язык, имеет основные составляющие:
Алфавит
Набор символов, из которых образуются команды программы и другие конструкции языка.
Каждый язык имеет свой алфавит. Но большинство из них содержит английские буквы, цифры, знаки арифметических операций (+, *, -, /), знаки отношений (больше, равно и др.), синтаксические знаки (точка, точка с запятой и др.).
Синтаксис
Совокупность правил записи команд и других конструкций языка.
Нарушение правил синтаксиса определяется автоматически, о чем программист получает сообщение.
Семантика
Совокупность правил толкования и выполнения конструкций языка программирования.
Например, два кода, приведенные далее, имеют одинаковую логику (выполняют одинаковые действия), результаты их выполнения тоже одинаковые. Но семантически коды разные:
- i = 0; while (i <5) {i ++;}
- i = 0; do {i ++;} while (i <= 4)
Словарь
Язык программирования имеет словарь — определенное количество слов, правила употребления которых определены для этого языка и которые имеют строго определенное назначение. Такие слова называют зарезервированными (ключевыми), например, for, input, if, print.