vak: (Путиномедвед)
Заметьте, насколько увеличился авторитет украинского президента среди россиян. Ведь не действия Обамы обсуждают, не Трампа, а - указ Порошенко! Чирк пером, и все трепещут.
vak: (Default)

If I lived a dream,
I’d ask you to dance,
with time standing still just for you.

And though I forget
it’s only a dream,
I picture your face all day through.

Dance, love.
Smile, and you are glistening.
Laugh as no one’s listening,
and never let me leave.

Make me
forget about our quarrels.
In dreams, there are no sorrows.
May i spend this dream with you?

Dance, love.
Smile, and you are glistening.
Laugh as no one’s listening,
and never let me leave.

Make me
forget about our quarrels.
In dreams, there are no sorrows.
And I’m once again with you.

In dreams, there are no sorrows.
May i spend this dream with you?
vak: (Default)
(http://aerostatica.ru/2017/05/14/626-arvo-pyart/)

Здравствуйте, друзья мои!

Сегодня с Божьей помощью хочу вместе с вами послушать музыку Арво Пярта.



Уже несколько десятков лет эстонский композитор Арво Пярт - самый исполняемый из всех живых композиторов Земли. Если и есть в мире живые классики, то он один из них. Музыку Пярта описывать сложно, да я бы и не стал. Его называют “пишущим музыку монахом”, а его произведения - “святым минимализмом”. Александр Генис как-то сказал: “На Арво Пярта ходят как в церковь”. Музыку Пярта любят Гидон Кремер и Кит Джарретт, Ник Кэйв и Бьорк. Однажды один американский критик написал очень точно: “Пярт осмеливается замахнуться на то, к чему другие не смеют и пальцем прикоснуться, - на божественное”.



Арво Пярт родился в эстонской глубинке. Дома у них стояло сильно потраченное временем пианино, и мальчик Арво начал экспериментировать с верхними и нижними нотами на клавиатуре, потому что вся середина пианино не работала. Его музыкальное образование началось лет в семь, свою первую музыку он сочинил в 14. Поступил в Таллиннскую консерваторию, про него там говорили: “Ему достаточно потрясти рукавом, и из него выпадают ноты”. В студенческие годы он писал музыку для театра и кино, потом работал звукорежиссером на эстонском радио. А для себя продолжал писать серьезную музыку, а серьезной музыкой тогда считался академический авангард.

Его первая значительная работа “Некролог” появилась в начале 60-х. Тогдашний председатель Союза Композиторов СССР Тихон Хренников обругал её за “подверженность иностранным влияниям”, но в Союзе Композиторов царил тогда такой чудный хаос, что несмотря на резкое мнение главного, произведение Пярта получило первый приз из 1200 поданных на конкурс. Он стал известен как один из самых радикальных авангардистов СССР. Известен он стал, но музыку его не исполняли - боялись неприятностей. Да и сам он начал разочаровываться в возможностях авангарда. В конце концов Арво Пярт на восемь лет замолчал. Его биограф Пол Хиллиер писал: “Он достиг положения полного отчаяния, в котором сочинение музыки казалось самым бессмысленным из занятий, и у него не было музыкальной веры и силы воли, чтобы написать хотя бы одну ноту”. Вместо сочинения музыки он занялся изучением хоровой музыки Средневековья, школы Нотр-Дама, григорианского хорала и возникновением полифонии. В истории музыки он продолжал искать себя и свою душу. Как он говорил потом: “Григорианское пение научило меня, какая космическая тайна скрыта в искусстве комбинирования двух или трех нот”.



Музыка, которую он начал писать после этого периода, стала радикально другой. Сам Пярт называет ее “тинтинабули” - музыка колокольчиков. Он объясняет: “Тинтинабули” - это бегство в добровольную бедность. Это область, в которую я иногда забредаю, когда ищу ответы - в жизни, в музыке, в работе. В мои темные часы у меня возникает ощущение, что все вне этой единственной области не имеет значения. Сложное и многогранное только приводит меня в смятение, и я должен искать единство. Что это за одна совершенная вещь, и как мне найти путь к ней? Следы ее появляются в разных обличьях - и все, что не важно, просто отпадает. Я обнаружил, что бывает достаточно, когда красиво сыгран один-единственный тон. Тишина всегда совершеннее музыки. Нужно научиться слушать тишину”.



Композитор-минималист Стив Райх пишет: “Хоть Арво Пярт и жил в Эстонии, он чувствовал то же, что чувствовали все мы. Я люблю его музыку и я люблю тот факт, что он такой смелый и талантливый человек. Он совершенно не идет в ногу с духом времени, и, однако, невероятно популярен, что вдохновляет. Его музыка удовлетворяет глубинную человеческую жажду, не имеющую ничего общего с модой”. А руководитель ансамбля Hortus Musicus, впервые исполнившего ряд сочинений Пярта, - скрипач и дирижер Андрес Мустонен, много работавший с Арво Пяртом, говорит: “По сравнению с другими современными композиторами Пярт пришел будто из другого мира.



После восьми лет молчания Пярт начал писать заново, как человек, который учится ходить. Пярт начал с нуля. И не только в музыке: воспитанный в лютеранстве Пярт крестился в православие под именем Арефа. И начал писать религиозную музыку. Сочетание честности, религиозности и непривычности музыкального мышления сделало Пярта совсем ненужной в советском мире фигурой. В 80-м власти намекнули ему, что лучше бы он убрался подальше из СССР. Арво с семьей переехал в Германию. С этого времени его музыка начала постепенно приобретать мировое признание. Впрочем, как только перестройка уничтожила стены, выстроенные “холодной войной”, Арво Пярт вернулся в Эстонию, теперь живет то там, то здесь. Вернее, теперь его дом - весь мир. Вот одна из его самых известных вещей “В память Бенджамина Бриттена”, cantus.



Пярт крайне редко говорит с журналистами, поэтому все его попавшие в информационное пространство слова - на вес золота. “Если кто-то хочет меня понять, ему следует слушать мою музыку, если кто-то хочет понять мою философию, он может послушать проповеди любого священника, если кто-то захочет узнать что-то о моей частной жизни, то могу сказать, что я всегда держу ее закрытой от посторонних. В моей музыке две линии: одна - это мои грехи, а вторая - их прощение. Та, первая - сложнее и субъективнее, а вторая - простая, чистая и объективная”.



И напоследок - о вдохновении: “Человека должно вдохновлять все. Если есть глаза - видишь, если есть уши - слышишь, если есть сердце - то можно понять очень многое. Надо стремиться, чтобы глаза видели, уши слышали, а сердце понимало, но это самое трудное”. “Однажды я стоял в дверях церкви, шла служба, и одна из юродивых вдруг обернулась, посмотрела на меня, назвала меня по имени и сказала: “Арефа, если не будешь говеть каждый день, будешь сухой, как лист!”.

В этом году Арво Пярту исполняется 82 года. И от всей души я желаю ему никогда не быть сухим как лист, а желаю многих лет работы и вдохновения. Ради всех нас.

Спасибо!

vak: (Default)
Красивые синтаксические диаграммы в стиле Паскаля можно делать утилитой ebnf2ps .



Установка на Ubuntu делается следующим образом.
$ git clone https://github.com/FranklinChen/Ebnf2ps.git
$ cd Ebnf2ps
$ sudo apt install cabal-install htmldoc-common
$ cabal update
$ cabal install old-time happy
$ cabal build
$ sudo cp dist/build/ebnf2ps/ebnf2ps /usr/local/bin
Для работы утилиты надо установить переменные:
$ export AFMPATH=/usr/share/htmldoc/fonts/
$ export RGBPATH=/usr/share/X11
Документация находится в файле doc.pdf.
vak: (Default)
C++ это еще цветочки, бывает веселее. Что напечатает следующая программа на языке Джаваскрипт?
[!+[]+!+[]+!+[]]+[+[]]
А напечатает она ровно то же самое, что и предыдущая:
$ nodejs
> [!+[]+!+[]+!+[]]+[+[]]
'30'
>
(объяснение здесь)
vak: (Default)
Что напечатает следующая программа? Компилируем посредством "clang++ -std=c++11 lol.cc -o lol".
#include <iostream>

using namespace std;

int main() {
int lol = 10;
int l​ol = 10;
int l​o​l = 10;
int l​​ol = lol + l​ol + l​o​l;
cout << l​​ol << endl;
return 0;
}
(отсюда)
vak: (Default)
В нашей семье прибавление. Знакомьтесь: Трина.



Сегодня мы ездили на кошачье ранчо The Cat House on the Kings, где удочерили весёлого и общительного котёнка. Или правильно говорить "укошерили"?

vak: (Default)
В качестве теста возьмём упомянутый наибольший делитель.
module gcd (
input activate,
input [7:0] a,
input [7:0] b,
output [7:0] c
);
reg [7:0] x, y;

always while (activate) begin
fork
x <= a;
y <= b;
join

while select
x > y:
x = x - y;
y > x:
y = y - x;
endselect

c <= x;
end
endmodule
Парсер преобразует исходный текст в следующее синтаксическое дерево:Осталось научиться генерить из этого дерева асинхронную схему.
vak: (Default)
Компьютер в ретро-стиле сделан на основе платы Raspberry Pi. Подробные инструкции по изготовлению смотрите по ссылке: http://www.instructables.com/id/Steampunk-Raspberry-Pi-Laptop/



Внутренности:

vak: (Default)
Закончил парсер для языка Verilog. Удалось приспособить Yacc-овскую грамматику от проекта Yosys, переписав её на Go. Лексический сканер позаимствовал от самого компилятора Go.

Узнал много забавного про константы в Верилоге. Обычный десятичный литерал типа 123 имеет знаковый тип. Если добавить к нему десятичный префикс ('d123), он становится беззнаковым. Чтобы снова превратить его в знаковый, надо добавить буковку s: 'sd123. Разницу можно заметить на примерах:
5 - 10 = -5
'd5 - 10 = 4294967291
'sd5 - 10 = -5
vak: (Default)
— Яша, вы женаты?
— Нет, это меня кот поцарапал.
(с)
vak: (Default)
Сервер 2xARM64 с операционной системой Ubuntu 16.04, память 2Гб, диск 50Гб, сетевой порт 200Мбит/с с неограниченным трафиком, и всё это за €3 в месяц. Подробности здесь: https://blog.online.net/2017/04/27/scaleway-disruptive-armv8-cloud-servers/

Отлично подходит для организации веб-сервера или персонального VPN.
vak: (Default)
Посещение авиационного музея в Монино, август 1990.



Подскажите модели самолётов. Я не разбираюсь совсем.



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



Старшему сыну здесь четыре года.

vak: (Default)
Обнаружил в языке Verilog неожиданную фичу, не описанную ни в одной книжке. Оказывается, диапазоны можно задавать в виде X+:Y или X-:Y, что эквивалентно X+Y-1:X и X:X-Y+1 соответственно. К примеру, эти три присваивания эквивалентны:
    value[10:8] = 0;
    value[10-:3] = 0;
    value[8+:3] = 0;