LINUX.ORG.RU

Что ждать от PHP 6?


0

0

Я думаю всем будет интересно узнать, что ждёт нас в PHP версии 6. Пожалуй самое главное - это родная поддержка уникода на уровне серверной части (не прошло и ста лет). Также обещают поддержку 64битных вычислений, убиения глабальных переменных, отмену "безопасного режима" и многое другое. Дайте мне это прямо сейчас!

>>> Подробности

★★★★★

Проверено: Shaman007 ()

Хм, хотелось как понятнее по-русски для всех, а получилось как всегда. Читайте оригинал на http://www.corephp.co.uk/archives/19-Prepare-for-PHP-6.html . В сто раз интереснее: товарищ, например, рассказывает, что появится аналог goto: `break foo;` - позволяет перейти к метке foo в коде.

birdie ★★★★★
() автор топика

пока , что хватает php4, а там посмотрим, куда амбиции zend доведут PHP.

anonymous
()

А слабо им сделать формальное описание грамматики? :)

mind
()
Ответ на: комментарий от Oceanborn

Такс, а нафиг safe mode резать? =\ Хотя лично Я почти уверен что ещё несколько лет все хостеры будут сидеть на PHP4. =( MaGIc laNTern.

anonymous
()
Ответ на: комментарий от anonymous

>Такс, а нафиг safe mode резать?

Типа ПХП станет настолько безопасным, что safe_mode будет не нужен.

Интересно, а что делать хостерам, когда закончат поддержку 4 и 5 версий?

FatBastard ★★
()

А я хочу разбивку функций на пакеты и последовательность (consistency) в их наименовании и передаче параметров.

shimon ★★★★★
()
Ответ на: комментарий от FatBastard

> Интересно, а что делать хостерам, когда закончат поддержку 4 и 5 версий?

Повеситься, блин!
Поскольку недомеркам будет негде свои домашнии странички размещать.
Профессионалы все-равно не используют пхп: есть же перл, питон, руби...

anonymous
()
Ответ на: комментарий от anonymous

>Профессионалы все-равно не используют пхп: есть же перл, питон, руби...

ну ты умник завернул.... нахватлся модных слов типа руби и еже с ним и чувствуешь себя профи сразу???

pento ★★★★★
()
Ответ на: комментарий от anonymous

>Повеситься, блин! >Поскольку недомеркам будет негде свои домашнии странички размещать. >Профессионалы все-равно не используют пхп: есть же перл, питон, руби...

гыгыгы

anonymous
()
Ответ на: комментарий от FatBastard

а кто закончит поддержку пхп4? zend? ну если они закончат, сообщество программеров не даст тебе засохнуть. РЕальноже пхп4 уйдет со сцены тогда, когда его перестануть юзать хотябы 90% из тех, кто юзает сейчас.

anonymous
()
Ответ на: комментарий от anonymous

>а кто закончит поддержку пхп4? zend? ну если они закончат, соебищество программеров не даст тебе засохнуть. РЕальноже пхп4 уйдет со сцены тогда, когда его перестануть юзать хотябы 90% из тех, кто юзает сейчас.

а сколько (в процентах) его юзают сейчас?

anonymous
()
Ответ на: комментарий от AngryElf

>5-й php еще хрен где есть, через год, в лучшем случае более-менее >пойдет в массы. Какой тут 6-й?

дану????!!! только что отбалды зшёл на РБК хостинг и на тебе у них есть PHP5 !! И потом там же не сказано, что они завтра шестёрку выпустят! Это в планах!

pento ★★★★★
()
Ответ на: комментарий от anonymous

да почти все дистры, у меня например суся в ней пхп4 и 5 идут, при инсталяции выбераеш одну нужную версию

anonymous
()
Ответ на: комментарий от anonymous

наверное на хостингах сидят такие же как ты (админы?), ставят сусю и думают - Какой же мне поставить пхп? 4 или 5? или вообще не ставить, пусть ламера на руби пишут..:)

FatBastard ★★
()
Ответ на: комментарий от anonymous

> да почти все дистры, у меня например суся в ней пхп4 и 5 идут, при инсталяции выбераеш одну нужную версию

