Erlang’s Blogue

Сумрачный блог Кирилла Панфилова

Двенадцать способов обойти закон бутерброда

Цитатки || 24 ноября (01:20) || Комментарии (1)

1. "Терминологическое воздействие"
После падения производится взаимное переименование хлеба и масла, в результате чего масло оказывается сверху.
2. "Дублирование активного слоя с последующим переопределением"
Бутерброд намазывается с двух сторон. После падения нижнее масло исключается из рассмотрения. То, что остается, как раз и является бутербродом лежащим маслом вверх.
3. "Защитное покрытие"
На масло сверху намазывается слой икры, защищающий масло в случае падения бутерброда.
4. "Инверсия с предварительным резервированием"
В местах предполагаемого падения бутерброда размещаются ломти хлеба. После падения верхний (исходный) ломоть удаляется, и бутерброд, состоящий теперь из резервного ломтя и масла, лежит вверх последним.
5. "Своевременный монтаж"
Масло намазывается на уже упавший хлеб.
6. "Способ Эйнштейна"
Бутерброд выводится на околоземную орбиту, где понятие "низ" вообще теряет смысл.
7. "Рациональный"
Бутерброды с маслом исключаются из рациона.
8. "Постгуманитарный"
Упавшие бутерброды с маслом сохраняются для гостей.
9. "Перпендикулярный"
Бутерброд намазывается по ребру.
10. "Презумпция невиновности"
Бутерброд отмазывается от падения.
11. "Инъекционный"
Масло не намазывается на хлеб, а растапливается и с помощью шприца вводится ему под корочку.
12. "Замена вида активного слоя"
При изготовлении бутерброда вместо масла используется маргарин. Пусть теперь падает как хочет, сволочь.

Киборг

Копилка || 23 ноября (17:41) || Комментарии

Иллюстрация

Обожаю такие вещи.

Under construction

Разработка || 18 ноября (15:58) || Комментарии

Да, и в блоге-движке обязательно должна быть функция, которая на время закрывает весь сайт, а при заходе на любую страницу показывает объявление о реконструкции: либо системное сообщение, либо редирект на указанную в настройках страницу.

Логичная блочная модель

Разработка || 18 ноября (00:36) || Комментарии

Описание

Примеры

Код:

element {
	width:100%;
	border:20px solid green;
	padding:20px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-ms-box-sizing: border-box; /*эта строка 
		уже не нужна, 
		начиная с Beta2 IE8 
		поддерживает box-sizing*/
	box-sizing: border-box;
}

Опции видимости записей

Разработка || 14 ноября (10:47) || Комментарии

Все записи, кроме черновиков, добавляются в основной реестр. Но при этом в отдельном реестре помечать нужные записи как скрытые. Загружаются оба реестра, читаются данные, если в реестрах скрытых записей есть указания на эти записи, то они выводятся только для авторизованного пользователя. Черновики — только для автора. Скрытые записи видны автору или, если при сохранении была указана опция «Показывать зарегистрированным пользователям», то всем пользователям после входа на сайт. При редактировании эти опции можно изменить. 

Черновики в любом случае хранятся в отдельном реестре, потому что они не привязаны к дате, в отличие от скрытых записей. Запрос черновиков — отдельная функция для админов и авторов.

Как загружаются реестры записей на главной странице. Принято, что загружается реестр текущего года, а если в нём записей меньше, чем нужно для вывода постов, или часть записей помечена как скрытая, то подгружается также реестр прошлого года. Если реестра текущего года нет, то также грузится реестр прошлого года. 

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

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

Плагины к iLyte 2.0

Разработка || 12 ноября (16:12) || Комментарии

Плагины к iLyte 2.0 делятся на 2 типа:

1. Увеличение функциональности сайта. В этом случае достаточно положить в папку контроля файл, который возвращает какое-то значение в зависимости от выполненных условий. Доступ к плагину — по адресу в адресной строке (название файла без расширения, если не задействована система псевдонимов).

