Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Разное

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: "Ленивые" операторы
 
 автор: Тень*   (17.04.2010 в 23:05)   письмо автору
 
 

Как вообще нормально реализуется вычисление "ленивых" операторов типа &&, || и т.п., т.е. чтобы
false && die("Die Motherfucker Die")

true || die("Die Motherfucker Die")

die() в данном случае не выполнялся (вычислялся)?

  Ответить  
 
 автор: Саня   (18.04.2010 в 16:41)   письмо автору
 
   для: Тень*   (17.04.2010 в 23:05)
 

Нормально реализуется. Очень часто можно увидеть конструкции типа
<?
mysql_connect
(..) or die(...);

У себя в одной дебаг функции использую:
<?
function debug(..., $die false) {
  
// ...
  
$die? die : null;
}

  Ответить  
 
 автор: Тень*   (18.04.2010 в 20:05)   письмо автору
 
   для: Саня   (18.04.2010 в 16:41)
 

Я не о PHP вообще, меня интересует разбор и вычисление логических выражений со скобками и логическими операторами.

Есть строка "1 < 5 || (6 / 2 == 3)". Необходимо получить "1" (true), не вычисляя правую половину выражения.

  Ответить  
 
 автор: Trianon   (18.04.2010 в 20:32)   письмо автору
 
   для: Тень*   (18.04.2010 в 20:05)
 

как-как...
Строка преобразуется в дерево одним из методов анализа, коих много есть.
По дереву генерируется код.
Код этот активно применяет инструкции условного ветвления, а не только арифметико-логические.
Еще можно попробовать оптимизировать дерево (до генерации) или код (после генерации) .
Но это рюшечки.

  Ответить  
 
 автор: Тень&   (18.04.2010 в 20:39)   письмо автору
 
   для: Trianon   (18.04.2010 в 20:32)
 

> Строка преобразуется в дерево одним из методов анализа, коих много есть.

Напримееер?

  Ответить  
 
 автор: Trianon   (19.04.2010 в 03:29)   письмо автору
 
   для: Тень&   (18.04.2010 в 20:39)
 

Рекурсивный спуск, LL1-анализатор, LR1-анализатор

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования