войти зарегистрироваться

PHPTemplate Hypertext Preprocessor — язык программирования, презентация open source проекта

Представляю вам новый open source проект. Надеюсь, что он будет интересен хабраобщественности и IT общественности в целом. Размещаю в блоге PHP, потому что интерпретатор написан на PHP и может быть непосредственно использован для создания решений.
Template Hypertext Preprocessor – Специализированный, cверхвысокоуровневый, скриптовый язык программирования, для генерации динамических блоков html документа. Отличается особым удобством для создания и модификации динамических интерфейсов html страниц, встраивается в язык разметки html с сохранением валидности исходного документа, прозрачен с точки зрения ООП, является платформенно независимым.

Для данного языка программирования реализован интерпретатор, основанный на языке PHP под названием “Template Engine”. Интерпретатор, отличается компонентной многоуровневой архитектурой, создает разумные ограничения работы на уровне спецификации, позволяет запускать голый PHP код и нативные PHP файлы в среде Template Engine. Спецификация THP / Template Engine создана таким образом, что бы максимально упростить разработчикам создание приложений и их расширение, а так же максимально структурировать код.

Видеотуториал


Для тех, кто хочет перейти сразу же к практике я подготовил видеотуториал по установке и объяснению базовых узлов системы. Установкой является: скачать и расположить на сервере, все остальное за исключением паролей БД, должно заработать само. Сайт проекта: http://thp.wartur.ru/



Дополнительная общая информация под катом

Идеи для стартаповЯзык описания экономических расчётов — идея программы из песочницы

Главная цель этой статьи это не получение инвайта, а возможность поделиться идеей и получить комментарии по поводу её целесообразности и перспективности от сообщества специалистов. (Инвайт за эту статью я уже получил — спасибо неизвестному хабр другу)
Когда-то я работал программистом в проектом институте в экономическом отделе.
Мы производили экономические расчёты для крупной организации (Башнефть). Я обеспечивал техническое обеспечение этих расчётов.
Я столкнулся с тем, что по настоящему удобного инструмента для этих целей нет.
У меня появилась идея подобного инструмента- специального декларативного языка, напоминающего Prolog- языка описания экономических расчётов.

MozillaЯзык программирования Rust

Разработчики из Mozilla Research опубликовали презентацию, в которой рассказали о прогрессе за последний год в разработке экспериментального языка программирования Rust, преимуществах Rust перед Google Go, о его применении в проектах Mozilla, а также о типичных примерах использования в будущем.

Rust — новый мультипарадигменный, исключительно функциональный, императивно-процедурный, объектно-ориентированный язык программирования, над которым Mozilla Research работает с 2009 года (сам проект ведёт историю с 2006 года). Исходные тексты распространяются через Github под лицензией BSD.

Как и Go, язык программирования Rust объединяет производительность и безопасность компилируемых языков (как С++) со скоростью разработки динамических языков (как Python).

PHPИнтерпретатор Brainfuck


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

Веб-разработкаАнонсирован язык Opa: Сделаем Веб-разработку прозрачной

Был публично анонсирован новый язык программирования с открытым исходным кодом Opa (Опа), созданный с целью сделать веб-разработку прозрачной. Opa автоматически генерирует клиентский Javascript и осуществляет коммуникацию и контроль сессии. Конечной целью данного проекта является возможность написания распределенных веб-приложений с помощью одного языка программирования для логики приложения, запросов к базе данных и пользовательских интерфейсов. Среди существующих приложений, уже разработанных на Opa, есть те, на которые стоит посмотреть. Для начала посетите домашнюю страницу проекта, которая содержит обширную документацию, код проекта находится на GitHub. Конкурс разработки на Opa завершается 17-го октября.

Википедия«Лишние» языки программирования удаляют из Википедии

В Википедии развернулось настоящее сражение между группой пользователей, которые пытаются удалить «лишние» языки программирования, и теми, кто возвращает их обратно. За последние сутки уже удалены статьи о Nemerle и Alice ML, а также помещены в список для удаления статьи о Factor, Joy, Ioke, Pure и др. Всех сочувствующих просят зайти на Википедию и указать свидетельства значимости этих тем, чтобы их сохранить.

ПрограммированиеЯзык программирования APL из песочницы

«В скором будущем стоимость аппаратной части компьютеров, необходимой для запуска и работы программы будет ничтожно мала по сравнению со стоимостью труда программиста, поэтому имеет смысл развивать языки программирования, которые, хоть и более требовательны к ресурсам компьютера, зато позволяют минимизировать количество кода», — примерно так рассуждал доктор Джим Браун, возглавлявший группу APL девелоперов IBM в середине 80х. Что ж, его прогнозы оправдались лишь отчасти. Сейчас APL применяется, и вполне успешно для программирования финансовых и научных расчетов, входит в состав .NET платформы и в TIOBE Index на ноябрь 2010 занимает 33 место (рейтинг 0,366%).