2. Увеличение функциональности системы администрирования. В папке контроля кладётся папка ext, внутри которой лежат сами плагины и реестр активированных плагинов. Если есть эта папка, то в админской части системы появляется ссылка на редактирование плагинов. Каждый можно активировать, и в этом случае он будет доступен как отдельный пункт системы администрирования. Реестр активированных плагинов, конечно, можно редактировать и вручную: достаточно написать название плагина в отдельной строчке, а через запятую в той же строке число 1 или 2, обозначающее права доступа к плагину.

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

Блогпост

Разработка || 6 ноября (21:26) || Комментарии

Собираю опции, которые встречаются при написании новых постов в блоги:
1. Собственно пост
2. Заголовок
3. Экспорт в RSS
4. Присоединение изображения
5. Скрытый пост
6. Видимый избранному составу
7. Черновик
8. Редактор / голый HTML
9. Специфический адрес для поста
10. Включать дату в URL
11. Изменить дату поста (сдвинуть во времени)
12. Кат (cut), укорачивание поста
13. Отдельный блок до «читать дальше»
14. Смайлы
15. Темы (тэги, ключевые слова)
16. Пост как эпиграф
17. Уведомления о комментариях
18. Запрет комментариев
19. Автосохранение
20. Приложенные файлы

Семантико-структурная типология

Linguarium || 31 октября (14:54) || Комментарии

Давным-давно, в одной далёкой галактике... В общем, 6 лет назад я закончил писать дипломную работу на тему стадиальной типологической классификации языков. Принцип — совмещение анализа формальной и семантической структур языков и наложение анализа на диахроническое развитие.
Основы: язык развивается от простого к сложному, а перейдя переломный этап, снова упрощает свою структуру. В процессе он проходит через несколько стадий, которые характеризуются как формальными, так и семантическими особенностями. На ранних стадиях синтаксический строй вообще слабо выражен, чем дальше — тем больше появляется вариаций. Структурная доминанта для остальных характеризующих черт — тип факультативности выражения грамматических категорий. Если на ранних этапах развития языковой структуры обязательно для формального выражения только то, без чего смысл потеряется, то с развитием факультативность уступает место избыточности. Одно и то же грамматическое значение зачастую выражается во фразе дважды, трижды и т.п.
По поводу факультативности я ещё напишу большую статью с кучей примеров.
Пока писал диплом, выявил в языках несколько закономерностей, законов и правил сочетаемостей, которые действуют почти без исключения в большом количестве языков и которые до меня никто не описывал.
Например, в общем виде описал семантико-формальную структуру нейтрального типа языков: отсутствие в глагольной морфологии и факультативное присутствие в именной морфологии формальных средств выражения актантно-предикативных отношений, слабая морфологическая оформленность всех грамматических классов слов и соотносимость языков этого типа с изолирующим и основоизолирующим строем; наличие релевантных тонов; лексика характеризуется полисемантизмом большого количества слов; редупликация выступает то как словообразовательное средство (малинке bori-bori отгл. “бег”), то как формообразовательное (индонез. orang-orang мн. число “люди”); в системе словообразования распространены сложения; отсутствие или незначительное количество аффиксов обусловливает широкие возможности конверсии; ряд полнозначных слов способен выступать в функции грамматических или словообразовательных формантов; обращает на себя внимание частотное использование слова “ребенок” как диминутивного форманта (например, вьетн. con, кит. zi и др.); прилагательные как часть речи б.ч. отсутствуют — их функции выполняют глаголы с качественной семантикой; для глагольной системы в целом характерна категория вида; темпоральные значения формируются из видовых или наряду с ними (наиболее типичное противопоставление — перфектив, дюратив и вневидовая форма); частотная характеристика: отрицательный формант выбирается в зависимости от видовой формы глагола; употребление слов без грамматических формантов (т.е. в виде корня или основы) очень распространено — факультативность грамматического оформления заключается в употреблении формантов только при необходимости подчеркнуть какое-либо грамматическое значение; характерно употребление неоформленного имени (особенно неодушевленного) в значении как единственного, так и множественного числа (кит. ren “человек, люди”), однако сама категория числа имеется — раньше всего она формируется у личных местоимений и у одушевленных существительных; нередко при имени употребляются притяжательные форманты, причем чаще всего различаются формы органической и неорганической принадлежности; связь слов в синтагме и нередко тема-рематическое членение фразы осуществляется при помощи порядка слов, служебных слов и интонации. Языки, подходящие под описание этого типа – китайские диалекты и дунганский, лоло-бирманский, тибетский, манипурский, каренские, тайский, кадайские, мяо-яо, ряд аустроазиатских (например, вьетмыонгские), индонезийские, мальгашский, полинезийские и некоторые другие океанийские; в Африке – часть западноатланических, группы манде, гур, ква (гвинейские), бане и остальные бенуэ-конголезские (кроме банту), адамауа, кордофанские; некоторые группы папуасских языков (например, сев.-хальмахерские); из индейских – часть языков майя-киче, вакашские и предположительно салишские.
Далее. Я расширил понятие флективных языков, к которым необоснованно относили только индоевропейские. Саамский из уральских и семито-хамитские из афразийских тоже выполняют все критерии.
Выделил подтип номинативно-эргативных языков (типа невари, баскского, табасаранского), о которых никто не писал.
Описал номинативные языки т.наз. «японско-корейского подтипа» с большим количеством интересных особенностей.
Сформулировал два стабильно работающих в агглютинативных языках правила, которые препятствуют развитию флективности: правило больших наборов и правило одностороннего расположения.
Первое заключается в том, что развитие флективности блокируется значительными наборами (порядка двадцати) однорядных и однопарадигматических аффиксов в некоторых агглютинативных языках. Например, в банту языках — классно-числовыми показателями, сплавление с которыми, например, падежных показателей затруднило бы идентификацию и тех, и других. К слову, кроме флективности, блокируется и развитие падежной системы (как в фула и в некоторых других западно-атлантических). По тому же принципу происходит блокировка развития флективности (и согласовательных лично-числовых аффиксов) в корейском языке, где есть большой набор аффиксов наклонения и дополнительных обстоятельственных значений.
В большинстве аффиксальных языков действует второе из названных правил — правило одностороннего расположения, согласно которому все аффиксы реляционной семантики располагаются с одной стороны от корня (либо как префиксы, либо как постфиксы, в редких случаях ещё как конфиксы, инфиксы и трансфиксы, но не бывает так, чтобы падеж выражался префиксом, а число постфиксом) — за исключением аффиксов определительно-обстоятельственной семантики (артикли, аффиксы способа действия и т.п.).

