Домой Личность Электронная библиотека. C универсальная эволюция C универсальная эволюция

Электронная библиотека. C универсальная эволюция C универсальная эволюция

Основное внимание в книге уделено общим целям дизайна, ходу эволюции языка от первоначального проекта «Си с классами» до современного состояния и описанию развития языковых концепций. Также Страуструп подробно показал в книге связь C++ и языка Симула .

Идею написать статью об истории C++ Страуструпу предложили на второй конференции ACM по истории языков программирования в 1993 году (ACM HOPL -2). Заинтересованность других побудила его на более серьёзную работу, и к 1994 году была написана целая книга.

См. также

Напишите отзыв о статье "Дизайн и эволюция C++"

Примечания

Ссылки

  • Bjarne Stroustrup. (англ.) . - AT&T Stroustrup’s homepage. Проверено 18 августа 2009. .
  • Francis Glassborow. (англ.) (недоступная ссылка - история ) (май 1994). - Зеркало сайта ACCU , не обновляемое с 2000 года. Проверено 18 августа 2009. .

Отрывок, характеризующий Дизайн и эволюция C++

Ростов на пригорке остановил на минуту лошадь, чтобы рассмотреть то, что делалось; но как он ни напрягал внимание, он ничего не мог ни понять, ни разобрать из того, что делалось: двигались там в дыму какие то люди, двигались и спереди и сзади какие то холсты войск; но зачем? кто? куда? нельзя было понять. Вид этот и звуки эти не только не возбуждали в нем какого нибудь унылого или робкого чувства, но, напротив, придавали ему энергии и решительности.
«Ну, еще, еще наддай!» – обращался он мысленно к этим звукам и опять пускался скакать по линии, всё дальше и дальше проникая в область войск, уже вступивших в дело.
«Уж как это там будет, не знаю, а всё будет хорошо!» думал Ростов.
Проехав какие то австрийские войска, Ростов заметил, что следующая за тем часть линии (это была гвардия) уже вступила в дело.
«Тем лучше! посмотрю вблизи», подумал он.
Он поехал почти по передней линии. Несколько всадников скакали по направлению к нему. Это были наши лейб уланы, которые расстроенными рядами возвращались из атаки. Ростов миновал их, заметил невольно одного из них в крови и поскакал дальше.
«Мне до этого дела нет!» подумал он. Не успел он проехать нескольких сот шагов после этого, как влево от него, наперерез ему, показалась на всем протяжении поля огромная масса кавалеристов на вороных лошадях, в белых блестящих мундирах, которые рысью шли прямо на него. Ростов пустил лошадь во весь скок, для того чтоб уехать с дороги от этих кавалеристов, и он бы уехал от них, ежели бы они шли всё тем же аллюром, но они всё прибавляли хода, так что некоторые лошади уже скакали. Ростову всё слышнее и слышнее становился их топот и бряцание их оружия и виднее становились их лошади, фигуры и даже лица. Это были наши кавалергарды, шедшие в атаку на французскую кавалерию, подвигавшуюся им навстречу.
Кавалергарды скакали, но еще удерживая лошадей. Ростов уже видел их лица и услышал команду: «марш, марш!» произнесенную офицером, выпустившим во весь мах свою кровную лошадь. Ростов, опасаясь быть раздавленным или завлеченным в атаку на французов, скакал вдоль фронта, что было мочи у его лошади, и всё таки не успел миновать их.
Крайний кавалергард, огромный ростом рябой мужчина, злобно нахмурился, увидав перед собой Ростова, с которым он неминуемо должен был столкнуться. Этот кавалергард непременно сбил бы с ног Ростова с его Бедуином (Ростов сам себе казался таким маленьким и слабеньким в сравнении с этими громадными людьми и лошадьми), ежели бы он не догадался взмахнуть нагайкой в глаза кавалергардовой лошади. Вороная, тяжелая, пятивершковая лошадь шарахнулась, приложив уши; но рябой кавалергард всадил ей с размаху в бока огромные шпоры, и лошадь, взмахнув хвостом и вытянув шею, понеслась еще быстрее. Едва кавалергарды миновали Ростова, как он услыхал их крик: «Ура!» и оглянувшись увидал, что передние ряды их смешивались с чужими, вероятно французскими, кавалеристами в красных эполетах. Дальше нельзя было ничего видеть, потому что тотчас же после этого откуда то стали стрелять пушки, и всё застлалось дымом.