А у меня слака, я в нее сам PHP 5.0.5 компилил

anonymous
()

> убиения глабальных переменных

Не знаю, как насчет "глабальных", но глобальные я и в четверке через unset() убиваю.

Или наконец register_globals истребят как класс?

Приятно будет видеть внезапно зашевелившихся леммингов: до того писали по принципу "а нам забить, и так удобно", а тут тебе "а надо писать, как надо!" Занимательное зрелище. И поток комплейнов в рассылках и форумах "а ваше дерьмецо на ПХП 6 не пашет!". Душа радуется...

shimon ★★★★★
()
Ответ на: комментарий от shimon

поэтому пхп4 ещё долго не помрет )

anonymous
()

Ни слова ни о JIT, ни о AOT.
Никаких аналогов .net/Mono system.web.cache - т.е. по прежнему простенькая CMS на ПыхПых будет жрать секунду CPU от 3,4 Зиона, да высеивать пачку SQL-запросов (или обращений к отдельным файлам) для _каждого_ посетителя.

В морг.

AffreuxChien
()
Ответ на: комментарий от CrazyPit

"Есть и не одна" - это звучит гордо.
А нужно - одну единственную, неотделимую от инструмента, которая есть всегда и везде.
Зоопарка не надо. Надоело. Достало.

А с ужиранием CPU что делать? Акселераторы проблему решают лишь частично.

AffreuxChien
()
Ответ на: комментарий от AffreuxChien

Ну вот по этому PHP тоже и сакс. Слишком много велосипедов, очень долго выбирать, какой велосипед лучше.

CrazyPit ★★★
()

В конце концов они поймут, что глубого неправы, и отправятя на поклон к Ларри. Ларри их простит, и даст им работу, и тогда наконец-то мы дождёмся Perl6 и жаба наконец-то удавится!

anonymous
()
Ответ на: комментарий от pento

Да, надутые от важности пыхпыхпыхеры-недомерки, которые пруцца, что им ажно $500 в месяц платят за то, что они на первом курсе горбатятся (вместо учёбы) - это особая категория клоунов...

Nuke
()
Ответ на: комментарий от anonymous

Perl6 сейчас Хаскеллисты пишуть... В эту тусу пыанэров-пыхпыхеров и близко не подпустят - рылом не вышли.

Nuke
()
Ответ на: комментарий от Nuke

> Perl6 сейчас Хаскеллисты пишуть... В эту тусу пыанэров-пыхпыхеров и близко не подпустят - рылом не вышли.

А этот Perl6 сейчас уже юзабелен? (В смысле, плясать с бубном для создания собственно среды выполнения не надо? Или как хурд?) Говорят, множество какашек из прочих версий перла там просто нет... Мечты...

shimon ★★★★★
()
Ответ на: комментарий от shimon

Нет пока. Хаскелль там для того и нужен, чтобы забутстрапить его с минимальными затратами. Примерно как я новые языки через Common Lisp бутстраплю.

Nuke
()
Ответ на: комментарий от Nuke

> Нет пока. Хаскелль там для того и нужен, чтобы забутстрапить его с минимальными затратами.

Вижу. Pugs вроде... Но сайт у них беспорядочен -- пока документацию нашел, это словно из машины через капот вылезать %)

shimon ★★★★★
()
Ответ на: комментарий от AffreuxChien

>А с ужиранием CPU что делать? Акселераторы проблему решают лишь частично.

А ни че, процессоры нынче дешевы. Мегагерцы подешевле будуть чем гигабайты. Вот так плешивый!

anonymous
()

>А ни че, процессоры нынче дешевы. Мегагерцы подешевле будуть чем гигабайты. Вот так плешивый!

А вот и неправда. Память дешевле мегагерцев. 

Проблема только в том, что не все решается
вставкой еще одной планки памяти
или заменой проца на более мощный.


Но основная проблема PHP не в памяти или 
потребляемых ресурсах. А в кривости синтаксиса
языка.

Дано: $A.
Что такое $A? Это массив, хэш или простой тип?

Что такое $A[$B] - массив или хэш?