GoogleЯзык Go не будет менять название: обсуждение закрыто

14 часов назад представители Google перевели в read-only ветку Issue 9, которая к нынешнему моменту уже перевалила за 1000 сообщений. В течение почти года с момента официального релиза языка программирования Go в этой ветке не прекращались споры, как его переименовать.

Проблема в том, что уже десять лет существует язык программирования Go!, автор которого Фрэнсис МакКейб с первых же дней объяснял на гугловском форуме свою позицию. Он говорил, что потратил много времени и сил на его разработку, а появление нового языка под тем же названием внесёт очевидную путаницу.

Персональные блоги язык программирования M, он же MUMPS, ДИАМС. параллельная обработка

! привет
.свою сагу начну с упоминания моего учителя и профи языка программирования М и удивительного друга Александра Велиева который ведёт сайт www.cgi2m.net.ua откуда я и копирую со своими комментариями его статью

:: Параллельная обработка :.



Я счастлив, что М успешно справился с новым вызовом времени — параллельной обработкой.
Это новейший и абсолютно иной вид программистского мышления.

Как я боялся своей программы


Начало этой истории — зима 2006 года.
Знакомая попросила для брата-студента книгу о Прологе.
Я разыскал Пролог-библию Братко и наконец решил её прочесть снова.
В ней я прочёл, как элегантно Братко нашёл алгоритм наибольшего общего делителя без вычислений.
Это решение было настолько элегантно, что я решил написать что-либо подобное в М.
Я написал программу на бумаге и боялся её запустить.
Как старый мумпсер я знал о строгих ограничениях на количество подпроцессов и не мог оценить размера базы данных, который для этого понадобится.
Я не хотел начинать испытания такой элегантной и мощной программы с таких вещей, как крах базы данных или отказ компилятора.
Но узнав GT.M лучше, я начал сомневаться в своих сомнениях и решил попросить совета на comp.lang.mumps.
Сразу же г-н. K.S.Bhaskar ответил мне.
Благодаря его советам и поддержке я смог её успешно испытать. Вот код:
 ;Эта программа создаёт численные ряды
 ;a - простые числа(делятся на 1 и себя)
 ;b - ряды делителей
 ;c - ряд простых чисел
example ;
 k ^a,^b,^c,^pid s Lim=1000000,^p=0,h1=$h
 f i=2:1:Lim s ^a(i)=i
 s (i,^c(1))=1 f  s i=$o(^a(i)) q:i=""  d
 .j a(i,Lim)::0 i  d c
 .e  d a(i,Lim) w Lim,i,!
 s h2=$h zwr  q
a(v1,v2) s ^pid($j)=,(^b(v1,v1),^c(v1))=v1,c=v1+v1
 i c<v2 f n=c:v1:v2 k ^a(n) s (^b(v1,n),^c(n))=n
 k ^pid($j) q
c k p m p=^pid s c="" f s=0:1 s c=$o(p©) q:c=""
 s c=$g(p) s:c<s ^pid=s w P ,i, ,s, ,c,! q

Испытания этой программы в GT.M было успешным — об этом Вы можете прочесть на форуме comp.lang.mumps.

PHPВышел долгожданный PHP 5.3.1 стабильный релиз

  • Добавлена директива max_file_uploads которая управляет максимальным количеством загружаемых файлов для избежания DDos (атака отказ от обслуживания) через переполнение каталога для временных файлом TMP.
  • Добавлены отсутствующие проверки для exif;
  • Исправлен режим Safe-mode в обход функции tempnam();
  • Исправлен параметр open_basedir в обход функции posix_mkfifo();

Список изменений в PHP 5.3.1

Скачать PHP 5.3.1

Это пока вся информация доступна на php.net этот топик(пост) будет обновлен, как только появится более полная информация

Наша команда разработчиков уже скачала эту версию и установила на внутриофисный сервер для тестирования.

К сожалению на этой версии PHP не работает наш регулярно используемый в разработках фреймворк CodeIgniter, так как была исключена функция для работы с регулярными выражениями (убрали ereg, оставили preg_match).

UPD: Проблема с CodeIgniter снята в CodeIgniter 1.7.2 разработчики фреймворка решили эту проблему и все теперь работает как часы.

Скачать CodeIgniter 1.7.2

Благодарность за информацию хабраюзерам: DenisO и zzkey

В php5.3.1 проблемы с gettext под Windows (http://bugs.php.net/bug.php?id=49349) Благодарность хабраюзеру: grolse