Почему C++

С++ в настоящее время считается господствующим языком, используемым для разра-ботки коммерческих программных продуктов. В последние годы это господство слегка по-колебалось вследствие аналогичных претензий со стороны такого языка программирова-ния, как Java, но маятник общественного мнения качнулся в другую сторону, и многие программисты, которые бросили С++ ради Jаvа, в последнее время поспешили вернуться к своей прежней привязанности. В любом случае эти два языка настолько похожи, что, изучив один из них, вы автоматически осваиваете 90% другого.

С# -- это новый язык, разработанный Мiсгоsоft для сетевой платформы. По суще-ству С# является разновидностью С++, и несмотря на ряд принципиальных отличий, языки С# и С++ совпадают примерно на 90%. Вероятно, пройдет немало времени, прежде чем язык С# составит серьезную конкуренцию языку С++; но даже если это и произойдет, то знание языка С++ окажется существенным преимуществом.

С++ является языком программирования общего назначения. Естественная для него область применения - системное программирование, понимаемое в широком смысле этого слова. Кроме того, С++ успешно используется во многих областях приложения, далеко выходящих за указанные рамки. Реализации С++ теперь есть на всех машинах, начиная с самых скромных микрокомпьютеров - до самых больших супер-ЭВМ, и практически для всех операционных систем.

Возникновение и эволюция языка C++

Бьерн Страуструп является разработчиком языка С++ и создателем первого транслятора. Он - сотрудник научно-исследовательского вычислительного центра AT&T Bell Laboratories в Мюррей Хилл (Нью-Джерси, США). Он получил звание магистра математики и вычислительной техники в университете г. Аарус (Дания), а докторское звание по вычислительной технике в кэмбриджском университете (Англия). Он специализируется в области распределенных систем, операционных систем, моделирования и программирования. Вместе с М. А. Эллис он является автором полного руководства по языку С++ - "Руководство по С++ с примечаниями".

Безусловно С++ многим обязан языку С , который сохраняется как его подмножество. Сохранены и все свойственные С средства низкого уровня, предназначенные для решения самых насущных задач системного программирования. С, в свою очередь, многим обязан своему предшественнику языку BCPL . Комментарий языка BCPL был восстановлен в С++. Еще одним источником вдохновения был язык SIMULA-67 ; именно из него была заимствована концепция классов (вместе c производными классами и виртуальными функциями). Возможность в С++ перегрузки операций и свобода размещения описаний всюду, где может встречаться оператор, напоминают язык Алгол-68 .

Более ранние версии языка, получившие название "С с классами" , использовались, начиная с 1980 г. Этот язык возник потому, что автору потребовалось написать программы моделирования, управляемые прерываниями. Язык SIMULA-67 идеально подходит для этого, если не учитывать эффективность. Язык "С с классами" использовался для больших задач моделирования. Строгой проверке подверглись тогда возможности написания на нем программ, для которых критичны ресурсы времени и памяти. В этом языке недоставало перегрузки операций, ссылок, виртуальных функций и многих других возможностей. Впервые С++ вышел за пределы исследовательской группы, в которой работал автор, в июле 1983 г., однако тогда многие возможности С++ еще не были разработаны.

Название С++ (си плюс плюс) , было придумано Риком Маскитти летом 1983 г. Это название отражает эволюционный характер изменений языка С. Обозначение ++ относится к операции наращивания С. Чуть более короткое имя С+ является синтаксической ошибкой. Кроме того, оно уже было использовано как название совсем другого языка. Знатоки семантики С находят, что С++ хуже, чем ++С. Язык не получил названия D, поскольку он является расширением С, и в нем не делается попыток решить какие-либо проблемы за счет отказа от возможностей С. Еще одну интересную интерпретацию названия С++ можно найти в приложении к .

Изначально С++ был задуман для того, чтобы автору и его друзьям не надо было программировать на ассемблере, С или других современных языках высокого уровня. Основное его предназначение - упростить и сделать более приятным процесс программирования для отдельного программиста. До недавнего времени не было плана разработки С++ на бумаге. Проектирование, реализация и документирование шли параллельно. Никогда не существовало "проекта С++" или "Комитета по разработке С++". Поэтому язык развивался и продолжает развиваться так, чтобы преодолеть все проблемы, с которыми столкнулись пользователи. Толчками к развитию служат также и обсуждения автором всех проблем с его друзьями и коллегами.

