Ключевые слова prefix, infix и postfix позволяют опредить новые операторы или переопределить существующие.
Синтаксис напоминает создание обычных функций. Читать далее «Перегрузка операторов»
Разделение памяти
Одно из ограничением использования SMP — является так называемое разделение памяти. Как вы понимаете, процессоры не могут одновременно обращаться к общей памяти. Процессоры должны синхронизировать свою работу при обращении к памяти, и по возможности записывать обрабатываемые данные в собственный кэш. Читать далее «Разделение памяти»
Процессор Xeon
Я работал над проектом, где в качестве системы использовалась система с четырьмя процессороми Xeon (данный процессор имеет кэш размером 1 Mb). Полученным опытом я могу поделиться с вами. Читать далее «Процессор Xeon»
Кэш процессора
Кэш процессора один из факторов объясняющих почему современные процессоры так быстро работают. Без использования кэша современным процессорам (например с тактовой частотой 1 гигагерц и частой работы памяти 100 мегагерц) пришлось бы простаивать ожидая когда они получат данные. Читать далее «Кэш процессора»
Интерполирование вызовов методов
Perl традиционно позволяет интерполировать переменные в строках, заключенных в двойные кавычки. Читать далее «Интерполирование вызовов методов»
Веб-программирование на Perl 6
Программу, написанную на Perl 6, можно запустить не только из командной строки. Вполне доступно — даже на нынешнем этапе развития этого языка — создать несложные веб-приложения. Читать далее «Веб-программирование на Perl 6»
Локальность переменной цикла
В предыдущих примерах переменная цикла не предварялась ни одним из возможных модификаторов (например, my или temp). Это наводит на мысль о том, какая переменная используется — глобальная? локальная? может быть создается переменная, которая продолжает существовать после завершения цикла? Читать далее «Локальность переменной цикла»
Неизбежность Linux’а
Желание увидеть работающий Perl 6 привело к забавной борьбе. С одной стороны, я весьма недружелюбно настроен к тому, чтобы работать на локальной машине в Linux’е. С другой, parrot-0.0.10 явно не собирался (можно даже сказать, не клеился) под Windows. Читать далее «Неизбежность Linux’а»
Perl6 в составе дистрибутива Parrot
Почти все необходимое для работы Perl 6 содержится в подкаталогах parrot/languages/perl6 и parrot/languages/imcc. Разумеется, parrot тоже должен быть доступен. Кроме того, на машине обязательно должен быть установлен Perl 5. Для сборки дистрибутива потребуется компилятор C++ (конечно, для бинарного дистрибутива Parrot on Win32 его наличие не обязательно). Читать далее «Perl6 в составе дистрибутива Parrot»
Анализ примеров Perl 5. Конкатенация
В Perl 5 «сложение» строк было возложено на оператор (точка). В то же время большие числа можно было записывать, разделяя их на части, соединенные символом подчеркивания (например, my $i 123_456;).
В Perl 6 действие символа подчеркивания для конкатенации распространяется и на строки. Читать далее «Анализ примеров Perl 5. Конкатенация»