$B = 1;
$A[$B] = 10; // Что такое $A ?
$B = 'xyz';
$A[$B] = 20; // А теперь?

$VeryLongVariableName = 10;
{
  // ... тут куча кода
  $VeryLongVaiableName = $VeryLongVariableName * 3.14159 + 33;
  // ... тут еще куча кода
}
чему равна $VeryLongVariableName?
Где и как искать ошибку?

anonymous
()
Ответ на: комментарий от anonymous

>Где и как искать ошибку? В ДНК

Совершенно согласен с предыдущим оратором. Ошибка в ДНК создателей языка.

В *нормальных* языках, была бы сгенерирована ошибка.

anonymous
()
Ответ на: комментарий от anonymous

> А у меня слака, я в нее сам PHP 5.0.5 компилил

В слаке php5 давно есть из коробки, смотреть в /testing

anonymous
()

Что ж, PHP 6 обзаведется PHPVM, и будет требовать от 2Гб под один процесс

anonymous
()
Ответ на: комментарий от anonymous

> $B = 1;
> $A[$B] = 10; // Что такое $A ?

$A - это массив с целочисленным индексом

> $B = 'xyz';
> $A[$B] = 20; // А теперь?

$A - это хэш

> $VeryLongVariableName = 10;
> {
>   // ... тут куча кода
>   $VeryLongVaiableName = $VeryLongVariableName * 3.14159 + 33;
>   // ... тут еще куча кода
> }
> чему равна $VeryLongVariableName?
> Где и как искать ошибку?

Ты идиот? $VeryLongVaiableName равна 10 * 3.14159 + 33

theserg ★★★
()
Ответ на: комментарий от theserg

>> чему равна $VeryLongVariableName? >> Где и как искать ошибку? >Ты идиот? $VeryLongVaiableName равна 10 * 3.14159 + 33 Не, эт ты идиот. Спрашивали-то про $VeryLongVariableName, которая, кстати, равна 10.

Я считаю, что современный язык не должен разрешать быдлокодерам делать такие ошибки.

anonymous
()
Ответ на: комментарий от theserg

>$A - это массив с целочисленным индексом

>$A - это хэш

То есть, сначала переменная была массивом, а потом, волшебным образом, стала хэшем. Здорово.

То есть, сначала у нас адресация была по индексу, фактически - адрес переменной + смещение, а стала - O(log(N))? А потом кое-кто еще говорит, что язык зрелый, быстрый, удобный и т.д.

>Ты идиот? $VeryLongVaiableName равна 10 * 3.14159 + 33

Волшебно. Как ошибку-то в имени переменной найт$VeryLongVaiableNameи? Ведь совершенно очевидно, что имелось в виду не $VeryLongVariableName. Вы вместо того, чтобы обзываться, предложите автоматический способ отлова подобных ошибок.

Вот столь ненавидимый PERL, при включенном use strict, просто не запустит такой код.

anonymous
()
Ответ на: комментарий от theserg

>> $B = 1;
>> $A[$B] = 10; // Что такое $A ?

>$A - это массив с целочисленным индексом

>> $B = 'xyz';
>> $A[$B] = 20; // А теперь?

>$A - это хэш

Повторяю: Вечер волшебных превращений.

Проблема даже не в том, чем была и чем стала переменная.
И что скорость адресации упала на порядки.

Проблема в том, что свойства переменной $A зависят
от свойств переменной $B. Хотя переменные $A и $B не связаны
так называемыми отношениями родства и в общем случае не должны
никак влиять друг на друга.

anonymous
()
Ответ на: комментарий от anonymous

> Вот столь ненавидимый PERL, при включенном use strict, просто не запустит такой код.

а при выключенном? это, кстати, по-дефолту.

Sergio
()
Ответ на: комментарий от Nuke

> надутые от важности пыхпыхпыхеры-недомерки, которые пруцца, что им ажно $500 в месяц