С момента выхода в свет первого издания этой книги язык С++ подвергся существенным изменениям и уточнениям. В основном это касается разрешения неоднозначности при перегрузке, связывании и управлении памятью. Вместе с тем, были внесены незначительные изменения с целью увеличить совместимость с языком С. Были также введены некоторые обобщения и существенные расширения, как то: множественное наследование, функции-члены со спецификациями static и const, защищенные члены (protected), шаблоны типа и обработка особых ситуаций. Все эти расширения и доработки были нацелены на то, чтобы С++ стал языком, на котором можно создавать и использовать библиотеки. Все изменения описываются в .

Другие расширения, введенные за период между 1985 и 1991 г.г. (такие как множественное наследование, статические функции-члены и чистые виртуальные функции), скорее появились в результате обобщения опыта программирования на С++, чем были почерпнуты из других языков.

Сделанные за эти шесть лет расширения языка прежде всего были направлены на повышение выразительности С++ как языка абстракции данных и объектно-ориентированного программирования вообще и как средства для создания высококачественных библиотек с пользовательскими типами данных в частности.

Примерно в 1987 г. стало очевидно, что работа по стандартизации С++ неизбежна и что следует незамедлительно приступить к созданию основы для нее .

Фирма AT&T Bell Laboratories внесла основной вклад в эту работу. Около ста представителей из порядка 20 организаций изучали и комментировали то, что стало современной версией справочного руководства и исходными материалами для ANSI по стандартизации. С++. Наконец, по инициативе фирмы Hewlett-Packard в декабре 1989 г. в составе ANSI был образован комитет X3J16. Ожидается, что работы по стандартизации С++ в ANSI (американский стандарт) станут составной частью работ по стандартизации силами ISO (Международной организации по стандартизации).

С++ развивался одновременно с развитием некоторых фундаментальных классов.

Дизайн и эволюция C++ - Страуструп Б. - 2006.

В книге, написанной создателем языка C++ Бьерном Страуструпом, представлено описание процесса проектирования и разработки языка программирования C++.
Здесь изложены цели, принципы и практические ограничения, наложившие отпечаток на структуру и облик C++, обсужден дизайн недавно добавленных в язык средств: шаблонов, исключений, идентификации типа во время исполнения и пространств имен. Автор анализирует решения, принятые в ходе работы над языком, и демонстрирует, как правильно применять «реальный объектно-ориентированный язык программирования».
Книга удобно организована, поучительна, написана с юмором. Описание ключевых идей даст начинающему пользователю ту основу, на которой позже он выстроит свое понимание всех деталей языка. Опытный программист найдет здесь обсуждение принципиальных вопросов проектирования, что позволит ему лучше понять язык, с которым он работает.