P.S. Несмотря на мои разработки, меня выгнали из аспирантуры.

Дополняю PHP

Разработка || 29 октября (23:23) || Комментарии

Пишу для второй версии движка блога универсальные функции.
Например, одна из моих любимых: функция записи в файл. Работает корректно в PHP 4 и 5. Проверяет корректность пути к файлу для записи. Имеет три режима: полная перезапись (по умолчанию), дозапись в начало и в конец файла. Если файла ещё нет, он создаётся. Если ещё нет директорий, в которых будет лежать нужный файл, то они попутно создаются (какой бы ни был длинный путь к файлу) с назначением корректных прав. Если отсутствует только часть пути, то создаётся только она. Перед записью производится очистка данных от ненужных обратных слэшей. Функция не только производит запись, но и возвращает строку из финального содержимого файла.

Все записи

Selecta selectorum

Поиск по записям

Справочник

Семантическая вёрстка

Сайт с блочной вёрсткой

Красивые URL

Спецсимволы

Псевдокласс :hover в IE

iLyte 2.0

Эстафета

Certain softness

Копилка (тема)

За кистью вслед (тема)

Omnia mea...

Erlang

Devanagari

Euskara Exotica

Web Rancho

Web Rancho II или III

Erlang’s Treasures

Singularity

Amici mei

Искусительница

Фьёла

Manno Design

DJ CeRT

...mecum porto

PHP.su

HTMLBook

CSS Zen Garden

GIF preloaders

BGpatterns

Коллекция шрифтов

CMS World

Fresci internetarii

Code is art

WellStyled

N.Design Studio

Linguarium

Яндекс.Словари

Poliglos

Nihon Go & Freedict

Tieng Viet

 

© Erlang, 2008: iLyte | Редактировать