ты, дорогой, не путай вебмастеров и вебпрограммеров. у нас, например, зряплата "пыхпыхпыхеров" такая же, как и у "жавабыдлокодеров" ((с) кто-то из соседнего треда), четырехзначная, и первая цифра больше двух. может варьироваться в зависимости от кол-ва заказов. первых набираем еще, последних, кто не хочет ваять на ненавистном языке, сокращаем (вот, на прошлой неделе двоих... того...), ибо заказов - 30% на пхп, 70% на дотнет и только единичные на местном фидорулезе. про питон, руби и ко заказчики вообще не знают :-)

Sergio
()
Ответ на: комментарий от Sergio

>про питон, руби и ко заказчики вообще не знают :-)

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

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

CrazyPit ★★★
()
Ответ на: комментарий от CrazyPit

> заказчиков что всегда интересует на каком языке вы будите писать проект?

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

> неужели в Питере пыхпых кодер может заработать больше

а какая разница пыхпых кодер это или джава кодер? если это профессиональный программер, конечно, а не студент-филолог. базовая ставка 10 у.е. в час. часто - больше. если ты что-то сделал (например, используя свои наработки) за два часа вместо запланированных двух дней, ничего же не мешает написать в отчетах pms (project management system) эти два дня. главное, штоп заказчик поверил. это бизнес и, как следствие, исключительно меркантильные интересы ;-)

Sergio
()

> $B = 1; > $A[$B] = 10; // Что такое $A ?

>$A - это массив с целочисленным индексом

> $B = 'xyz'; > $A[$B] = 20; // А теперь?

> $A - это хэш

Самое неприятное, что сами php-ники (надеюсь всё же не все) не видят ничего плохого в подобных превращениях. Слабость php, на мой взгляд, в том, что этот язык позволяет программисту вообще ни о чём не задумываться. Ни о проектировании (фирменная фишка - смешение бизнес-логики и логики представления), ни о реализации ("волшебные превращения" типов, отстутствие необходимости и даже возможности декларирования переменных, пресловутое register globals...). Отсюда очень низкий входной порог и соответственное качество кода. И это всё было простительно, когда php позиционировался как язык для написания home pages. Но сейчас, когда его суют во все дыры, такие "упрощения" недопустимы. Тем временем разработчики заняты только одним: усиленным прикручиванием ООП, видимо под девизом "догоним и перегоним Java". Я совсем не против ООП, но для начала неплохо было бы довести до ума то что есть. А то получилось - бросили php4, мол и так сойдет, нам теперь интересно ООП, занимаемся только им. Даже поддержки юникода до сих пор нет - позор...

Кстати, Perl тоже далеко не идеал. Без use strict и use warnings можно писать такой код, что никакому php даже не снилось. Переменные в функциях по умолчанию глобальные, передача параметров реализована через задницу, реализация ООП еще хуже чем в php, сомнительные синтаксические элементы. Единственное, что спасает Perl от потоков дерьма, льющихся сейчас (и зачастую справделиво) на php - это то, что пионеры не заморачиваются с Perl, предпочитая php :) А вот Perl6 - это совершенно другое дело. Судя по имеющимся описаниям - очень интересный и перспективный проект. Вопрос лишь в том, доживём ли до его релиза ;)

anonymous
()
Ответ на: комментарий от Sergio

Мнда насчёт зарплаты ты меня конечно обрадовал. Но вот на то что в ТЗ в большинстве случаев включают требование к ЯП это хреново... Надеюсь, когда буду заниматься серьёзной работой, я буду сам принимать решения какие мне технологии использовать, или хотябы это будет от меня сильно зависить.

CrazyPit ★★★
()
Ответ на: комментарий от CrazyPit

> Надеюсь, когда буду заниматься серьёзной работой, я буду сам принимать решения какие мне технологии использовать

Это только если ты будешь сам предоставлять хостинг клиентам. Или аутсорсить, выбирая только подходящие тебе предложения. А в конторе тебя никто спрашивать не будет, что тебе нравится. Уволят да и все.

anonymous
()
Ответ на: комментарий от CrazyPit

> Но вот на то что в ТЗ в большинстве случаев включают требование к ЯП это хреново...

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

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

ну, ждать у моря погоды, конечно, можно. вот только за простой никто не платит ;-)

Sergio
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.