Предисловие
Благодарности
Обращение к читателю
Часть I
Глава 1. Предыстория C++
1.1. Язык Simula и распределенные системы
1.2. Язык С и системное программирование
1.3. Немного об авторе книги
Глава 2. Язык С with Classes
2.1. Рождение С with Classes
2.2. Обзор языковых возможностей
2.3. Классы
2.4. Эффективность исполнения
2.4.1. Встраивание
2.5. Модель компоновки
2.5.1. Простые реализации
2.5.2. Модель размещения объекта в памяти
2.6. Статический контроль типов
2.6.1. Сужающие преобразования
2.6.2.0 пользе предупреждений
2.7. Почему С?
2.8 Проблемы синтаксиса
2.8.1. Синтаксис объявлений в языке С
2.8.2. Тэги структур и имена типов
2.8.3. Важность синтаксиса
2.9. Производные классы
2.9.1. Полиморфизм без виртуальных функций
2.9.2. Контейнерные классы без шаблонов
2.9.3. Модель размещения объекта в памяти
2.9.4. Ретроспектива
2.10. Модель защиты
2.11. Гарантии времени исполнения
2.11.1. Конструкторы и деструкторы.
2.11.2. Распределение памяти и конструкторы.
2.11.3. Функции call и return .
2.12. Менее существенные средства.
2.12.1. Перегрузка оператора присваивания
2.12.2. Аргументы по умолчанию
2.13. Что не реализовано в С with Classes
2.14. Рабочая обстановка.
Глава 3. Рождение C++
3.1. От С with Classes к C++ .
3.2. Цели C++
3.3. Компилятор Cfront
3.3.1. Генерирование С-кода
3.3.2. Синтаксический анализ C++
3.3.3. Проблемы компоновки
3.3.4. Версии Cfront .
3.4. Возможности языка
3.5. Виртуальные функции
3.5.1. Модель размещения объекта в памяти
3.5.2. Замещение и поиск подходящей виртуальной функции
3.5.3. Сокрытие членов базового классо.
3.6. Перегрузка
3.6.1. Основы перегрузки.
3.6.2. Фуикции-члены и дружественные функции
3.6.3. Операторные функции
3.6.4. Перегрузка и эффективность
3.6.5. Изменение языко и новые операторы
3.7. Ссылки
3.7.1. Lvalue и Rvalue
3.8. Константы.
3.9. Управление памятью
3.10. Контрольтипов
3.11. Второстепенные возможности
3.11.1. Комментарии
3.11.2. Нотация для конструкторов
3.11.3. Квалификация.
3.11.4. Инициализация глобальных объектов
3.11.5. Предложения объявления
3.12. Языки С и C++.
3.13. Инструменты для проектирования языка
3.14. Книга «Язык программирования C++».
3.15. Статья «Whatis?»
Глава 4. Правила проектирования языка C++
4.1. Правила и принципы
4.2. Общие правила.
4.3. Правила поддержки проектирования,
4.4. Технические правила.,
4.5. Правила поддержки низкоуровневого программирования
4.6. Заключительное слово
Глава 5. Хронология 1985-1993 гг
5.1. Введение
5.2. Версия 2.0
5.2.1. Обзор возможностей.
5.3. Аннотированное справочное руководство.
5.3.1. Обзор ARM
5.4. Стандартизация ANSI и ISO
5.4.1. Обзор возможностей.
Глава 6. Стандартизация.
6.1. Что такое стандарт? .
6.1.1. Детоли реализации
6.1.2. Тест на реалистичность
6.2. Работа комитета.
6.2.1. Ктороботает в комитете
6.3. Как велась работа.
6.3.1. Разрешение имен
6.3.2. Бремя жизни объектов
6.4. Расширения.
6.4.1. Критерии рассмотрения предложений
6.4.2. Текущее состояние дел
6.4.3. Проблемы, связанные с полезными расширениями,
6.4.4. Логическая непротиворечивость,
6.5. Примеры предлагавшихся расширений,
6.5.1. Именованные аргументы,
6.5.2. Ограниченные указатели
6.5.3. Наборы символов.
Глава 7. Заинтересованность и использование.
7.1. Рост интереса к C++
7.1.1. Отсутствие маркетинго C++
7.1.2. Конференции.
7.1.3.Журналыикниги.
7.1.4. Компиляторы
7.1.5. Инструментальные средства и среды программирования
7.2. Преподавание и изучение C++ .
7.3. Пользователи и приложения
7.3.1. Первые пользователи
7.3.2. Сферы применения C++ .
7Л. Коммерческая конкуренция.
7.4.1. Традиционные языки
7.4.2. Современные языки.
7.4.3. Как выдержать конкуренцию.
Глава 8. Библиотеки
8.1. Введение.
8.2. Проектирование библиотеки C++
8.2.1. Альтернативы при проектировании библиотеки.
8.2.2. Языковые средства и построение библиотеки.
8.2.3. Как работать с разнооброзными библиотеками
8.3. Ранние библиотеки.
8.3.1. Библиотеке потокового ввода/вывода.
8.3.2. Поддержка параллельности
8.4. Другие библиотеки
8.4.1. Базовые библиотеки
8.4.2. Устойчивость и базы донных,
8.4.3. Библиотеки для численных расчетов
8.4.4. Специализированные библиотеки
8.5. Стандартная библиотека
Глава 9. Перспективы развития языка C++.
9.1. Введение.
9.2. Оценка пройденного пути.
9.2.1. Достигнуты ли основные цели C++? .
9.2.2. Является ли C++ логически последовательным языком?
9.2.3. Основная недоработка языка
9.3. Всего лишь мост?
9.3.1. Мост нужен надолго
9.3.2. Если C++ - это ответ, то на какой вопрос? .
9.4. Что может сделать C++ более эффективным
9.4.1. Стабильность и стандарты.
9.4.2. Обучение и приемы.
9.4.3. Системные вопросы.
9.4.4. За пределами файлов и синтаксисе
9.4.5. Подведение итогов и перспективы
Часть II
Глава 10. Управление памятью
10.1. Введение
10.2. Отделение распределения памяти и инициализации.
10.3. Выделение памяти для массива
10.4. Размещение объекта в памяти.,
10.5. Проблемы освобождения памяти.
10.5.1. Освобождение памяти для массивов
10.6. Нехватка памяти
10.7. Автоматическая сборка мусора
10.7.1. Необязательный сборщик мусора
10.7.2. Как должен выглядеть необязательный сборщик мусора?
Глава 11. Перегрузка
11.1. Введение
1 1.2. Разрешение перегрузки.
11.2.1. Детальное разрешение
11.2.2. Управление неоднозначностью
11.2.3. Нулевой указатель.
11.2.4. Ключевое слово overload
11.3.Типобезопасная компоновка
11.3.1. Перегрузка и компоновка
11.3.2. Реализация компоновки в C++ .
11.3.3. Анализ пройденного пути
11.4. Создание и копирование объектов
11.4.1. Контроль допустимости копирования.
11.4.2. Управление распределением памяти
11.4.3. Управление наследованием
11.4.4. Почленное копирование.
11.5. Удобство нотации.
11.5.1. «Умные» указатели.
11.5.2. «Умные» ссылки
1 1.5.3. Перегрузко операторов инкремента и декремента
11.5.4. Перегрузка->*
11.5.5. Перегрузка оператора «запятая»
11.6. Добавление в C++ операторов
11.6.1. Оператор возведения в степень
11.6.2. Операторы, определяемые пользователем.
11.6.3. Составные операторы.
11.7. Перечисления.
11.7.1 Перегрузка на базе перечислений
11.7.2.Тип Booleon
Глава 12. Множественное наследование.
12.1.Введение.
12.2. Базовые классы.
12.3. Виртуальные базовые классы.
12.3.1. Виртуальные базовые классы и виртуальные функции
12.4. Модель размещения объекта в памяти.
12.4.1. Размещение в памяти объекта виртуального базового класса
12.4.2. Виртуольные базовые классы и приведение типов.
12.5. Комбинирование методов.
12.6. Полемика о множественном наследовании
12.7. Делегирование
12.8. Переименование
12.9. Инициализаторы членов и базовых классов
Глава 13. Уточнения понятия класса
13.1 Введение
13.2. Абстрактные классы
13.2.1. Абстрактные классы и обработка ошибок
13.2.2. Абстрактные типы
13.2.3. Синтаксис.
13.2.4. Виртуальные функции и конструкторы.
13.3. Константные функции-члены
13.3.1. Игнорирование cons» при приведении типов
13.3.2. Уточнение определения const
13.3.3. Ключевое слово mutable и приведение типов.
13.4. Статические функции-члены.
13.5. Вложенные классы
13.6. Ключевое слово inherited
13.7. Ослабление правил замещения,
13.7.1. Ослабление правил аргументов,
13.8. Мультиметоды.,
13.8.1. Когда нетмультиметодов.
13.9. Защищенные члены
13.10. Улучшенная генерация кода
13.11. Указатели на функции-члены.
Глава 14. Приведение типов.
14.1. Крупные расширения
14.2. Идентификация типа во время исполнения
14.2.1. Зачем нужен механизм RTTI
14.2.2. Оператор dynamic_cast
14.2.3. Правильное и неправильное использование RTTI
14.2.4. Зачем давать «опасные средства» ,
14.2.5. Оператор typeid()
14.2.6. Модель размещения объекта в памяти,
14.2.7. Простой ввод/вывод объектов,
14.2.8. Другие варианты
14.3. Новая нотация для приведения типов
14.3.1. Недостатки старых приведений типов
14.3.2. Оператор static_cast .
14.3.3. Оператор reinterpret_cast ,
14.3.4. Оператор const_cast .
14.3.5. Преимущества новых приведений типов,
Глава 15. Шаблоны
15.1.Введение.
15.2. Зачем нужны шаблоны.
15.3. Шаблоны классов
15.3.1. Аргументы шаблонов, не являющиеся типами
15Л. Ограничения на аргументы шаблонов.
15.4.1. Ограничения за счет наследования.
15.4.2. Ограничения за счет использования
15.5. Устранение дублирования кода
15.6. Шаблоны функций
15.6.1. Выведение аргументов шаблона функции.
15.6.2. Задание аргументов шаблона функции.
15.6.3. Перегрузка шаблона функции
15.7. Синтаксис
15.8. Методы композиции
15.8.1. Представление стратегии реализации
15.8.2. Представление отношений порядка
15.9. Соотношения между шаблонами классов.
15.9.1. Отношения наследования
15.9.2. Преобразования
15.9.3. Шаблоны-члены.
15.10. Инстанцирование шаблонов
15.10.1. Явное инстанцирование.
15.10.2. Точка инстанциравания.
15.10.3. Специализация.
15.10.4. Нахождение определений шаблонов
15.11. Последствия введения шаблонов
15.11.1. Отделение реализации от интерфейса
15.11.2. Гибкость и эффективность
15.11.3. Влияние на другие компоненты C++ .
Глава 16. Обработка исключений
16.1.Введение
16.2. Цели и предположения
16.3. Синтаксис
16.4. Группировка.
16.5. Управление ресурсами
16.5.1. Ошибки в конструкторах
16.6. Возобновление или завершение?
16.6.1. Обходные пути для реализации возобновления.
16.7. Асинхронные события
16.8. Распространение на несколько уровней
16.9. Статическая проверка
16.9.1. Вопросы реализации.
16.10. Инварианты
Глава 17. Пространства имен
17.1.Введение
17.2. Для чего нужны пространства имен
17.2.1. Обходные пути
17.3. Какое решение было бы лучшим?
17.4. Решение: пространства имен.
17.4.1. Мнения по поводу пространств имен
17.4.2. Внедрение пространств имен
17.4.3. Псевдонимы пространства имен
17.4.4. Использование пространств имен для управления версиями
17.4.5. Технические детали
17.5. Классы и пространства имен
17.5.1. Производные классы.
17.5.2. Использование базовых классов.
17.5.3. Исключение глобальных статических объявлений
17.6. Совместимость с С
Глава 18. Препроцессор С
Алфавитный указатель.

