text:
# Active Oberon
Active Oberon — типобезпечна модульна об'єктно-орієнтована багатопотокова мова програмування загального призначення, яку розробила в 1996—1997 роках група професора Гуткнехта у Швейцарській вищій технічній школі Цюриха (ETHZ) з метою введення в мову Оберон властивостей для вираження паралелізму за допомогою активних об'єктів.

## Особливості мови
Назва Active Oberon відбиває основну концепцію мови — концепцію активних об'єктів, виражену в реалізації багатопотоковості та механізмів синхронізації на рівні мови.
Active Oberon розширює мову Оберон, вводячи поняття об'єкт (Object) та активність (Activity), пов'язана з об'єктом. Такий зв'язок називають активним об'єктом (Active Object), що означає здатність примірника об'єкта мати активність — власний потік виконання.
Мова належить до модульних типобезпечних мов програмування зі сильною статичною типізацією, допускаючи у виразах неявне зведення скалярних типів без втрати даних (наприклад, використання цілого числа там, де передбачалося використання числа з рухомою комою).
Модулі забезпечують не тільки розділену компіляцію, інкапсуляцію, але й можливість реалізації динамічного завантаження/вивантаження скомпільованих (об'єктних) модулів, що використовується, наприклад, у операційній системі A2, написаній цією мовою. Певною мірою, аналогом модуля можна вважати динамічно приєднувану бібліотеку.
В Active Oberon, як і в інших спадкоємцях Модули-2 при зверненні до сутностей приєднаного (імпортованого) модуля потрібно обов'язково кваліфікувати приєднаний модуль. Наприклад, якщо модуль A приєднує модуль B і використовує змінну цього модуля, то звернення до змінної повинне мати форму B.v. Інакше кажучи, імпорт не дозволяє за замовчанням імпортувати з приєднаного модуля всі сутності, які він експортує.
Інкапсуляція побудована на концепції модуля — всі типи, оголошені в модулі, повністю прозорі один для о́дного, а для доступу зовнішніх клієнтів потрібні специфікатори доступу. Специфікатори доступу дозволяють експортувати сутності або з повним доступом (ідентифікатор позначається знаком «*» (зірочка)), або з доступом «тільки для читання» (ідентифікатор позначається знаком «-» (мінус)). Наприклад, конструкція:
```
VAR

Example2

:

PROCEDURE

{
REALTIME
,

C
}

(

VAR

low
,

high
:

LONGINT

):

BOOLEAN
;

```

визначає тип запису (RECORD) Example1, експортований за межі модуля, що має три поля з типом «довге ціле», причому поле «x» оголошено зі специфікатором доступу «повний доступ», поле «y» — зі специфікатором «доступ тільки для читання» і поле z є прихованим полем, недоступним зовнішнім клієнтам.
Мова підтримує поліморфізм, перевантаження операцій (для структурних типів), делегати, сумісні як із методами, так і з процедурами. Об'єктними типами є RECORD і посилальний тип OBJECT. Вони можуть мати методи та операції. У типу OBJECT можуть бути тіло та активність. Усі методи є віртуальними. Множинне успадкування відсутнє, замість нього використовують концепцію множинного успадкування інтерфейсів (DEFINITION у термінах мови).

### Синтаксис та семантика
Синтаксис мови в процесі розвитку практично не змінюється — розробники воліють уточнювати семантику вже наявних синтаксичних конструкцій за допомогою введення семантичних модифікаторів, що дозволяє виключити значний обсяг змін при введенні нової функціональності, спростити компілятор, зробивши його код доступнішим для розуміння і модифікації, а також забезпечити легкість вивчення та використання мови. Модифікатори беруть у фігурні дужки {} після імені змінної, типу чи ключового слова. Наприклад, конструкція:
```
VAR

Example2

:

PROCEDURE

{
REALTIME
,

C
}

(

VAR

low
,

high
:

LONGINT

):

BOOLEAN
;

```

оголошує процедурну змінну Example2, що вказує на процедуру реального часу, з домовленістю про виклик CCALL, яка приймає два параметри типу довге ціле і повертає значення логічного типу.
Опис об'єкта, в цілому, відповідає опису модуля, за винятком синтаксису заголовка та відсутності секції IMPORT. Методи повністю описуються всередині опису об'єкта, операції, за рідкісним винятком, можуть описуватися поза тілом об'єкта. Об'єкт може мати довільну кількість ініціалізаторів і не більше одного фіналізатора. Вбудована процедура NEW, що використовується для створення змінних посилального типу, викликає ініціалізатор, який компілятор вибирає за сигнатурою параметрів. Ініціалізатор позначають символом & перед назвою методу. Фіналізатор — метод без параметрів, перед іменем якого стоїть знак ~, — автоматично викликається для утилізації об'єкта.
Послідовність операторів, укладену в операторні дужки BEGIN END, називають блоком операторів. Блок операторів також може містити список модифікаторів та секцію гарантованого завершення (FINALLY).

Змінну, а також поле запису або об'єкта, можна ініціалізувати константним виразом при оголошенні:
```
TYPE

Point

=

RECORD

x

:=

0
,

y

:=

0

:

LONGINT
;

END
;

VAR

i

:=

0
,

j

:=

10
,

k

:=

100

:

INTEGER
;

Point

:

Point
;

(* поля x, y запису ініціалізовано значенням 0 *)

```

### Типи даних
Мова пропонує багатий набір вбудованих типів:
- Базові типи
  - логічний: BOOLEAN;
  - символьні: CHAR8, CHAR16, CHAR32 та псевдонім CHAR для типового символьного типу;
  - цілочисельні знакові: SIGNED8, SIGNED16, SIGNED32, SIGNED64 та псевдоніми SMALLINT, INTEGER, LONGINT, HUGEINT;
  - цілочисельні беззнакові: UNSIGNED8, UNSIGNED16, UNSIGNED32, UNSIGNED64;
  - дійсні: REAL, LONGREAL;
  - комплексні: COMPLEX, LONGCOMPLEX;
  - машинозалежні: SIZE, ADDRESS;
  - множини: SET, SET8, SET16, SET32, SET64;
  - розширювані переліки: ENUM;
- структурні
  - масиви: ARRAY — статичні, динамічні, відкриті, математичні;
  - розширювані структури: RECORD;
  - об'єктні: OBJECT;
- Спеціальні
  - процедурні;
  - делегати[en]: процедурні змінні, сумісні як із процедурами, і з методами;
  - типізовані вказівники на структурні типи;
  - узагальнені вказівники: ANY, OBJECT, ARRAY;
- системні: SYSTEM.BYTE

### Багатопотоковість
В Active Oberon реалізовано дві моделі багатопотоковості, засновані на роботах Брінча Гансена та Тоні Гоара:
- Витискальна багатопотоковість, з блокувальною синхронізацією[2];
- Кооперативна багатопоточність, з неблокувальною (lock-free) синхронізацією[3]. Компілятор у певних місцях автоматично генерує код перемикання потоків. У цьому разі активності (потоки), фактично, є співпрограмами. Середовище виконання надає можливість ручного перемикання на необхідну активність.

Сирцевий код, написаний з використанням синтаксису блокувальних примітивів синхронізації мови Active Oberon, можна використовувати для обох моделей багатопотоковості — компілятор генеруватиме код, потрібний для конкретної моделі. За такого підходу немає потреби у переписуванні програмного забезпечення під різні моделі. Лише невеликі ділянки сирцевого коду вимагають адаптації (наприклад, обробка переривань), щоб придушити автоматичне генерування перемикань у цій ділянці машинного коду. Для цього блок операторів позначають модифікатором {UNCOOPERATIVE}.

#### Активні об'єкти
Потік інкапсульовано в об'єкті і, як його невід'ємна частина, він створюється в момент інстанціювання активного об'єкта. Для вказівки на активність об'єкта його тіло позначають модифікатором ACTIVE.
Після розміщення примірника об'єкта виконується ініціалізатор (якщо є), потім тіло об'єкта (якщо є). Якщо об'єкт позначено активним, створюється активність, у якій асинхронно виконується тіло об'єкта, в іншому разі виконання відбувається синхронно в потоці, в якому створено примірник.
Активність об'єкта завершується після виконання тіла об'єкта. Поки виконується тіло, об'єкт продовжує існувати, навіть якщо на нього немає посилань. Після цього об'єкт стає пасивним і може бути утилізований відповідно до звичайних правил.

Приклад опису та використання активного об'єкта:
```
MODULE

Example3
;

TYPE

ActiveObject

=

OBJECT

VAR

state

:

SET
;

PROCEDURE

&
New
;

BEGIN

state

:=

{};

END

New
;

PROCEDURE

&
Init
*
(

state

:

SET

);

BEGIN

SELF
.
state

:=

state
;

END

Init
;

PROCEDURE

~
Finalize
;

BEGIN

...

END

Finalize
;

BEGIN

{
ACTIVE
}

...

END

ActiveObject
;

VAR

object

:

ActiveObject
;

BEGIN

NEW
(

object

);

object
.
Init
(

{
0
..
7
,

9
,

12
,

30
..
31
}

);

NEW
(

object
,

{}

);

END

Example3
.

```

#### Міжпроцесова взаємодія
Виклики методів спільно використовуваних активних та неактивних об'єктів діють як комунікаційний механізм між активними об'єктами. Оскільки активні об'єкти існують у багатопотоковому середовищі, надається механізм для координування паралельного доступу до їхнього стану. Взаємодія через обмін повідомленнями може здійснюватися з використанням спеціальних програмних каркасів.

#### Захист від одночасного виконання
Блок операторів, позначений модифікатором EXCLUSIVE, називають монопольною ділянкою (exclusive region). Монопольна ділянка в Active Oberon відповідає концепції критичної ділянки Гансена. Якщо монопольна ділянка охоплює все тіло методу, його називають монопольним методом (exclusive method) і він поєднує концепцію Гансена з процедурою монітора Гоара. На відміну від процедури монітора, метод об'єкта може бути монопольним — у такому разі він може спостерігати неузгоджені стани об'єкта. У монопольній ділянці може бути не більше однієї активності одночасно.
Таким чином, модель захисту в Active Oberon — монітор, розміщений у примірнику об'єкта (instance-based monitor). Модуль вважають об'єктним типом з єдиним примірником (singleton instance) і його процедури теж можуть бути монопольними, захищаючи модуль загалом.
Головна ідея монітора (і активного об'єкта) у тому, що з монітором пов'язується якийсь інваріант — вираз, що визначає несуперечливий внутрішній стан об'єкта і доводить правильність його поведінки. Ініціалізатори та монопольні методи є інструментами, які мова надає для підтримки інваріантів об'єкта та приховування його внутрішнього стану. Ініціалізатор об'єкта встановлює його інваріант, а монопольні методи його підтримують. Коли поняття монітора об'єднано з поняттям модуля, формується потужний механізм для структурування операційних систем.

Приклад використання монопольної секції:
```
(* Процедури Set і Reset взаємно виключені *)

TYPE

MyContainer

=

OBJECT

VAR

x
,

y
:

LONGINT
;

(* Інваріант: y = f(x) *)

PROCEDURE

Set
(
x
:

LONGINT
);

BEGIN

{
EXCLUSIVE
}

(* змінення x та y атомарно *)

SELF
.
x

:=

x
;

y

:=

f
(
x
)

END

Set
;

PROCEDURE

Reset
;

BEGIN

...

BEGIN

{
EXCLUSIVE
}

(* змінення x та y атомарно *)

x

:=

x0
;

y

:=

y0
;

END
;

....

END

Reset
;

END

MyContainer
;

```

#### Синхронізація
На відміну від більшості реалізацій моніторів, що використовують для синхронізації умовні змінні Гоара (на основі черг подій Брінча Гансена), синхронізацію активностей забезпечує оператор AWAIT, що приймає як аргумент логічний вираз — умову продовження виконання програми в тілі об'єкта. Щоб гарантувати правильність синхронізації, AWAIT має міститись у монопольній ділянці. У разі невиконання умови продовження AWAIT призупиняє (suspend) активність і, якщо міститься в монопольній ділянці, відпускає захоплену ділянку на час припинення, що дозволяє іншим активностям змінити стан об'єкта і зробити умову продовження істинною. Зупинена активність продовжить роботу лише в тому разі, якщо зможе повторно увійти до монопольної ділянки.

Приклад синхронізації всередині розділюваного буфера:
```
TYPE

Synchronizer

=

OBJECT

VAR

awake
:

BOOLEAN

PROCEDURE

Wait
;

BEGIN

{
EXCLUSIVE
}

AWAIT
(
awake
);

awake

:=

FALSE
;

END

Wait
;

PROCEDURE

WakeUp
;

BEGIN

{
EXCLUSIVE
}

awake

:=

TRUE
;

END

WakeUp
;

END

Synchronizer
;

```

### Обробка помилок та виняткових ситуацій
В Active Oberon відсутні засоби структурної обробки виняткових ситуацій — їх обробляє централізоване середовище часу виконання.
Оператор ASSERT приймає як обов'язковий аргумент логічний вираз, у разі порушення якого відбувається переривання програми і, як і при виконанні оператора безумовної зупинки HALT, керування передається в централізований обробник винятків. Якщо умову оператора ASSERT можна обчислити на етапі компіляції, то, в разі невиконання умови, генерується помилка компіляції. Оператор ASSERT і HALT можуть мати необов'язковий параметр — специфікатор винятку, який можна проаналізувати в обробнику.
Після обробки винятку керування передається в найближчу за стеком викликів секцію гарантованого завершення FINALLY, якщо вона є. Потім, якщо тіло активного об'єкта позначено модифікатором SAFE, активність буде перезапущено, інакше її робота завершується.

## Середовище часу виконання

### Інформація про типи часу виконання
Тільки структурні типи (масиви, записи, об'єкти) мають інформацію про типи часу виконання (метаінформацію). Метаінформація зберігається у спеціальній структурі, званій дескриптором типу. Дескриптор типу містить дані про типи та назви змінних і полів, таблицю успадкування, таблицю віртуальних методів та таблиці реалізованих інтерфейсів.

### Керування пам'яттю
В Active Oberon застосовується автоматичне керування пам'яттю з використанням переривного (витискального) збирача сміття реального часу, заснованого на методі позначок (Mark and Sweep). Збирач сміття виконується в окремому потоці, і активності (потоки), з вищим пріоритетом, ніж пріоритет активності збирача сміття, можуть призупинити його виконання. При цьому дерево об'єктів заморожується. На даний момент тільки сутності реального часу можуть переривати активність збирача сміття, в них заборонено динамічне виділення пам'яті, за цим стежить компілятор.
Керування пам'яттю ґрунтується на використанні типізованих ділянок пам'яті. Така ділянка зберігає вказівник на дескриптор типу. Використовуючи інформацію про типи часу виконання, розміщену в дескрипторі типу, збирач сміття знаходить змінні і поля посилального типу і позначає блоки, на які вони вказують. Іншими словами, збирачеві сміття немає необхідності перевіряти кожне значення, схоже на вказівник, чи воно є коректним вказівником у купі — використовуючи інформацію, яку надає дескриптор типу, він точно знає, які елементи обробляти, що істотно збільшує швидкість і точність роботи і знижує навантаження на процес збирання сміття. Для прискорення виділення пам'яті вільні ділянки поміщаються в списки вільних блоків, які містять блоки пам'яті певних розмірів.
Змінні посилального типу, позначені модифікатором UNTRACED належать до нетрасованих вказівників. Такі вказівники не відстежує збирач сміття і ділянки пам'яті, на які вони посилаються, можуть бути утилізовані в будь-який момент часу, в разі, якщо їх виділило середовище часу виконання та на них немає досяжних посилань, які враховує збирач сміття. Часто такі модифікатори використовують для роботи з ділянками пам'яті, виділеними поза середовищем часу виконання Active Oberon, або з небезпечними вказівниками.

### Керування активністю об'єктів
Середовище часу виконання відповідає за розподіл процесорного часу, гарантує (разом з компілятором), що в монопольній ділянці міститься не більше однієї активності, забезпечує своєчасну перевірку умов оператора AWAIT і відновлення роботи призупинених активностей. Вирази умов продовження всередині об'єкта перераховуються в усіх точках виходу з монопольних ділянок. Це означає, що зміна стану об'єкта поза монопольною ділянкою не призводить до перерахунку умов. Коли кілька активностей змагаються за ту саму монопольну ділянку, то активності з виконаними умовами розглядаються раніше від тих, які тільки хочуть увійти в захищену ділянку.

### Підключення та ініціалізація модулів
В Active Oberon відсутні засоби для прямого керування динамічним завантаженням та вивантаженням модулів. Мова пропонує лише секцію імпорту (IMPORT), у якій вказано список модулів, що підключаються, і секцію ініціалізації модуля. Середовище часу виконання має забезпечити підключення та ініціалізацію модулів до ініціалізації поточного модуля. Динамічне підключення модуля здійснюється через механізм динамічного зв'язування. Модуль не можна вивантажити доти, доки на нього є посилання зі списку підключення іншого завантаженого модуля. Таким чином, щоб унеможливити проблему циклічних посилань, модулі слід вивантажувати в порядку, зворотному до порядку завантаження.

### Обробка помилок та виняткових ситуацій
Модуль Traps забезпечує централізовану обробку виняткових ситуацій. Параметри, які приймають оператори ASSERT і HALT, можуть використовуватися для класифікації виняткової ситуації.
Після обробки виняткової ситуації в модулі Traps середовище часу виконання здійснює пошук секцій гарантованого завершення FINALLY та передає на них керування для виконання завершальних операцій.
У випадку, якщо активність позначена модифікатором SAFE і в тілі об'єкта відсутня секція FINALLY, відбувається перезапуск активності, інакше виконання активності завершується.
Програмний інтерфейс середовища виконання надає можливість встановлення власного обробника виняткових ситуацій.

## Приклади програм

### Hello, World!
```
MODULE

HelloWorld
;

IMPORT

KernelLog
;

BEGIN

KernelLog
.
String
(

"Hello, World!"

);

END

HelloWorld
.

```

### Розв'язок класичної задачі постачальника та споживача
```
MODULE

BoundedBuffers
;

TYPE

Item
*

=

OBJECT
;

Buffer
*

=

OBJECT

VAR

h
,

n
:

INTEGER
;

B
:

ARRAY

*

OF

Item
;

PROCEDURE

Get
*
():

Item
;

VAR

x
:

Item
;

BEGIN

{
EXCLUSIVE
}

AWAIT
(
n

#

0
);

(* буфер не порожній *)

x

:=

B
[
h
];

h

:=

(
h
+
1
)

MOD

LEN
(
B
);

DEC
(
n
);

RETURN

x

END

Get
;

PROCEDURE

Put
*
(
x
:

Item
);

BEGIN

{
EXCLUSIVE
}

AWAIT
(
n

#

LEN
(
B
));

(* буфер не повний *)

B
[(
h
+
n
)

MOD

LEN
(
B
)]

:=

x
;

INC
(
n
)

END

Put
;

PROCEDURE

&
Init
(
max
:

INTEGER
);

BEGIN

(* ініціалізатор *)

NEW
(
B
,

max
);

h

:=

0
;

n

:=

0

END

Init
;

END

Buffer
;

END

BoundedBuffers
.

```

title: Active Oberon

wikitext:
{{Мова програмування}}

'''Active Oberon''' — [[Типобезпечність|типобезпечна]] [[Модульне програмування|модульна]] [[Об'єктно-орієнтоване програмування|об'єктно-орієнтована]] [[Рівночасні обчислення|багатопотокова]] [[мова програмування]] загального призначення, яку розробила в 1996—1997 роках група професора {{Не перекладено|Юрг Гуткнехт|Гуткнехта|de|Jürg Gutknecht}} у [[Федеральна вища технічна школа Цюриха|Швейцарській вищій технічній школі Цюриха (ETHZ)]] з метою введення в мову [[Оберон (мова програмування)|Оберон]] властивостей для вираження паралелізму за допомогою [[Активний об'єкт|активних об'єктів]]<ref name=":2">J. Gutknecht. Do the Fish Really Need Remote Control? A Proposal for Self-Active Objects in Oberon., 1997.</ref>.

== Особливості мови ==
Назва Active Oberon відбиває основну концепцію мови — концепцію ''активних об'єктів'', виражену в реалізації багатопотоковості та механізмів синхронізації на рівні мови.

Active Oberon розширює мову [[Оберон (мова програмування)|Оберон]], вводячи поняття ''[[Об'єкт (програмування)|об'єкт (Object)]]'' та ''активність (Activity)'', пов'язана з об'єктом. Такий зв'язок називають ''активним об'єктом (Active Object)'', що означає здатність [[Об'єкт (програмування)|примірника об'єкта]] мати активність — власний потік виконання<ref name=":2"/>.

Мова належить до [[Модульне програмування|модульних]] [[Типобезпечність|типобезпечних]] мов програмування зі [[Сильна і слабка типізація|сильною]] [[Статична типізація|статичною типізацією]], допускаючи у виразах неявне зведення скалярних типів без втрати даних (наприклад, використання цілого числа там, де передбачалося використання [[Число з рухомою комою|числа з рухомою комою]]).

Модулі забезпечують не тільки [[Компілятор|розділену компіляцію]], [[Інкапсуляція (програмування)|інкапсуляцію]], але й можливість реалізації динамічного завантаження/вивантаження скомпільованих (об'єктних) модулів, що використовується, наприклад, у операційній системі [[A2 (операційна система)|A2]], написаній цією мовою. Певною мірою, аналогом модуля можна вважати [[Dynamic-link library|динамічно приєднувану бібліотеку]].

В Active Oberon, як і в інших спадкоємцях [[Модула-2|Модули-2]] при зверненні до сутностей приєднаного (імпортованого) модуля потрібно обов'язково кваліфікувати приєднаний модуль. Наприклад, якщо модуль ''A'' приєднує модуль ''B'' і використовує ''змінну'' цього модуля, то звернення до змінної повинне мати форму ''B.v''. Інакше кажучи, імпорт не дозволяє за замовчанням імпортувати з приєднаного модуля всі сутності, які він експортує.

[[Інкапсуляція (програмування)|Інкапсуляція]] побудована на концепції модуля — всі типи, оголошені в модулі, повністю прозорі один для о́дного, а для доступу зовнішніх клієнтів потрібні ''специфікатори доступу''. Специфікатори доступу дозволяють експортувати сутності або з повним доступом (ідентифікатор позначається знаком «*» (зірочка)), або з доступом «тільки для читання» (ідентифікатор позначається знаком «-» (мінус)). Наприклад, конструкція:<source lang="oberon2">
VAR
 Example2 : PROCEDURE {REALTIME, C} ( VAR low, high: LONGINT ): BOOLEAN;
</source>визначає тип запису (RECORD) ''Example1'', експортований за межі модуля, що має три поля з типом «довге ціле», причому поле «''x''» оголошено зі специфікатором доступу «повний доступ», поле «''y''» — зі специфікатором «доступ тільки для читання» і поле ''z'' є прихованим полем, недоступним зовнішнім клієнтам.

Мова підтримує [[Поліморфізм (програмування)|поліморфізм]], [[Перевантаження операторів|перевантаження операцій]] (для структурних типів), [[Делегат (програмування)|делегати]], сумісні як із методами, так і з процедурами. Об'єктними типами є '''RECORD''' і посилальний тип '''OBJECT'''. Вони можуть мати методи та операції. У типу '''OBJECT''' можуть бути тіло та активність. Усі методи є [[Віртуальний метод|віртуальними]]. [[Множинне успадкування]] відсутнє, замість нього використовують концепцію [[Інтерфейс (об'єктно-орієнтоване програмування)|множинного успадкування інтерфейсів]] (''DEFINITION'' у термінах мови).

=== Синтаксис та семантика ===
[[Синтаксис|Синтаксис мови]] в процесі розвитку практично не змінюється — розробники воліють уточнювати [[Семантика|семантику]] вже наявних синтаксичних конструкцій за допомогою введення ''семантичних модифікаторів'', що дозволяє виключити значний обсяг змін при введенні нової функціональності, спростити компілятор, зробивши його код доступнішим для розуміння і модифікації, а також забезпечити легкість вивчення та використання мови. Модифікатори беруть у фігурні дужки {} після імені змінної, типу чи ключового слова. Наприклад, конструкція:<source lang="oberon2">
VAR
 Example2 : PROCEDURE {REALTIME, C} ( VAR low, high: LONGINT ): BOOLEAN;
</source>оголошує процедурну змінну ''Example2'', що вказує на процедуру реального часу, з домовленістю про виклик CCALL, яка приймає два параметри типу довге ціле і повертає значення логічного типу.

Опис об'єкта, в цілому, відповідає [[Оберон (мова програмування)|опису модуля]], за винятком синтаксису заголовка та відсутності секції '''IMPORT'''. Методи повністю описуються всередині опису об'єкта, операції, за рідкісним винятком, можуть описуватися поза тілом об'єкта. Об'єкт може мати довільну кількість [[ініціалізатор]]ів і не більше одного [[фіналізатор]]а. Вбудована процедура '''NEW''', що використовується для створення змінних посилального типу, викликає ініціалізатор, який компілятор вибирає за сигнатурою параметрів. Ініціалізатор позначають символом ''&'' перед назвою методу. Фіналізатор — метод без параметрів, перед іменем якого стоїть знак ''~'', — автоматично викликається для утилізації об'єкта.

Послідовність операторів, укладену в операторні дужки '''BEGIN END''', називають ''блоком операторів''. Блок операторів також може містити список модифікаторів та [[Обробка винятків|секцію гарантованого завершення]] ('''FINALLY''').

Змінну, а також поле запису або об'єкта, можна ініціалізувати константним виразом при оголошенні:<syntaxhighlight lang="modula2">
TYPE
  Point = RECORD
    x := 0,
    y := 0 : LONGINT;
  END;

VAR
  i := 0, j := 10, k := 100 : INTEGER;
  Point : Point; (* поля x, y запису ініціалізовано значенням 0 *)
</syntaxhighlight>

=== Типи даних ===
Мова пропонує багатий набір вбудованих типів:

* Базові типи
** [[Логічний тип даних|логічний]]: '''BOOLEAN''';
** [[Символьний тип даних|символьні]]: '''CHAR8''', '''CHAR16''', '''CHAR32''' та псевдонім '''CHAR''' для типового символьного типу;
** [[Ціле число (тип даних)#Цілі зі знаком|цілочисельні знакові]]: '''SIGNED8''', '''SIGNED16''', '''SIGNED32''', '''SIGNED64''' та псевдоніми '''SMALLINT''', '''INTEGER''', '''LONGINT''', '''HUGEINT''';
** [[Ціле число (тип даних)#Беззнакові цілі|цілочисельні беззнакові]]: '''UNSIGNED8''', '''UNSIGNED16''', '''UNSIGNED32''', '''UNSIGNED64''';
** [[Число з рухомою комою|дійсні]]: '''REAL''', '''LONGREAL''';
** комплексні: '''COMPLEX''', '''LONGCOMPLEX''';
** машинозалежні: '''SIZE''', '''ADDRESS''';
** [[Множина (тип даних)|множини]]: '''SET, SET8, SET16, SET32, SET64''';
** розширювані [[Перелічуваний тип даних|переліки]]: '''ENUM''';
* [[Структура даних|структурні]]
** [[Масив (структура даних)|масиви]]: '''ARRAY''' — статичні, [[Динамічний масив|динамічні]], відкриті, математичні;
** розширювані [[Структура (тип даних)|структури]]: '''RECORD''';
** [[Об'єкт (програмування)|об'єктні]]: '''OBJECT''';
* Спеціальні
** процедурні;
** {{Нп|Делегат (програмування)|делегати|en|Delegate (CLI)}}: процедурні змінні, сумісні як із [[Підпрограма|процедурами]], і з [[Метод (програмування)|методами]];
** типізовані [[вказівник]]и на структурні типи;
** узагальнені вказівники: '''ANY''', '''OBJECT''', '''ARRAY''';
* системні: '''SYSTEM.BYTE'''

=== Багатопотоковість ===
В Active Oberon реалізовано дві моделі багатопотоковості, засновані на роботах Брінча Гансена та Тоні Гоара<ref name=":3">P.J. Muller. Active Object System. Design and Multiprocessor Implementation. — ETH Zurich, 2002., Diss. ETH № 14755.</ref>:

* [[Витискальна багатозадачність|Витискальна багатопотоковість,]] з блокувальною синхронізацією<ref name=":3"/>;
* [[Кооперативна багатозадачність|Кооперативна багатопоточність]], з [[Неблокуючий алгоритм|неблокувальною (lock-free) синхронізацією]]<ref>Florian Negele. Combining Lock-Free Programming with Cooperative Multitasking for a Portable Multiprocessor Runtime System, ETH Zurich, 2014, Diss. ETH №. 22298</ref>. Компілятор у певних місцях автоматично генерує код перемикання потоків. У цьому разі активності (потоки), фактично, є співпрограмами. Середовище виконання надає можливість ручного перемикання на необхідну активність.

[[Початковий код|Сирцевий код]], написаний з використанням синтаксису блокувальних примітивів синхронізації мови Active Oberon, можна використовувати для обох моделей багатопотоковості — компілятор генеруватиме код, потрібний для конкретної моделі. За такого підходу немає потреби у переписуванні програмного забезпечення під різні моделі. Лише невеликі ділянки сирцевого коду вимагають адаптації (наприклад, [[Переривання|обробка переривань]]), щоб придушити автоматичне генерування перемикань у цій ділянці [[Машинний код|машинного коду]]. Для цього блок операторів позначають модифікатором '''{UNCOOPERATIVE}'''.

==== Активні об'єкти ====
Потік [[Інкапсуляція (програмування)|інкапсульовано]] в об'єкті і, як його невід'ємна частина, він створюється в момент [[Об'єкт (програмування)|інстанціювання]] активного об'єкта. Для вказівки на активність об'єкта його тіло позначають модифікатором '''ACTIVE'''.

Після розміщення [[Об'єкт (програмування)|примірника об'єкта]] виконується ініціалізатор (якщо є), потім тіло об'єкта (якщо є). Якщо об'єкт позначено активним, створюється активність, у якій асинхронно виконується тіло об'єкта, в іншому разі виконання відбувається синхронно в потоці, в якому створено примірник.

Активність об'єкта завершується після виконання тіла об'єкта. Поки виконується тіло, об'єкт продовжує існувати, навіть якщо на нього немає посилань. Після цього об'єкт стає пасивним і може бути утилізований відповідно до звичайних правил.

Приклад опису та використання активного об'єкта:<source lang="oberon2" line="1">
MODULE Example3;

TYPE
 ActiveObject = OBJECT
 VAR state : SET;

  PROCEDURE &New;
  BEGIN
   state := {};
  END New;

  PROCEDURE &Init*( state : SET );
  BEGIN
   SELF.state := state;
  END Init;

  PROCEDURE ~Finalize;
  BEGIN
  ...
  END Finalize;

 BEGIN {ACTIVE}
  ...
 END ActiveObject;

VAR
 object : ActiveObject;

BEGIN
 NEW( object );
 object.Init( {0..7, 9, 12, 30..31} );
 NEW( object, {} );
END Example3.
</source>

==== Міжпроцесова взаємодія ====
Виклики методів спільно використовуваних активних та неактивних об'єктів діють як [[Взаємодія між процесами|комунікаційний механізм]] між активними об'єктами. Оскільки активні об'єкти існують у багатопотоковому середовищі, надається механізм для координування паралельного доступу до їхнього стану. Взаємодія через обмін повідомленнями може здійснюватися з використанням спеціальних [[Програмний каркас|програмних каркасів]]<ref>Florian Negele. A2 Concurrency Framework, ETH Zurich, June 3, 2009</ref>.

==== Захист від одночасного виконання ====
Блок операторів, позначений модифікатором '''EXCLUSIVE''', називають ''монопольною ділянкою (exclusive region)''. ''Монопольна ділянка'' в Active Oberon відповідає концепції ''критичної ділянки Гансена''<ref name=":0">P. Brinch Hansen. Structured Multiprogramming. Communications of the ACM, 15(7), July 1972</ref>. Якщо монопольна ділянка охоплює все тіло методу, його називають ''монопольним методом'' (''exclusive method'') і він поєднує концепцію Гансена з ''процедурою [[Монітор (синхронізація)|монітора]] [[Тоні Гоар|Гоара]]''<ref>P. Brinch Hansen. Operating System Principles. Prentice-Hall, 1973.</ref><ref name=":1">C.A.R. Hoare. Monitors: An Operating System Structuring Concept. Communications of the ACM, 17(10):549-557, October 1974.</ref>. На відміну від процедури монітора, метод об'єкта може бути монопольним — у такому разі він може спостерігати неузгоджені стани об'єкта. У монопольній ділянці може бути не більше однієї активності одночасно.

Таким чином, модель захисту в Active Oberon — ''монітор, розміщений у примірнику об'єкта (instance-based monitor)''. Модуль вважають об'єктним типом з єдиним примірником (''singleton instance'') і його процедури теж можуть бути монопольними, захищаючи модуль загалом.

Головна ідея монітора (і активного об'єкта) у тому, що з монітором пов'язується якийсь ''інваріант'' — вираз, що визначає несуперечливий внутрішній стан об'єкта і доводить правильність його поведінки<ref>O. J. Dahl. Monitors Revisited. In A.W. Roscoe, editor, A Classical Mind — Essays in Honour of C.A.R. Hoare. Prentice-Hall,<br/>
1994.</ref>. Ініціалізатори та монопольні методи є інструментами, які мова надає для підтримки інваріантів об'єкта та приховування його внутрішнього стану. Ініціалізатор об'єкта встановлює його інваріант, а монопольні методи його підтримують. Коли поняття монітора об'єднано з поняттям модуля, формується потужний механізм для структурування операційних систем<ref>J.L. Keedy. On Structuring Operating Systems With Monitors. ACM Operating Systems Review, 13(1), January 1979.</ref><ref>N. Wirth. Modula: A Language for Modular Multiprogramming. Software — Practice and Experience, 7:3-35, 1977.</ref><ref>N. Wirth. The Use of Modula. Software — Practice and Experience, 7:37-65, 1977.</ref>.

Приклад використання монопольної секції:<source lang="oberon2" line="1">
(* Процедури Set і Reset взаємно виключені *)
TYPE
 MyContainer = OBJECT
  VAR x, y: LONGINT; (* Інваріант: y = f(x) *)

  PROCEDURE Set(x: LONGINT);
  BEGIN {EXCLUSIVE} (* змінення x та y атомарно *)
   SELF.x := x; y := f(x)
  END Set;

  PROCEDURE Reset;
  BEGIN
   ...
   BEGIN {EXCLUSIVE} (* змінення x та y атомарно *)
    x := x0; y := y0;
   END;
   ....
  END Reset;
 END MyContainer;
</source>

==== Синхронізація ====
На відміну від більшості реалізацій моніторів, що використовують для синхронізації [[Монітор (синхронізація)#Умовні змінні|умовні змінні Гоара]]<ref name=":1"/> (на основі черг подій Брінча Гансена<ref name=":0"/>), синхронізацію активностей забезпечує оператор '''AWAIT''', що приймає як аргумент логічний вираз — ''умову продовження виконання'' програми в тілі об'єкта. Щоб гарантувати правильність синхронізації, '''AWAIT''' має міститись у монопольній ділянці. У разі невиконання ''умови продовження'' '''AWAIT''' призупиняє (''suspend'') активність і, якщо міститься в монопольній ділянці, відпускає захоплену ділянку на час припинення, що дозволяє іншим активностям змінити стан об'єкта і зробити умову продовження істинною. Зупинена активність продовжить роботу лише в тому разі, якщо зможе повторно увійти до монопольної ділянки.

Приклад синхронізації всередині розділюваного буфера:<source lang="oberon2" line="1">
TYPE
 Synchronizer = OBJECT
  VAR awake: BOOLEAN

  PROCEDURE Wait;
  BEGIN {EXCLUSIVE}
   AWAIT(awake);
   awake := FALSE;
  END Wait;

  PROCEDURE WakeUp;
  BEGIN {EXCLUSIVE}
   awake := TRUE;
  END WakeUp;
 END Synchronizer;
</source>

=== Обробка помилок та виняткових ситуацій ===
{{Див. також|Обробка винятків}}
В Active Oberon відсутні засоби структурної обробки [[Обробка винятків|виняткових ситуацій]] — їх обробляє централізоване середовище часу виконання.

Оператор '''ASSERT''' приймає як обов'язковий аргумент логічний вираз, у разі порушення якого відбувається переривання програми і, як і при виконанні оператора безумовної зупинки '''HALT''', керування передається в централізований обробник винятків. Якщо умову оператора '''ASSERT''' можна обчислити на етапі компіляції, то, в разі невиконання умови, генерується помилка компіляції. Оператор '''ASSERT''' і '''HALT''' можуть мати необов'язковий параметр — специфікатор винятку, який можна проаналізувати в обробнику.

Після обробки винятку керування передається в найближчу за стеком викликів секцію гарантованого завершення '''FINALLY''', якщо вона є. Потім, якщо тіло активного об'єкта позначено модифікатором '''SAFE''', активність буде перезапущено, інакше її робота завершується.

== Середовище часу виконання ==

=== Інформація про типи часу виконання ===
Тільки структурні типи (масиви, записи, об'єкти) мають [[Динамічна ідентифікація типу|інформацію про типи часу виконання]] (метаінформацію). Метаінформація зберігається у спеціальній структурі, званій ''дескриптором типу''. Дескриптор типу містить дані про типи та назви змінних і полів, таблицю успадкування, [[Таблиця віртуальних методів|таблицю віртуальних методів]] та таблиці реалізованих [[Интерфейсов|інтерфейсів]].

=== Керування пам'яттю ===
В Active Oberon застосовується автоматичне керування пам'яттю з використанням ''переривного (витискального)'' ''[[Збирання сміття|збирача сміття]] [[Реальний час|реального часу]]''<ref>Ulrike Glavitsch. Real-time Garbage Collection in A2. Institute of Computer Systems, ETH Zurich</ref>, заснованого на методі позначок (''Mark and Sweep''). Збирач сміття виконується в окремому потоці, і активності (потоки), з вищим пріоритетом, ніж пріоритет активності збирача сміття, можуть призупинити його виконання. При цьому дерево об'єктів заморожується. На даний момент тільки сутності реального часу можуть переривати активність збирача сміття, в них заборонено [[динамічне виділення пам'яті]], за цим стежить компілятор.

Керування пам'яттю ґрунтується на використанні ''типізованих ділянок пам'яті''. Така ділянка зберігає вказівник на ''дескриптор типу''. Використовуючи [[Динамічна ідентифікація типу|інформацію про типи часу виконання]], розміщену в дескрипторі типу, збирач сміття знаходить змінні і поля посилального типу і позначає блоки, на які вони вказують. Іншими словами, збирачеві сміття немає необхідності перевіряти кожне значення, схоже на вказівник, чи воно є коректним вказівником у [[Купа (пам'ять)|купі]] — використовуючи інформацію, яку надає дескриптор типу, він точно знає, які елементи обробляти, що істотно збільшує швидкість і точність роботи і знижує навантаження на процес збирання сміття. Для прискорення виділення пам'яті вільні ділянки поміщаються в ''списки вільних блоків'', які містять блоки пам'яті певних розмірів.

Змінні посилального типу, позначені модифікатором '''UNTRACED''' належать до {{Нп|Слабке посилання|нетрасованих вказівників|en|Weak reference}}. Такі вказівники не відстежує збирач сміття і ділянки пам'яті, на які вони посилаються, можуть бути утилізовані в будь-який момент часу, в разі, якщо їх виділило середовище часу виконання та на них немає досяжних посилань, які враховує збирач сміття. Часто такі модифікатори використовують для роботи з ділянками пам'яті, виділеними поза середовищем часу виконання Active Oberon, або з небезпечними вказівниками.

=== Керування активністю об'єктів ===
Середовище часу виконання відповідає за розподіл процесорного часу, гарантує (разом з компілятором), що в монопольній ділянці міститься не більше однієї активності, забезпечує своєчасну перевірку ''умов'' оператора '''AWAIT''' і відновлення роботи призупинених активностей. Вирази ''умов продовження'' всередині об'єкта перераховуються в усіх точках виходу з монопольних ділянок. Це означає, що зміна стану об'єкта поза монопольною ділянкою не призводить до перерахунку умов. Коли кілька активностей змагаються за ту саму монопольну ділянку, то активності з виконаними умовами розглядаються раніше від тих, які тільки хочуть увійти в захищену ділянку<ref name=":3"/><ref>P. Reali. Active Oberon Language Report. — ETH Zurich, 2004.</ref>.

=== Підключення та ініціалізація модулів ===
В Active Oberon відсутні засоби для прямого керування динамічним завантаженням та вивантаженням модулів. Мова пропонує лише секцію імпорту ('''IMPORT'''), у якій вказано список модулів, що підключаються, і секцію ініціалізації модуля. Середовище часу виконання має забезпечити підключення та ініціалізацію модулів до ініціалізації поточного модуля. Динамічне підключення модуля здійснюється через механізм [[Динамічний лінкер|динамічного зв'язування]]. Модуль не можна вивантажити доти, доки на нього є посилання зі списку підключення іншого завантаженого модуля. Таким чином, щоб унеможливити проблему циклічних посилань, модулі слід вивантажувати в порядку, зворотному до порядку завантаження.

=== Обробка помилок та виняткових ситуацій ===
Модуль ''Traps'' забезпечує централізовану обробку виняткових ситуацій. Параметри, які приймають оператори '''ASSERT''' і '''HALT''', можуть використовуватися для класифікації виняткової ситуації.

Після обробки виняткової ситуації в модулі ''Traps'' середовище часу виконання здійснює пошук секцій гарантованого завершення '''FINALLY''' та передає на них керування для виконання завершальних операцій.

У випадку, якщо активність позначена модифікатором '''SAFE''' і в тілі об'єкта відсутня секція '''FINALLY''', відбувається перезапуск активності, інакше виконання активності завершується.

Програмний інтерфейс середовища виконання надає можливість встановлення власного обробника виняткових ситуацій.

== Приклади програм ==

=== Hello, World! ===
<source lang="oberon2" line="1">
MODULE HelloWorld;
IMPORT KernelLog;

BEGIN
 KernelLog.String( "Hello, World!" );
END HelloWorld.
</source>

=== Розв'язок класичної задачі постачальника та споживача ===
<source lang="oberon2" line="1">
MODULE BoundedBuffers;
TYPE
 Item* = OBJECT;

 Buffer* = OBJECT
  VAR
   h, n: INTEGER;
   B: ARRAY * OF Item;

  PROCEDURE Get*(): Item;
  VAR x: Item;
  BEGIN {EXCLUSIVE}
   AWAIT(n # 0); (* буфер не порожній *)
   x := B[h]; h := (h+1) MOD LEN(B); DEC(n);
   RETURN x
  END Get;

  PROCEDURE Put*(x: Item);
  BEGIN {EXCLUSIVE}
   AWAIT(n # LEN(B)); (* буфер не повний *)
   B[(h+n) MOD LEN(B)] := x; INC(n)
  END Put;

  PROCEDURE &Init(max: INTEGER);
  BEGIN (* ініціалізатор *)
   NEW(B, max); h := 0; n := 0
  END Init;
 END Buffer;

END BoundedBuffers.
</source>

== Див. також ==
* [[A2 (операційна система)]]
* {{Нп|Компонентний Паскаль|3=en|4=Component Pascal}}
* [[Модула-2]]
* [[Модула-3]]
* [[Оберон (мова програмування)]]
* [[Zonnon]]

== Примітки ==
{{примітки|2}}

== Посилання ==
* [http://cas.inf.ethz.ch/projects/a2/repository/raw/trunk/LanguageReport/OberonLanguageReport.pdf Повідомлення про мову Active Oberon (2019)]{{Ref-en}}
* [https://t.me/A2OperatingSystem Спільнота Операційної Системи A2 та мови Active Oberon у Telegram]
* [https://www.youtube.com/watch?v=Pe0ZdzO_urU Відео про спосіб програмування під ОС A2]{{Ref-en}}
* [http://research.microsoft.com/en-us/um/people/nick/entcs/gutknecht.pdf «Active Oberon for NET: An Exercise in Object Model Mapping.» Jurg Gutknecht]{{Ref-en}}
* Архів [https://web.archive.org/web/20120807103727/http://www.a2.ethz.ch/languagereport/ActiveReport.pdf Active Oberon Language Report]{{Ref-en}}
* Архів [https://web.archive.org/web/20130529020132/http://www.ethoberon.ethz.ch/genealogy.html Генеалогія мов сімейства Оберон]{{Ref-en}}
* Архів [https://archive.today/20130101074951/http://www.a2.ethz.ch/ Welcome to A2]{{Ref-en}}
* Архів [https://web.archive.org/web/20150402135337/http://a2os.org.ua/forums/ Форум про ОС A2 та мову Active Oberon]
* Архів [https://web.archive.org/web/20110706232051/http://www.ocp.inf.ethz.ch/wiki/OCP/Downloads Download AOS aka A2 (Active Oberon Community Platform)]{{Ref-en}}

----

* Архів [https://web.archive.org/web/20050221100629/http://www.oberon.ethz.ch/ ETH: Oberon] {{Ref-en}}

[[Категорія:Мови програмування платформи .NET]]
[[Категорія:Об'єктно-орієнтовані мови програмування]]
[[Категорія:Структурні мови програмування]]
[[Категорія:Процедурні мови програмування]]

title: Active Oberon


text:
# Аскія Ісхак I
Аскія Ісхак I (д/н — 1549) — 7-й володар імперії Сонгаї в 1539—1549 роках.

## Життєпис
Походив з династії Аскій. Син Аскії Мохаммада I, володаря Сонгаї. 1539 року після смерті брата Аскії Ісмаїла посів трон.
Велику увагу приділяв зведенню мечетей і медресе. При цьому уславився жорстокістю до підданих, що описується в хроніці «Таріх аль-Судан».
1545 року завдав поразки решткам держави Малі, захопивши її столицю. 1546 року відкинув вимогу братів-емірів Ахмада аль-Араджа й Мухаммада аш-Шейха, передати соляні копальні Тегаза. У відповідь відправив війська, що захопили долину річки Драа.
Помер 1549 року в місті Кукія, де й був похований. Йому спадкував брат Аскія Дауд.

wikiname: ukwiki

title: Аскія Ісхак I

in_language: uk

wikitext:
{{особа}}
'''Аскія Ісхак I''' (д/н — [[1549]]) — 7-й володар [[імперія Сонгаї|імперії Сонгаї]] в [[1539]]—[[1549]] роках.

== Життєпис ==
Походив з династії Аскій. Син [[Аскія Мохаммад I|Аскії Мохаммада I]], володаря Сонгаї. 1539 року після смерті брата [[Аскія Ісмаїл|Аскії Ісмаїла]] посів трон.

Велику увагу приділяв зведенню мечетей і медресе. При цьому уславився жорстокістю до підданих, що описується в хроніці «Таріх аль-Судан».

1545 року завдав поразки решткам держави Малі, захопивши її столицю. 1546 року відкинув вимогу братів-емірів [[Ахмад аль-Арадж|Ахмада аль-Араджа]] й [[Мухаммад аш-Шейх|Мухаммада аш-Шейха]], передати соляні копальні Тегаза. У відповідь відправив війська, що захопили долину річки [[Драа]].

Помер 1549 року в місті Кукія, де й був похований. Йому спадкував брат [[Аскія Дауд]].

== Джерела ==
* Hunwick, John O. (2003), Timbuktu and the Songhay Empire: Al-Sadi's Tarikh al-Sudan down to 1613 and other contemporary documents, Leiden: Brill, ISBN 978-90-04-12822-4.

[[Категорія:Імперія Сонгаї]]
[[Категорія:Правителі XVI століття]]

title: Аскія Ісхак I

Помер: 1549 · Кукія, Південний Барандузчай, Центральний багш, Шахрестан Урмія, Західний Азербайджан, Іран

Країна: Малі

Діяльність: суверен

Знання мов: французька

Рід: Askiad

Батько: Аскія Мохаммад I


text:
# Григоряк Семен Іванович
Семен Іванович Григоряк (с. Чорногузи, Вижницький повіт, Герцогство Буковина, Австро-Угорщина — 1965, Чехословаччина) — український військовий діяч, підполковник Армії Української Народної Республіки.

## Життєпис
Семен Іванович Григоряк народився в с. Чорногузи, яке на той час входило до Герцогства Буковина Австро-Угорщини. Під час Першої світової війни Семен Григоряк був підстаршиною у Австро-Угорській армії, звідки і потрапив до російського полону.
Після Жовтневого перевороту 1917 року військовик приїхав разом з іншими полоненими-українцями до Києва і вступив до лав Січових Стрільців. У лютому 1918 року  взяв участь у обороні Києва від окупаційних більшовицьких військ. У 1918–1919 роках Семен Григоряк — командир сотні 1-го полку Січових стрільців Дієвої армії УНР. З 7 липня 1920 року — командир 46-го куреня 16-ї бригади 6-ї Січової дивізії Армії УНР, у складі якої у 1920 році брав участь у наступі на Київ, Замостівській обороні та Вінницькому наступі.
Учасник Другого Зимового походу у складі Волинської повстанської групи. Очолював 4-й курінь 2-ї збірної бригади Збірної Київської дивізії. Особливо відзначився у боях біля Дирошинки та Розважіва, де врятував від загибелі 2-гу повстанчу бригаду, перейнявши командування нею від хворого полковника Сушка. Під час останнього бою сотник Григоряк потрапив у полон і під час переведення полонених з Малих Міньок до Базару зумів втекти і дістатися до Чехословаччини де і помер 1965 р.

## Вшанування
Одна з вулиць у рідному селі Семена Григоряка - с. Чорногузи, носить його ім'я.

title: Григоряк Семен Іванович

wikitext:
{{Військовик2
| ім'я                = Семен Іванович Григоряк
| оригінал імені      =
| портрет             = Григоряк Семен Іванович.jpg
| підпис              =
| дата народження     = с. Чорногузи
| місце народження    = [[Герцогство Буковина]], [[Австро-Угорщина]]
| дата смерті         = 1965 р.
| місце смерті        = [[Чехословаччина]]
| причина смерті      =
| національність      = [[українець]]
| університет         =
| ступінь             =
| прізвисько          =
| країна              = {{AUT-HUN}} →
{{UNR}}
| вид збройних сил    = {{fАрміяУНР}}
| рід військ          = {{Прапорець|UNR}} [[Сухопутні війська]]
| роки служби         = [[1917]]–[[1921]]
| звання              = {{Ранг|країна=УНР|звання=Підполковник}}
| формування          = {{Прапорець|UNR}} [[Січові Стрільці#Група Січових Стрільців. 1-й полк Січових Стрільців (07.1919—11.1919)|1-й полк Січових Стрільців]]
{{Прапорець|UNR}} [[Шоста січова стрілецька дивізія|6-та Січова дивізія]]
{{nobr|{{Прапорець|UNR}} [[Волинська повстанська група]]}}
| командування        =
| битви               = [[Перша світова війна]]
[[Радянсько-українська війна]]
| нагороди            =
}}
{{Othernames|Григоряк}}

'''Семен Іванович Григоряк''' (с. [[Чорногузи]], [[Вижницький повіт]], [[Герцогство Буковина]], [[Австро-Угорщина]] — 1965, [[Чехословаччина]]) — український військовий діяч, підполковник Армії [[Українська Народна Республіка|Української Народної Республіки]].

== Життєпис ==
Семен Іванович Григоряк народився в с. Чорногузи, яке на той час входило до Герцогства Буковина Австро-Угорщини. Під час [[Перша світова війна|Першої світової війни]] Семен Григоряк був підстаршиною у [[Збройні сили Австро-Угорщини|Австро-Угорській армії]], звідки і потрапив до російського полону.

Після [[Жовтневий переворот|Жовтневого перевороту]] 1917 року військовик приїхав разом з іншими полоненими-українцями до [[Київ|Києва]] і вступив до лав [[Січові Стрільці|Січових Стрільців]]. У лютому 1918 року  взяв участь у [[Штурм Києва (1918)|обороні Києва]] від окупаційних більшовицьких військ. У 1918–1919 роках Семен Григоряк — командир сотні 1-го полку [[Січові Стрільці|Січових стрільців]] Дієвої армії УНР. З 7 липня 1920 року — командир 46-го куреня 16-ї бригади [[Шоста січова стрілецька дивізія|6-ї Січової дивізії Армії УНР]], у складі якої у 1920 році брав участь у наступі на Київ, Замостівській обороні та Вінницькому наступі.

Учасник [[Другий зимовий похід|Другого Зимового походу]] у складі [[Волинська повстанська група|Волинської повстанської групи]]. Очолював 4-й курінь 2-ї збірної бригади Збірної Київської дивізії. Особливо відзначився у боях біля Дирошинки та Розважіва, де врятував від загибелі 2-гу повстанчу бригаду, перейнявши командування нею від хворого полковника [[Сушко Роман Кирилович|Сушка]]<ref name="Верига">''Верига Василь''. Листопадовий рейд 1921 року. — К.: «Стікс», 2011. — сс. 164, 211. ISBN 978-966-96849-8-1</ref>. Під час останнього бою сотник Григоряк потрапив у полон і під час переведення полонених з [[Малі Міньки|Малих Міньок]] до [[Базар (Народицький район)|Базару]] зумів втекти і дістатися до Чехословаччини де і помер 1965 р.<ref name="Верига"/>

== Вшанування ==
Одна з вулиць у рідному селі Семена Григоряка - [[Чорногузи|с. Чорногузи]], носить його ім'я.<ref>{{Cite web|url=https://bukoda.gov.ua/npas/pro-pereimenuvannia-obiektiv-toponimiky-naselenykh-punktiv-chernivetskoi-oblasti|title=Чернівецька обласна державна адміністрація - Про перейменування об’єктів топоніміки населених пунктів Чернівецької області|website=bukoda.gov.ua|language=ua|access-date=2024-07-31}}</ref>

== Примітки ==
{{reflist}}

== Джерела інформації ==
* {{Тинченко.ОК армії УНР|Г}}
* ЦДАВОУ — Ф. 1075. — Оп. 2. — Спр. 653. — С. 99.
* Шпілінський О. Базар//За Державність. — Каліш. — 1932. — Ч. 3. — С 130.

{{ukr-mil-bio-stub}}

[[Категорія:Вояки Січових стрільців]]
[[Категорія:Учасники Другого зимового походу]]
[[Категорія:Герої Базару]]

title: Загальна інформація

Народження: с. Чорногузи · Герцогство Буковина, Австро-Угорщина

Смерть: 1965 р. · Чехословаччина

Національність: українець

title: Військова служба

Приналежність: Австро-Угорщина → · УНР

Вид ЗС: Армія УНР

Рід військ: Сухопутні війська

Формування: 1-й полк Січових Стрільців · 6-та Січова дивізія · Волинська повстанська група

Війни / битви: Перша світова війна · Радянсько-українська війна


text:
# Сільпя-Мала
Сільпя-Мала (пол. Silpia Mała) — село в Польщі, у гміні Влощова Влощовського повіту Свентокшиського воєводства.
У 1975-1998 роках село належало до Келецького воєводства.

title: Сільпя-Мала

wikitext:
{{НП
|країна             = [[Польща]]
|статус             = село
|українська назва   = Сільпя-Мала
|оригінальна назва  = {{lang-pl|Silpia Mała}}
|підпорядкування    =
|герб           =
|прапор         =
|ширина герба   =
|ширина прапора =
|зображення     =
|опис зображення    =
|вид регіону = Воєводство
|регіон      = Свентокшиське воєводство
|вид району  = Повіт
|район       = [[Влощовський повіт]]
|вид общини  = Гміна
|община      = Влощова (гміна){{!}}Влощова
|внутрішній поділ   =
|перша згадка       =
|попередні назви    =
|площа              =
|висота центру НП     =
|клімат               =
|офіційна мова      =
|офіційна мова-ref  =
|населення          =
|рік перепису       =
|густота населення  =
|агломерація        =
|національний склад =
|конфесійний склад  =
|катойконім         =
|часовий пояс           = +1
|DST                    = +1 <!--Якщо є [[літній час]] -->
|телефонний код         = (+48) 41
|поштовий індекс        =
|автомобільний код      = TLW
|вид ідентифікатора     = [[SIMC]]
|цифровий ідентифікатор = 0278741
|сайт  =
|add1n =
|add1  =
}}

'''Сільпя-Мала''' ({{lang-pl|Silpia Mała}}) — село в Польщі, у [[Влощова (гміна)|гміні Влощова]] [[Влощовський повіт|Влощовського повіту]] [[Свентокшиське воєводство|Свентокшиського воєводства]].

[[Адміністративний поділ Польщі (1975–1998)|У 1975-1998 роках]] село належало до [[Келецьке воєводство|Келецького воєводства]].

== Примітки ==
{{Портал|Польща}}

{{Гміна Влощова}}

[[Категорія:Села Влощовського повіту]]

title: Країна

Країна: Польща

Воєводство: Свентокшиське воєводство

Повіт: Влощовський повіт

Гміна: Влощова

Часовий пояс: UTC+1, влітку UTC+2

Автомобільний код: TLW

OSM: ↑2839154 ·R (Ґміна Влощова)


text:
# Майкл Пулін
Майкл Пулін (англ. Michael Poulin, 1945) — американський вершник.
Бронзовий призер Олімпійських Ігор 1992 року в командній виїздці.

title: Майкл Пулін

wikitext:
{{Спортсмен
| ім'я           = Майкл Пулін
| оригінал імені = Michael Poulin
| зріст  =
| вага   =
| медалі = {{MedalSport | [[Верхова їзда|Кінний спорт]] }}
{{MedalCountry | {{USA}} }}
{{MedalCompetition | [[Олімпійські ігри]] }}
{{MedalBronze | [[літні Олімпійські ігри 1992|Барселона 1992]] | [[Кінний спорт на літніх Олімпійських іграх 1992|Командна виїздка]] }}
}}

'''Майкл Пулін''' ({{lang-en|Michael Poulin}}, 1945) — [[США|американський]] [[Кінний спорт|вершник]].
<!--ДосягненняПочаток (будь ласка, не видаляйте цей і наступний коментарі, вони потрібні ботові для оновленнь)-->Бронзовий призер Олімпійських Ігор [[Кінний спорт на літніх Олімпійських іграх 1992|1992]] року в командній виїздці.
<!--ДосягненняКінець Код:OGB92.-->

== Посилання ==
* {{Olympedia}}
* [https://web.archive.org/web/20161231000000/http://www.sports-reference.com/olympics/athletes/Po/Michael-Poulin-1.html Майкл Пулін на Sports-Reference.com]

== Примітки ==
{{reflist}}

{{DEFAULTSORT:Пулін Майкл}}
[[Категорія:Народились 1945]]
[[Категорія:Вершники США]]
[[Категорія:Вершники на літніх Олімпійських іграх 1992]]
[[Категорія:Призери літніх Олімпійських ігор 1992]]

title: Загальна інформація

Громадянство: США

Народження: 1945 · Ньюпорт, Род-Айленд, США

title: Спорт

Вид спорту: кінний спорт

Дисципліна: виїздка

title: Олімпійські ігри

Бронза: Барселона 1992 · Командна виїздка


text:
# Погляди на реставрацію та охорону пам’яток теоретика мистецтва Джона Рескіна

## Джон Рескін як теоретик в мистецтві і реставрації.
У сучасному суспільстві постійно зростає увага до охорони і збереження пам'яток, які складають нашу культурну спадщину, що дозволяє вважати найважливішим завданням зберігання, консервацію і реставрацію колекцій.
Реставрація, подібно будь-якому іншому виду людської діяльності, не є незмінною системою принципів і методів, але має свій історичний розвиток і залежить від того, в ім'я чого зберігається і реставрується пам'ятник.
Спроби реставрації пам'яток архітектури відомі вже в античний період, проте в XVIII-XIX ст. вони зазвичай зводилися до простого ремонту або «відновлення» об'єкта.
Як самостійна дисципліна наукова реставрація пам'яток мистецтва зароджується в середині XIX. До цього моменту реставрація чи консервація старожитностей проводилася різними прийомами і без будь-якої систематизації цих робіт.
Широко визнано, що першими теоретиками в реставрації слід вважати Еммануеля Віолле-ле-Дюка (Emmanuel Viollet - le - Duc) і Джона Раскіна (JohnRuskin).
 Джон Рескін (також Рамскін, англ. JohnRuskin, 8 лютого 1819, Лондон - 20 січень 1900 Брентвуд) - англійський письменник, художник, теоретик мистецтва, літературний критик і поет, член Арундельского суспільства.
Рескін багато зробив для зміцнення позицій прерафаелітів, наприклад, в статті «прерафаелітізма» (англ. Pre-Raphaelitism, 1851), а також сильно вплинув на антибуржуазний пафос руху.

Рескін також проголошував принцип «вірності Природі»:
|  | «Не від того, що ми любимо свої творіння більше, ніж Його, ми цінуємо кольорові скла, а не світлі хмари ... І, виробляючи купелі і споруджуючи колони на честь Того ... ми уявляємо, що нам проститься ганебне нехтування до пагорбів і потоків, якими Він наділив наше житло - землю ». |

Як ідеал він висував середньовічне мистецтво і таких майстрів Раннього Відродження як:  Перуджино, Фра Анджеліко, Джованні Белліні.
Неприйняття механізації і стандартизації знайшло відображення в теорії архітектури Раскіна, акценті на значущості середньовічного готичного стилю. Рескін вихваляв готичний стиль за його прихильність до природи і природних форм, а також за прагнення ощасливити трудівника, яке він, як і прихильники «готичного відродження» на чолі з Вільямом Морісом бачив в готичній естетиці. Дев'ятнадцяте століття намагається відтворити деякі готичні форми (стрілчасті арки і т.п.), чого виявляється бракує для висловлення істинного готичного відчування, віри і органицизму. Готичний стиль втілює ті ж моральні цінності, що бачить Рескін в мистецтві, - цінності сили, твердості і натхнення.
Класична архітектура на противагу готичній, висловлює моральну беззмістовність, регресивну стандартизацію. Рескін пов'язує класичні цінності з сучасним розвитком, зокрема з деморалізаторскімі наслідками промислової революції, які відбиваються в таких феноменах архітектури, як Кришталевий палац.
Питанням архітектури присвячено багато робіт Рескіна, однак найбільш виразно свої ідеї він відбив у нарисі «Єство Готики» («TheNatureofGothic») з другого тому «Каменів Венеції» (TheStonesofVenice) 1853 року, який вийшов в розпал бушування в Лондоні «Битви стилів». Крім апології готичного стилю, він виступав в ньому з критикою поділу праці і нерегульованого ринку, що відстоюються англійською політекономічною школою.
Рескін був лютим і послідовним противником серійного виробництва, навіть залізницею не користувався. Заводам і фабрикам він протиставляв первозданну природу і патріархальний уклад життя - за це його називають першим представником «зелених». На противагу «бездушному» конвеєру він звеличував старе ремесло, унікальні предмери побуту, зроблені вручну - пропагуючи свої ідеї, він навіть заснував громаду св. Георга, комуну з майстернями, організованими за прикладом середньовічних цехів. Він заперечував, як абсолютно надуманий поділ мистецтва на так зване чисте і декоративне, посилаючись на те, що велике творіння Мікеланжело в Сикстинській капелі є по суті декоративним розписом. У відродженні ремесел Рескін сподівався знайти альтернативу страхітливого фабричного виробництва, а також можливість підвищити естетичну цінність звичайних предметів побуту. Він закликав ремісників і архітекторів повернутися до природних форм, заперечуючи цінності вікторіанської культури.
Його найбільша заслуга в тому, що він першим заявив, що прототип і критерії краси можна знайти тільки в дикій природі, оскільки «тільки вона є нічим не спотвореною і не опоганеною». Він запропонував видавати премії землевласникам, що мають на своїй території землі природної витонченості. До Рескіна, в західній культурній традиції та естетиці, красивими вважалися тільки окультурені ландшафти. Дика природа ж естетичної цінності не мала. Такий підхід послаблював зусилля діячів природоохорони щодо захисту краси дикої природи. Рескін наважився порушити усталені традиції:
|  | «Чисту любов до природи в мені завжди викликає дика природа, тобто місця абсолютно природні і, переважно, з жвавими річками або морем. Тут відчувається сила, і вільна, нічим не порушена влада природи ». «Все, що наближається до неї, прагне до краси, все, що віддаляється від неї, схиляється до неподобства!». |

Таким чином, за Рескіном, найкрасивішою природою є – дика природа. А зовсім інша справа, що людина не завжди в змозі оцінити цю красу.
|  | «Класи людей, які виросли серед природи, далеко від міст, ніколи не розуміють краси пейзажу. Краса тварин більш доступна їм, та й то не цілком. Чи не краса тваринного, а визнання його корисності зрозумілі селянинові (...). Тільки розвинені люди можуть бачити красу пейзажу: тільки музикою, літературою і живописом дається розвиток ». |

Рескін високо оцінював художню нерозчленованість архітектури, образотворчого мистецтва та предметного середовища середньовіччя. Цією нерозчленованістю надихалися англійські прерафаеліти, яким Рескин присвятив кілька спеціальних робіт. Але подальший поділ праці на елітарно- творчий і некваліфікований, чисто виконавчий, на думку Рескіна, призвів  до незворотних і сумних наслідків. У книзі "Камені Венеції" він писав: "Людей можна бити, прикувати в ланцюзі, мучити, надягати на них ярмо, як на худобу, знищувати, як літніх мух, але все-таки в одному, в кращому сенсі, вони залишаються вільними. Вбивати ж їх душу, витісуючи безформні, гниючі поліна зі стовбурів їх людського розуму, звертати ... плоть і кров в прості ремені для зв'язування машин - ось справжнє рабовласництво ".
Там же він аналізував різницю між науковим пізнанням і художнім розумінням життя: наука розглядає відношення речей і явищ між собою, а мистецтво ставить речі в відношення до людини, визначає, що вони значать для людини.
Виступаючи проти буржуазної дійсності, Рескін весь час підкреслював потворність контрастів багатства і бідності, індустріалізації міст та закинутість сільських місць, згубного зростання нового предметного середовища і збідніння природи. Він боровся не техніки як такої, а виправдання супутніх їй незручностей і позбавлень, які набагато випередили  в цій полеміці свій час.
Машину вони піддавали критиці, оскільки вона витіснила здорове фізичне навантаження, майстерність рук і очей, необхідних для досконалості будь-якої роботи. Машина може бути лише помічником людини. Інженери, створюючи двигуни, повинні спиратися на природні і постійно поповнювані сили природи, такі, як вітер і вода, а не на парові машини, що вимагають величезної, жахливої за своїми наслідками витрати палива, що спотворюють міста відвалами шлаків, які ніколи не стануть природним включенням в природу. Однак, Рескін вважав, що в майбутньому, з масовим використанням електрики, все може змінитися.

## Погляди Джона Рескіна на реставрацію та охорону пам'яток
Особливе місце в поглядах і роботах Раскіна зайняла охорона пам'яток культури. Він закликав до охорони пам'яток в найширшому сенсі, куди включав і фрески, і картини, і барельєфи, і значну історичну або художню споруду, в тому числі значне історичне місто. У літературних працях він звертався до емоцій і совісті читача, нагадував про відповідальність перед майбутніми поколіннями: "... феодальні і монастирські будівлі Європи зараз зникають як сни. Важко уявити, якою сумішшю заздрості і презирства на нас будуть дивитися нові покоління. Адже ми володіли цими скарбами і нічого не зробили, щоб зберегти їх або хоча б відтворити на полотні. "Рескін дивиться на архітектуру не очима естета, а очима проповідника-мораліста, що часто розглядається як недолік. Йому була важливіше моральність і життєва достовірність мистецтва, а співвіднести їх з формою аж ніяк не просто. Як сполучною ланкою між цими категоріями можна використовувати категорію «сенсу».
Рескін шукав не історичних і не вічних, зразкових форм - він шукав осмислені форми. Але тоді може здатися, що він  - функціоналіст і конструктивіст, що бачить в формах цей практичний і технічний сенс. Але Рескін, хоча безумовно зробив вплив на становлення функціоналізму і конструктивізму - сам не був ні функціоналістом, ні конструктивістом. Конструктивні та функціональні мотиви були для нього тільки подробицями, за якими ховається мораль. Бо і функціоналізм і конструктивізм оперують в основному абстрактними відносинами між функцією, конструкцією і формою. Рескін же мислив ці відносини як атрибути людського вчинку і людської цінності. Сенс для Рескіна був сенсом людського життя, який лише частково міг виражатися свідомістю функціональних і конструктивних форм. Він не просто розширював поняття сенсу (функції) до людських відносин, а й бачив втілення цих відносин в ідеалізованому уявленні про мораль сімейного життя (батьки, діти, природа у вигляді присадибного садка) і творчої відданості улюбленій справі, будівництва, ліпленню і живопису. Його ідеал - незалежність творця від диктату моди і всього загальноприйнятого. Саме тому, можливо, для Раскіна настільки важлива категорія «пам'яті». Його «пам'ять» це не стільки пам'ять роду і традиції, скільки індивідуальна пам'ять, пам'ять дитинства, яка пов'язує все в людському досвіді і виступає фундаментальною основою будь-якої символізації.
В архітектурі Рескін бачив один із засобів людського спілкування, того, яке робить людину громадянином, а суспільство - людяним.
Але так зрозумілий сенс не може ні транслюватися, ні тиражуватися - він не пристосований до масової технології і промислового виробництва, так само як і до стилю. Стиль в найпростішому і широкому його розумінні є все-таки тиражуванням нормативного зразка, а сенс індивідуальної комунікації ніяк в норму не вкладається. Сенс є парадоксальна норма ненормативної (зате осмисленої) поведінки.
Обгрунтовуючи свій ряд принципів, Рескін проводить паралель в області хімії і мінерології. Кожній мінерал, - каже він, - має якийсь зовнішній характерний вигляд: колір, блиск, кристалічну структуру. Але справжня його природа зумовлена його хімічною будовою, зв'язком атомів в його молекулах. І ось, виділені їм шість принципів або властивостей готики, він схильний ототожнювати з такими атомами, а вже зовнішній вигляд, форму із зовнішніми властивостями готики.

## Висновок
Відомий англійський письменник, теоретик мистецтва, філософ, художник, один з лідерів руху «Мистецтва і ремесла», що зробив істотний вплив на культурне життя Англії другої половини 19 ст.
Основні погляди на мистецтво і архітектуру можна викласти в кількох тезах:
•	Не визнавав продукцію масового виробництва;
•	Закликав повернутися до ремесел, як альтернативного  фабричного виробництва і можливості підвищити естетичну цінність предметів побуту;
•	Закликав повернутися до природних форм;
•	Заперечував поділ мистецтва на, так зване, чисте і декоративне.
Рескін - критик, він дає зразок розвиненої і надзвичайно артикульованої критики, яка в подальшому розвитку сучасного зодчества тільки згасла. Роль і місце критики втратили визначеність і функціональний сенс. Критику стали ототожнювати з архітектурною публіцистикою, яка не може мати строгих теоретичних постулатів і спокійно вироджується в вітально-путеводійський жанр.
Рескіну було властиво широке культурологічне прочитання явищ мистецтва, взятих в контексті всієї матеріальної культури. Він, наприклад, доводив, що пам'ятники архітектури минулого можуть розглядатися не тільки як шедеври мистецтва і не тільки як історичні свідчення, а й як вираз естетичних поглядів народу. Зараз це не викликає сумнівів, але Рескіну доводилося підкреслювати, що читати будівлю можна так само, як ми читаємо Мільтона або Данте, і отримувати таке ж задоволення від споглядання каменів, як і від віршованих строф.

wikitext:
{{об'єднати|Джон Рескін|дата=січень 2019}}
== '''Джон Рескін як теоретик в мистецтві і реставрації.''' ==
У сучасному суспільстві постійно зростає увага до охорони і збереження пам'яток, які складають нашу культурну спадщину, що дозволяє вважати найважливішим завданням зберігання, консервацію і реставрацію колекцій.

Реставрація, подібно будь-якому іншому виду людської діяльності, не є незмінною системою принципів і методів, але має свій історичний розвиток і залежить від того, в ім'я чого зберігається і реставрується пам'ятник.
Спроби реставрації пам'яток архітектури відомі вже в античний період, проте в [[XVIII]]-[[XIX]] ст. вони зазвичай зводилися до простого ремонту або «відновлення» об'єкта.

Як самостійна дисципліна наукова реставрація пам'яток мистецтва зароджується в середині XIX. До цього моменту реставрація чи консервація старожитностей проводилася різними прийомами і без будь-якої систематизації цих робіт.
Широко визнано, що першими теоретиками в реставрації слід вважати Еммануеля Віолле-ле-Дюка (Emmanuel Viollet - le - Duc) і Джона Раскіна (JohnRuskin).

''' [[Джон Рескін]] (також Рамскін, англ. JohnRuskin, 8 лютого 1819, Лондон - 20 січень 1900 Брентвуд)''' - англійський письменник, художник, теоретик мистецтва, літературний критик і поет, член Арундельского суспільства.
Рескін багато зробив для зміцнення позицій прерафаелітів, наприклад, в статті «прерафаелітізма» (англ. Pre-Raphaelitism, 1851), а також сильно вплинув на антибуржуазний пафос руху.

Рескін також проголошував принцип «вірності Природі»: {{цитата|«Не від того, що ми любимо свої творіння більше, ніж Його, ми цінуємо кольорові скла, а не світлі хмари ... І, виробляючи купелі і споруджуючи колони на честь Того ... ми уявляємо, що нам проститься ганебне нехтування до пагорбів і потоків, якими Він наділив наше житло - землю ».}}

Як ідеал він висував середньовічне мистецтво і таких майстрів Раннього Відродження як:  [[Перуджино]], [[Фра Анджеліко]], [[Джованні Белліні]].
Неприйняття механізації і стандартизації знайшло відображення в теорії архітектури Раскіна, акценті на значущості середньовічного [[Готичний стиль|готичного стилю]]. Рескін вихваляв готичний стиль за його прихильність до природи і природних форм, а також за прагнення ощасливити трудівника, яке він, як і прихильники «готичного відродження» на чолі з Вільямом Морісом бачив в готичній естетиці. Дев'ятнадцяте століття намагається відтворити деякі готичні форми (стрілчасті арки і т.п.), чого виявляється бракує для висловлення істинного готичного відчування, віри і органицизму. Готичний стиль втілює ті ж моральні цінності, що бачить Рескін в мистецтві, - цінності сили, твердості і натхнення.

[[Класичний стиль|Класична архітектура]] на противагу готичній, висловлює моральну беззмістовність, регресивну стандартизацію. Рескін пов'язує класичні цінності з сучасним розвитком, зокрема з деморалізаторскімі наслідками промислової революції, які відбиваються в таких феноменах архітектури, як Кришталевий палац.
Питанням архітектури присвячено багато робіт Рескіна, однак найбільш виразно свої ідеї він відбив у нарисі «Єство Готики» («TheNatureofGothic») з другого тому «Каменів Венеції» (TheStonesofVenice) 1853 року, який вийшов в розпал бушування в Лондоні «Битви стилів». Крім апології готичного стилю, він виступав в ньому з критикою поділу праці і нерегульованого ринку, що відстоюються англійською політекономічною школою.

Рескін був лютим і послідовним противником серійного виробництва, навіть залізницею не користувався. Заводам і фабрикам він протиставляв первозданну природу і патріархальний уклад життя - за це його називають першим представником «зелених». На противагу «бездушному» конвеєру він звеличував старе ремесло, унікальні предмери побуту, зроблені вручну - пропагуючи свої ідеї, він навіть заснував громаду св. Георга, комуну з майстернями, організованими за прикладом середньовічних цехів. Він заперечував, як абсолютно надуманий поділ мистецтва на так зване чисте і декоративне, посилаючись на те, що велике творіння Мікеланжело в Сикстинській капелі є по суті декоративним розписом. У відродженні ремесел Рескін сподівався знайти альтернативу страхітливого фабричного виробництва, а також можливість підвищити естетичну цінність звичайних предметів побуту. Він закликав ремісників і архітекторів повернутися до природних форм, заперечуючи цінності вікторіанської культури.
Його найбільша заслуга в тому, що він першим заявив, що прототип і критерії краси можна знайти тільки в дикій природі, оскільки «тільки вона є нічим не спотвореною і не опоганеною». Він запропонував видавати премії землевласникам, що мають на своїй території землі природної витонченості. До Рескіна, в західній культурній традиції та естетиці, красивими вважалися тільки окультурені ландшафти. Дика природа ж естетичної цінності не мала. Такий підхід послаблював зусилля діячів природоохорони щодо захисту краси дикої природи. Рескін наважився порушити усталені традиції: {{цитата|«Чисту любов до природи в мені завжди викликає дика природа, тобто місця абсолютно природні і, переважно, з жвавими річками або морем. Тут відчувається сила, і вільна, нічим не порушена влада природи ». «Все, що наближається до неї, прагне до краси, все, що віддаляється від неї, схиляється до неподобства!».}}
Таким чином, за Рескіном, найкрасивішою природою є – дика природа. А зовсім інша справа, що людина не завжди в змозі оцінити цю красу.

{{цитата|«Класи людей, які виросли серед природи, далеко від міст, ніколи не розуміють краси пейзажу. Краса тварин більш доступна їм, та й то не цілком. Чи не краса тваринного, а визнання його корисності зрозумілі селянинові (...). Тільки розвинені люди можуть бачити красу пейзажу: тільки музикою, літературою і живописом дається розвиток ».}}

Рескін високо оцінював художню нерозчленованість архітектури, образотворчого мистецтва та предметного середовища середньовіччя. Цією нерозчленованістю надихалися англійські прерафаеліти, яким Рескин присвятив кілька спеціальних робіт. Але подальший поділ праці на елітарно- творчий і некваліфікований, чисто виконавчий, на думку Рескіна, призвів  до незворотних і сумних наслідків. У книзі "Камені Венеції" він писав: "Людей можна бити, прикувати в ланцюзі, мучити, надягати на них ярмо, як на худобу, знищувати, як літніх мух, але все-таки в одному, в кращому сенсі, вони залишаються вільними. Вбивати ж їх душу, витісуючи безформні, гниючі поліна зі стовбурів їх людського розуму, звертати ... плоть і кров в прості ремені для зв'язування машин - ось справжнє рабовласництво ".
Там же він аналізував різницю між науковим пізнанням і художнім розумінням життя: наука розглядає відношення речей і явищ між собою, а мистецтво ставить речі в відношення до людини, визначає, що вони значать для людини.
Виступаючи проти буржуазної дійсності, Рескін весь час підкреслював потворність контрастів багатства і бідності, індустріалізації міст та закинутість сільських місць, згубного зростання нового предметного середовища і збідніння природи. Він боровся не техніки як такої, а виправдання супутніх їй незручностей і позбавлень, які набагато випередили  в цій полеміці свій час.
Машину вони піддавали критиці, оскільки вона витіснила здорове фізичне навантаження, майстерність рук і очей, необхідних для досконалості будь-якої роботи. Машина може бути лише помічником людини. Інженери, створюючи двигуни, повинні спиратися на природні і постійно поповнювані сили природи, такі, як вітер і вода, а не на парові машини, що вимагають величезної, жахливої за своїми наслідками витрати палива, що спотворюють міста відвалами шлаків, які ніколи не стануть природним включенням в природу. Однак, Рескін вважав, що в майбутньому, з масовим використанням електрики, все може змінитися.
== '''Погляди Джона Рескіна на реставрацію та охорону пам'яток''' ==
Особливе місце в поглядах і роботах Раскіна зайняла охорона пам'яток культури. Він закликав до охорони пам'яток в найширшому сенсі, куди включав і фрески, і картини, і барельєфи, і значну історичну або художню споруду, в тому числі значне історичне місто. У літературних працях він звертався до емоцій і совісті читача, нагадував про відповідальність перед майбутніми поколіннями: "... феодальні і монастирські будівлі Європи зараз зникають як сни. Важко уявити, якою сумішшю заздрості і презирства на нас будуть дивитися нові покоління. Адже ми володіли цими скарбами і нічого не зробили, щоб зберегти їх або хоча б відтворити на полотні. "Рескін дивиться на архітектуру не очима естета, а очима проповідника-мораліста, що часто розглядається як недолік. Йому була важливіше моральність і життєва достовірність мистецтва, а співвіднести їх з формою аж ніяк не просто. Як сполучною ланкою між цими категоріями можна використовувати категорію «сенсу».

Рескін шукав не історичних і не вічних, зразкових форм - він шукав осмислені форми. Але тоді може здатися, що він  - функціоналіст і конструктивіст, що бачить в формах цей практичний і технічний сенс. Але Рескін, хоча безумовно зробив вплив на становлення [[Функціоналізм|функціоналізму]] і [[Конструктивізм|конструктивізму]] - сам не був ні функціоналістом, ні конструктивістом. Конструктивні та функціональні мотиви були для нього тільки подробицями, за якими ховається мораль. Бо і функціоналізм і конструктивізм оперують в основному абстрактними відносинами між функцією, конструкцією і формою. Рескін же мислив ці відносини як атрибути людського вчинку і людської цінності. Сенс для Рескіна був сенсом людського життя, який лише частково міг виражатися свідомістю функціональних і конструктивних форм. Він не просто розширював поняття сенсу (функції) до людських відносин, а й бачив втілення цих відносин в ідеалізованому уявленні про мораль сімейного життя (батьки, діти, природа у вигляді присадибного садка) і творчої відданості улюбленій справі, будівництва, ліпленню і живопису. Його ідеал - незалежність творця від диктату моди і всього загальноприйнятого. Саме тому, можливо, для Раскіна настільки важлива категорія «пам'яті». Його «пам'ять» це не стільки пам'ять роду і традиції, скільки індивідуальна пам'ять, пам'ять дитинства, яка пов'язує все в людському досвіді і виступає фундаментальною основою будь-якої символізації.

В архітектурі Рескін бачив один із засобів людського спілкування, того, яке робить людину громадянином, а суспільство - людяним.
Але так зрозумілий сенс не може ні транслюватися, ні тиражуватися - він не пристосований до масової технології і промислового виробництва, так само як і до стилю. Стиль в найпростішому і широкому його розумінні є все-таки тиражуванням нормативного зразка, а сенс індивідуальної комунікації ніяк в норму не вкладається. Сенс є парадоксальна норма ненормативної (зате осмисленої) поведінки.
Обгрунтовуючи свій ряд принципів, Рескін проводить паралель в області хімії і мінерології. Кожній мінерал, - каже він, - має якийсь зовнішній характерний вигляд: колір, блиск, кристалічну структуру. Але справжня його природа зумовлена його хімічною будовою, зв'язком атомів в його молекулах. І ось, виділені їм шість принципів або властивостей готики, він схильний ототожнювати з такими атомами, а вже зовнішній вигляд, форму із зовнішніми властивостями готики.

== '''Висновок''' ==

Відомий англійський письменник, теоретик мистецтва, філософ, художник, один з лідерів руху «Мистецтва і ремесла», що зробив істотний вплив на культурне життя Англії другої половини 19 ст.
Основні погляди на мистецтво і архітектуру можна викласти в кількох тезах:
•	Не визнавав продукцію масового виробництва;
•	Закликав повернутися до ремесел, як альтернативного  фабричного виробництва і можливості підвищити естетичну цінність предметів побуту;
•	Закликав повернутися до природних форм;
•	Заперечував поділ мистецтва на, так зване, чисте і декоративне.
Рескін - критик, він дає зразок розвиненої і надзвичайно артикульованої критики, яка в подальшому розвитку сучасного зодчества тільки згасла. Роль і місце критики втратили визначеність і функціональний сенс. Критику стали ототожнювати з архітектурною публіцистикою, яка не може мати строгих теоретичних постулатів і спокійно вироджується в вітально-путеводійський жанр.
Рескіну було властиво широке культурологічне прочитання явищ мистецтва, взятих в контексті всієї матеріальної культури. Він, наприклад, доводив, що пам'ятники архітектури минулого можуть розглядатися не тільки як шедеври мистецтва і не тільки як історичні свідчення, а й як вираз естетичних поглядів народу. Зараз це не викликає сумнівів, але Рескіну доводилося підкреслювати, що читати будівлю можна так само, як ми читаємо Мільтона або Данте, і отримувати таке ж задоволення від споглядання каменів, як і від віршованих строф.

== Примітки ==
{{reflist}}

1.	https://studopedia.su/12_607_idei-dzhona-reskina.html

2.	«Реставрация памятников истории и культуры», выпуск 2, Л.А. Лелеков, «Проблемы теории и методологии реставрации», с.23. М. 1986

3.	https://studbooks.net/1137338/kulturologiya/pervye_teorii_dizayna_ryoskin_zemper_ryolo

4.	https://otherreferats.allbest.ru/ethics/00426067_0.html

5.	«Лекции об искусстве» Джон Рескин, «Б.С.Г.-Пресс», 2006 г.

6.	http://tehne.com/library/ruskin-j-seven-lamps-architecture-illustrations-drawn-author-sixth-edition-sunnyside-orpington-kent-1889

7.	https://www.wikiart.org/ru/dzhon-ryoskin/all-works#!#filterName:all-paintings-chronologically,resultType:masonry
{{Ізольована стаття}}


text:
# Жералдо Алкмін
Джералдо Жосе Родріґес Алкмін Фільо (порт. Geraldo José Rodrigues Alckmin Filho; (7 листопада 1952 , Піндамоньянгабаd, Сан-Паулу ) — бразильський політик, чинний віцепрезидент Бразилії. Раніше обіймав посаду губернатора Сан-Паулу з 2001 до 2006 рік, та з 2011 до 2018 рік. Кандидат у президенти від Бразильської соціал-демократичної партії на президентських виборах 2018 року де він посів четверте місце, а також на президентських виборах 2006 року, де посів друге місце, програвши у другому турі тодішньому президенту Лулі де Сілва.

## Біографія
Джералдо Хосе Родрігес Алкмін Філью народився в місті Піндамоньянгаба, Вале-ду-Параїба. Алкмін — син Херальдо Хосе Родрігеса Алкміна та Міріам Пентеадо. Джералдо — племінник Хосе Херальдо Родрігеса де Алкміна, який був міністром Верховного федерального суду. Згідно з журналом Época, Джералдо здобув християнську освіту від католицької прелатури Opus Dei та повідомив журналу, що його дядько Хосе Джералдо був членом Opus Dei.
Джералдо одружений з Марією Лусією Рібейро Алкмін і є батьком трьох дітей. Софія, Джералдо та Томаз. Томаз загинув внаслідок краху вертольота 2 квітня 2015 року.

## Політична кар'єра
Алкмін навчався в медичній школі при університеті Таубате за спеціальністю «Анестезіологія», а потім почав працювати в Державній лікарні Сан-Паулу. Алкміна обрали губернатором Сан-Паулу на другий термін 27 жовтня 2002 року в результаті другого туру виборів.
14 березня 2006 року Партія бразильської соціальної демократії висунула Алкміна кандидатом у президенти на виборах 2006 року. Через виборчі правила жоден кандидат, який балотується на посаду, не може зараз перебувати у виконавчій владі, що змушує його піти з посади губернатора 31 березня 2006 року. Тодішній президент Лула та Алкмін зустрілися у другому турі виборів, на яких Алкмін отримав 39 % голосів, програвши Лулі, який був переобраний на другий термін.
У 2010 році повернувся на посаду губернатора та переобраний у 2014 році у четвертий (не поспіль) раз. Він пішов у відставку 6 квітня 2018 року, щоб вдруге балотуватися в президенти на виборах 2018 року, на яких він зайняв четверте місце.
У 2021 році Алкмін залишив Партію бразильської соціальної демократії після 33 років роботи в ній і приєднався до Бразильської соціалістичної партії, щоб стати кандидатом на посаду віцепрезидента Бразилії у парі з Лулою де Сілва на президентських виборах 2022 року, на яких з рештою і переміг. Взійде на посаду віцепрезидента Бразилії 1 січня 2023 року.

title: Жералдо Алкмін

wikitext:
{{Лідер
| ім'я = Джералдо Алкмін
| оригінал імені = [[Португальська мова|порт.]] ''Geraldo Alckmin''
| партія = Бразильська соціалістична партія
| посада = [[Файл:flag of Brazil.svg|20px]] [[Віцепрезидент Бразилії]] [[File:Flag of the Vice President of Brazil (1971–1992).svg|20px]]
| початок_терміну = 1 січня 2023
| перехідний_період =
| президент = [[Луїз Інасіо Лула да Сілва]]
| попередник = [[Амілтон Моуран]]
| зображення = Autoridade Climática EUAJohn Kerry (52766542074) (cropped).jpg
}}
'''Джералдо Жосе Родріґес Алкмін Фільо''' ({{lang-pt|Geraldo José Rodrigues Alckmin Filho}}; {{Життєпис}} — [[Бразилія|бразильський політик]], чинний [[віцепрезидент Бразилії]]<ref>{{Cite web|title=Президентом Бразілії втретє став Лула да Сілва|url=https://lb.ua/world/2022/10/31/534256_prezidentom_brazilii_vtretie_stav.html|website=Lb.ua|accessdate=2022-10-31}}</ref>. Раніше обіймав посаду губернатора [[Сан-Паулу (штат)|Сан-Паулу]] з 2001 до 2006 рік, та з 2011 до 2018 рік. Кандидат у [[Президент Бразилії|президенти]] від [[Партія бразильської соціальної демократії|Бразильської соціал-демократичної партії]] на президентських виборах 2018 року де він посів четверте місце, а також на президентських виборах 2006 року, де посів друге місце, програвши у другому турі тодішньому президенту [[Луїз Інасіо Лула да Сілва|Лулі де Сілва]].

== Біографія ==
Джералдо Хосе Родрігес Алкмін Філью народився в місті Піндамоньянгаба, Вале-ду-Параїба. Алкмін — син Херальдо Хосе Родрігеса Алкміна та Міріам Пентеадо. Джералдо — племінник Хосе Херальдо Родрігеса де Алкміна, який був міністром Верховного федерального суду. Згідно з журналом Época, Джералдо здобув християнську освіту від католицької прелатури [[Opus Dei]] та повідомив журналу, що його дядько Хосе Джералдо був членом Opus Dei.

Джералдо одружений з Марією Лусією Рібейро Алкмін і є батьком трьох дітей. Софія, Джералдо та Томаз. Томаз загинув внаслідок краху вертольота 2 квітня 2015 року.

== Політична кар'єра ==
Алкмін навчався в медичній школі при університеті [[Таубате]] за спеціальністю «[[Анестезіологія]]», а потім почав працювати в Державній лікарні [[Сан-Паулу (штат)|Сан-Паулу]]. Алкміна обрали губернатором Сан-Паулу на другий термін 27 жовтня 2002 року в результаті другого туру виборів.

14 березня 2006 року [[Партія бразильської соціальної демократії]] висунула Алкміна кандидатом у президенти на виборах 2006 року. Через виборчі правила жоден кандидат, який балотується на посаду, не може зараз перебувати у виконавчій владі, що змушує його піти з посади губернатора 31 березня 2006 року. Тодішній президент Лула та Алкмін зустрілися у другому турі виборів, на яких Алкмін отримав 39 % голосів, програвши Лулі, який був переобраний на другий термін.

У 2010 році повернувся на посаду губернатора та переобраний у 2014 році у четвертий (не поспіль) раз. Він пішов у відставку 6 квітня 2018 року, щоб вдруге балотуватися в президенти на виборах 2018 року, на яких він зайняв четверте місце.

У 2021 році Алкмін залишив Партію бразильської соціальної демократії після 33 років роботи в ній і приєднався до Бразильської соціалістичної партії, щоб стати кандидатом на посаду віцепрезидента Бразилії у парі з [[Луїз Інасіо Лула да Сілва|Лулою де Сілва]] на президентських виборах 2022 року, на яких з рештою і переміг. Взійде на посаду віцепрезидента Бразилії 1 січня 2023 року.

== Примітки ==
{{reflist}}

{{Бібліоінформація}}
{{політик-доробити}}
{{DEFAULTSORT:Алкмін Джералдо}}
[[Категорія:Віцепрезиденти Бразилії]]
[[Категорія:Персоналії за алфавітом]]
[[Категорія:Бразильські медики]]
[[Категорія:Анестезіологи]]

title: Віцепрезидент Бразилії

Віцепрезидент Бразилії:
Нині на посаді
Висловлювання у Вікіцитатах
Медіафайли у Вікісховищі

На посаді з: 1 січня 2023

Президент: Луїз Інасіо Лула да Сілва

Попередник: Амілтон Моуран

Народився: 7 листопада 1952 (72 роки) · Піндамоньянгабаd, Сан-Паулу, Бразилія

Відомий як: лікар, політик

Країна: Бразилія

Alma mater: Університет Таубате і Гарвардський університет

Політична партія: Бразильська соціалістична партія

У шлюбі з: Lu Alckmind


text:
# Арно Сегодо
Арно Сегодо (нар. 12 листопада 1984) — колишній бенінський тенісист.
Найвищу одиночну позицію світового рейтингу — 354 місце досяг 2 лютого 2004, парну — 577 місце — 5 квітня 2004 року.

## Фінали ITF Ф'ючерс

### Одиночний розряд: 4 (2–2)
| Результат | В-П | Дата     | Турнір                 | Покриття | Суперник           | Рахунок            |
| --------- | --- | -------- | ---------------------- | -------- | ------------------ | ------------------ |
| Перемога  | 1–0 | Лют 2003 | Нігерія F1, Бенін-Сіті | Тверде   | Адам Хадай         | 3–6, 6–4, 2–0 ret. |
| Перемога  | 2–0 | Бер 2003 | Нігерія F2, Бенін-Сіті | Тверде   | Джонатан Ігбіновія | 6–2, 6–2           |
| Поразка   | 2–1 | Сер 2005 | Сенегал F1, Дакар      | Тверде   | Анрі Аджей-Дарко   | 2–6, 1–6           |
| Поразка   | 2–2 | Жов 2005 | Нігерія F6, Лагос      | Тверде   | Комлаві Логло      | 4–6, 6–3, 3–6      |

### Парний розряд: 2 (2–0)
| Результат | В-П | Дата     | Турнір                 | Покриття | Партнер              | Суперники                         | Рахунок     |
| --------- | --- | -------- | ---------------------- | -------- | -------------------- | --------------------------------- | ----------- |
| Перемога  | 1–0 | Вер 2001 | Іспанія F10, Мадрид    | Тверде   | Карлес Рейксач Ітойс | Пабло Гонсалес Рубен Мерчан-Уекас | 7–6(5), 6–4 |
| Перемога  | 2–0 | Бер 2004 | Нігерія F2, Бенін-Сіті | Тверде   | Ксав'є Одуа          | Джонатан Ігбіновія Сундай Маку    | 7–6(5), 6–4 |

title: Арно Сегодо

wikitext:
{{Тенісист
|ім'я_гравця         = Арно Сегодо
 Arnaud Segodo
|фото                =
|громадянство        =
|місце_проживання    =
|дата_народження     = 12 листопада 1984
|місце_народження    = [[Котону]], Бенін
|дата_смерті         =
|місце_смерті        =
|зріст               =
|вага                =
|початок_кар'єри     =
|завершення_кар'єри  =
|робоча_рука         = ліва
|тренер              =
|призові_гроші       = $16,691
|одиночні_результати             = 7–2 (Кубок Девіса)
|одиночних_титулів               =
|найвища_одиночна_позиція        = Ранг 354 (2 Лют 2004)
|поточна_одиночна_позиція        =
|результати_Australian_Open      =
|результати_Roland_Garros        =
|результати_Wimbledon            =
|результати_US_Open              =
|результати_на_World_Tour_Finals =
|результати_Олімпіади            =
|парні_результати                  = 2–1 (Кубок Девіса)
|парних_титулів                    =
|найвища_парна_позиція             = Ранг 577 (5 Кві 2004)
|результати_парні_Australian_Open  =
|результати_парні_Roland_Garros    =
|результати_парні_Wimbledon        =
|результати_парні_US_Open          =
|результати_парні_Олімпіади        =
|результати_мікст_Australian_Open  =
|результати_мікст_Roland_Garros    =
|результати_мікст_Wimbledon        =
|результати_мікст_US_Open          =
|результати_мікст_Олімпіади        =
|останнє_оновлення   =
|медалі              =
}}

'''Арно Сегодо''' (нар. 12 листопада 1984) — колишній бенінський тенісист.
Найвищу одиночну позицію світового рейтингу — 354 місце досяг 2 лютого 2004, парну — 577 місце — 5 квітня 2004 року.

== Фінали ITF Ф'ючерс ==
=== Одиночний розряд: 4 (2–2) ===
{|class="sortable wikitable"
!Результат
!class="unsortable"|В-П
!{{Ns}}Дата{{Ns}}
!Турнір
!Покриття
!Суперник
!class="unsortable"|Рахунок
|-style="background:#cffcff;"
|style="background:#98fb98;"|Перемога
|1–0
|Лют 2003
|Нігерія F1, [[Бенін-Сіті]]
|Тверде
|{{flagicon|POL}} [[Адам Хадай]]
|3–6, 6–4, 2–0 ret.
|-style="background:#cffcff;"
|style="background:#98fb98;"|Перемога
|2–0
|Бер 2003
|Нігерія F2, [[Бенін-Сіті]]
|Тверде
|{{flagicon|NGR}} [[Джонатан Ігбіновія]]
|6–2, 6–2
|-style="background:#cffcff;"
|style="background:#ffa07a;"|Поразка
|2–1
|Сер 2005
|Сенегал F1, [[Дакар]]
|Тверде
|{{flagicon|GHA}} [[Анрі Аджей-Дарко]]
|2–6, 1–6
|-style="background:#cffcff;"
|style="background:#ffa07a;"|Поразка
|2–2
|Жов 2005
|Нігерія F6, [[Лагос]]
|Тверде
|{{flagicon|TOG}} [[Комлаві Логло]]
|4–6, 6–3, 3–6
|}

=== Парний розряд: 2 (2–0) ===
{|class="sortable wikitable"
!Результат
!class="unsortable"|В-П
!Дата
!Турнір
!Покриття
!Партнер
!Суперники
!class="unsortable"|Рахунок
|-style="background:#cffcff;"
|style="background:#98fb98;"|Перемога
|1–0
|Вер 2001
|Іспанія F10, [[Мадрид]]
|Тверде
|{{flagicon|ESP}} Карлес Рейксач Ітойс
|{{flagicon|COL}} [[Пабло Гонсалес (тенісист)|Пабло Гонсалес]]
 {{flagicon|ESP}} Рубен Мерчан-Уекас
|7–6(5), 6–4
|-style="background:#cffcff;"
|style="background:#98fb98;"|Перемога
|2–0
|Бер 2004
|Нігерія F2, [[Бенін-Сіті]]
|Тверде
|{{flagicon|FRA}} Ксав'є Одуа
|{{flagicon|NGR}} [[Джонатан Ігбіновія]]
 {{flagicon|NGR}} [[Сундай Маку]]
|7–6(5), 6–4
|}

== Примітки ==
{{Reflist}}

== Посилання ==
* {{ATP|sb31}}
* {{Davis Cup player|800205644}}
* {{ITF profile|arnaud-segodo/800205644/ben}}

{{DEFAULTSORT:Сегодо Арно}}
[[Категорія:Народились 1984]]
[[Категорія:Бенінські тенісисти]]

title: Арно Сегодо · Arnaud Segodo

Дата народження: 12 листопада 1984 (40 років)

Місце народження: Котону, Бенін

Робоча рука: ліва

title: Одиночний розряд

Матчів в/п: 7–2 (Кубок Девіса)

title: Парний розряд

Матчів в/п: 2–1 (Кубок Девіса)