Эволюционная теория познания [врождённые структуры познания в контексте биологии, психологии, лингвистики, философии и теории науки] Фоллмер Герхард

C УНИВЕРСАЛЬНАЯ ЭВОЛЮЦИЯ

C УНИВЕРСАЛЬНАЯ ЭВОЛЮЦИЯ

Недостаток исторического чувства - наследственная ошибка всех философов… Но всё находится в становлении; нет вечных фактов: как нет абсолютных истин. - Историческое философствование отныне поэтому необходимо и с ним добродетель скромности.

(Nietzsche, 1978, § 2)

Существуют научные дисциплины, которые включают время в сферу своего рассмотрения как нечто само собой разумеещееся: исторические науки. Так, историческое описание и историческая наука уже свыше 2000 лет занимаются событиями, которые переживали люди. Сходным образом палеонтология, археология или этимология с самого начала относятся к неповторяемым событиям и тем самым ко времени как к главному измерению их исследований.

Не так в других науках. Математика, физика и химия, а также психология и социология стремятся ведь формулировать свои положения именно так, чтобы они действовали повсюду и в любое время. Они находят законы, константы природы, инварианты, принципы сохранения. Биологическая систематика (Линней) видела свою цель в полном описании и упорядочении всех находимых растений и животных. Задача грамматики состояла в том, чтобы собрать и упорядочить все одновременно (синхронно) действующие правила языка.

Включение времени в контекст этих исследовательских областей, значительно расширяет их горизонт, силу их утверждений и когерентность. Кант и Лаплас в астрономии, Бюффон и Лайель в геологии создали первые значимые гипотезы о развитии планетной системы, соответственно, Земли. В биологии эволюционная мысль, благодаря Ламарку и Дарвину, привела к теории эволюции. Открытие закона звука (собственно, закона изменения звука, Раск 1818, Я.Гримм 1822) и историко-сравнительного метода открыло языкознанию, вместе с диахроническим способом рассмотрения, новое измерение.

Эволюционное мышление привело в большинстве случаев к новым взглядам. Для Линнеевской "Системы прирорды", из-за принятой константности видов, предикаты «похожий» и "родственный"(экстенсионал) были равнозначнывми. Сегодня они строго разделяются: родственые животные фактически имеют общего предка. Похожие животные - необязательно должны быть родственныи, а родственные необязательно похожими. Точно также в строении тела и поведении различают аналогичные и гомологичные признаки. Аналогичные структуры, случайно или в ходе приспособления к реальности, конвергировали (напр., глаза, стр.37); гомологичные структуры, напротив, сводятся к общему родоисторическому происхождению, являются родственными (напр., плавник, крыло, лапа, рука). Это различие действует также по отношению к культурным элементам, таким как письмо, символы. Также и языки бывают не только сходными, но родственными в генеалогическом смысле - они имеют даже целое "древо родства", разветвляютя и отмирают.

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

Так, заслуга Дарвина, вопреки распространённому мнению, состоит не в том, что он утверждал о развитии видов; до него это уже делали Эмпедокл, Бюффон, Ламарк, Е. Геоффрой Сент-Хилари и другие; в начале своего главного произведения "Происхождение видов", Дарвин перечисляет своих предшественников в "историческом обзоре о развитии воззрений на происхождение видов". То, чем мы обязаны Дарвину, есть открытие причин эволюции. Он первым выдвинул значимую и в сущности правильную теорию о факторах эволюции и обоснновал её с помощью огромного материала. Таким образом, он перевёл биологию из статической в динамическую стадию.

1. Универсальная историчность. - Историчность действительна объективно и субъективно как абсолютное беспокойство непрочности (Bestandslosigkeit) во времени. Она есть не простое исчезновение, в качестве которого предстают нам природные события, но в ней настоящее относится к

Глава VIII. Любовь как универсальная сила Итак, установлено, что никакая мораль - если под «моралью» понимается практическое подчинение закону, - не может оправдать существование субъекта: «Человек оправдывается не делами закона, а только верою в Иисуса Христа» (Гал.2,16).

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

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

2. Научное понятие и «банальные реальности».Индивидуальный объект и универсальная сущность Противопоставление изменчивых вещей устойчивым сущностям, понимание всеобщего как иной логической сферы, чем единичность, размещение этих предметов в различных плоскостях –

7.2 Универсальная структура актуальной

7.2.3. Универсальная модель структурного слоя В качестве мысленной модели внутренней организации отдельного универсального элемента структуры актуальной реальности (отдельный виток эволюционной спирали, структурный слой (тезис-синтез)) можно предложить круг с семью

6. Абсолютная и относительная, универсальная и социально-имманентная этика …Мы видим, что иногда какой-либо один объект действует на людей таким образом, что хотя он и не существует в наличности, однако они бывают уверены, что имеют его перед собой, и когда это случается с

§ 37. Время как универсальная форма всякого эгологического генезиса Сущностные законы совместимости (правила одновременного и последовательного фактического существования и возможности такого существования) являются в наиболее широком смысле законами каузальности -

6. АБСОЛЮТНАЯ И ОТНОСИТЕЛЬНАЯ, УНИВЕРСАЛЬНАЯ И СОЦИАЛЬНО ИММАНЕНТНАЯ ЭТИКА В самом деле, мы видим, что иногда какой-либо один объект действует на людей таким образом, что хотя он и не существует в наличности, однако они бывают уверены, что имеют его перед собой, и когда это

6. Абсолютная в противовес относительной, универсальная в противовес социально имманентной этике В самом деле, мы видим, что иногда какой-либо один объект действует на людей таким образом, что, хотя он и не существует в наличности, однако они бывают уверены, что имеют его

Универсальная машина Тьюринга Я еще не затрагивал понятия универсальной машины Тьюринга. Лежащий в ее основе принцип понять нетрудно, хотя детали могут быть сложны. Основная идея состоит в том, чтобы закодировать команды для произвольной машины Тьюринга Т в виде

Глава 6 Этапы эволюционных преобразований. Коэффициент социальной защиты. Живая клетка. Органы и системы организма. Животные и мозг. Эволюция прародителя и эволюция человека Не такого зла, которое не порождало бы добра. Франсуа Вольтер «Гипотезы – это леса, которые

Глава 7 Потенциал энергий. Эволюция прародителя человека. Социальный характер жизнедеятельности вида. Эволюция человека. Умственные и мыслительные качества и способности Человек – не эволюционная «случайность» и тем более не «ошибка эволюции». Магистральный путь

Новое на сайте

>

Самое популярное