URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 82964
[ Назад ]

Исходное сообщение
"Проект Chromium предлагает начать тестирование возможностей ..."

Отправлено opennews , 13-Фев-12 15:57 
Разработчики JavaScript-движка V8 и проекта Chromium представили (http://blog.chromium.org/2012/02/future-of-javascript-take-p...) список новых возможностей JavaScript, доступных в экспериментальной ветке (http://dev.chromium.org/getting-involved/dev-channel) браузера Chrome. Указанные возможности реализуют некоторые элементы будущего стандарта JavaScript, развиваемого (http://wiki.ecmascript.org/doku.php?id=harmony:proposals) комитетом ECMA под кодовым именем "Harmony". Новую спецификацию планируется утвердить до конца следующего года, ожидается, что это будет наиболее значительным обновлением JavaScript за всю историю развития этого языка. Для активации новых элементов  JavaScript в браузере Chrome следует активировать опцию "Experimental JavaScript features" в настройках "chrome://flags".


Некоторые из реализованных возможностей:

-  Лексический контекст (http://wiki.ecmascript.org/doku.php?id=harmony:block_scoped_...): в режиме "ES5 strict" в дополнение к "v...

URL: http://blog.chromium.org/2012/02/future-of-javascript-take-p...
Новость: http://www.opennet.me/opennews/art.shtml?num=33071


Содержание

Сообщения в этом обсуждении
"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено Crazy Alex , 13-Фев-12 15:57 
Эх, сделали бы они некий вид структур... Передать не могу, как утомило нарываться на то, что кто-то когда-то, передавая хэш с параметрами, перепутал имя одного из параметров.

Впрочем, и то, что есть, очень полезно - один лексический контекст чего стоит. Думаю, после его введения использование var моментально станет дурным тоном.


"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено Аноним239 , 13-Фев-12 16:46 
Сделай свои любимые структуры себе сам.
obj = {a:1,b:2}
Object.seal(obj)
obj.a = 5 //Ok
obj.c = 5 //No

"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено Crazy Alex , 13-Фев-12 16:49 
1) это должно быть удобным
2) это должно проверяться в момент передачи параметра в функцию.

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


"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено Аноним239 , 13-Фев-12 17:01 
> 1) это должно быть удобным

что в этой одной строчке неудобно? Слишком мало печатать?
> 2) это должно проверяться в момент передачи параметра в функцию.

function(a,b){
if (arguments.length!==2){throw new Error('Мало параметров')}
}

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

Не надо свои быдлокодерские привычки переносить на всех.
По сравнению с 95% покрытием кода тестами, статическая проверка компилятором -детский лепет.



"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено Crazy Alex , 13-Фев-12 17:11 
пример функции не катит:
1) ну суну я вместо результат вызова функции саму функцию, заббыв скобки - оно не заметит:
foo(2, bar) вместо foo(2, bar())
2) пачка параметров обычно отдаётся как объект - что туда засунули - один бог знает

А покрытие тестами в модульном RIA, где половина параметров в модуль как пришла, так и ушла транзитом (а в ряде сценариев - не используется вобще), а связи на лету меняются в зависимости от состояния - это 5. Отдельный модуль так протестировать - не вопрос, но не целое приложение. Ну или у вас объем тестов будет в десять раз больше объёма кода.

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

И, наконец, такие записи - это отличный способ документирования, кроме всего прочего.


"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено Df232z , 13-Фев-12 17:36 
>А покрытие тестами в модульном RIA, где половина параметров в модуль как пришла, так и ушла транзитом (а в ряде сценариев - не используется вобще), а связи на лету меняются в зависимости от состояния - это 5. Отдельный модуль так протестировать - не вопрос, но не целое приложение. Ну или у вас объем тестов будет в десять раз больше объёма кода.

Зачем вы лезете в эту область, хотя вы не программист?


"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено Аноним , 13-Фев-12 18:41 
> Зачем вы лезете в эту область, хотя вы не программист?

Зато Д`Артаньянов в треде явно многовато.


"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено Crazy Alex , 13-Фев-12 19:01 
Я как раз программист. И JS  у меня не первый язык и даже не десятый, так что сравнить фичи языка я уж как-нибудь в состоянии, как и оправданность 95% покрытия тестами модульного, на лету собирающегося приложения.

"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено Df232z , 13-Фев-12 19:13 
Вы заблуждаетесь. Человек высказавший такое мнение - не программист.
Так же как человек ,заявляющий, что может лечить насморк, но только если Венера в созвездии рыб - не доктор.
Интересно было бы услышать от системного архитектора бортовых систем самолета, что дескать, тестировать он их не будет, они больно сложные.
К счастью, на такую работу допускают только программистов.

"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено Crazy Alex , 13-Фев-12 19:22 
Перечитайте еще раз. Тестирование модулей - да, кто б спорил. Тестирование целого RIA - нет. Слишком много разных code path - ни о каких 95% покрытия речи быть не может при разумных затратах - подчеркиваю, речь о RIA. У архитектора бортовых систем самолета ситуация "несколько другая", особенно по приемлемым затратам на тестирование. Но если есть желаение - можете поинтересоваться мнением архитектора бортовых система самолетов - вот здесь: http://www.digitalmars.com/ - только к горю вашему он большой сторонник статической типизации.

"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено Df232z , 13-Фев-12 19:33 
>Тестирование целого RIA - нет.

Домыслы непрограммиста.

>при разумных затратах

Для непрограммистов я могу посоветовать брать исходные тексты из /dev/random.
Работать они не будут, точно так же как и не оттестированное приложения, а если результат одинаков зачем платить за разработку?


"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено Crazy Alex , 13-Фев-12 19:41 
Давайте вы всё же смените тон? Мы не в вакууме живём, и всегда есть бюджеты и сроки.

"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено terr0rist , 14-Фев-12 00:08 
А вы то сами кто?
Знаете, в идеальном мире, где один лишь вы - да, вы программист. В реальном мире, ездите ли вы на Хаммере или на тягаче Скания - это ещё не говорит о том, что вы один - тру водитель, а все остальные - быдло.

"Проект Chromium предлагает начать тестирование..."
Отправлено arisu , 14-Фев-12 09:01 
> А вы то сами кто?

Человек, Который Лучше Всех Знает, Как Надо.


"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено Аноним239 , 13-Фев-12 16:50 
За пять долларов сделаю тебе еще и статическую типизацию в JS.



"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено Crazy Alex , 13-Фев-12 16:57 
Не сделаете. С удобным синтаксисом, во всяком случае. Впрочем, если не шутите - пишите в личку, обсудим :-)

"Проект Chromium предлагает начать тестирование..."
Отправлено arisu , 14-Фев-12 09:05 
> Не сделаете. С удобным синтаксисом, во всяком случае. Впрочем, если не шутите
> — пишите в личку, обсудим :-)

а что, проект действительно востребован? не то, чтобы я был готов взяться за него вот прямо сейчас, но…


"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено terr0rist , 14-Фев-12 00:10 
> За пять долларов сделаю тебе еще и статическую типизацию в JS.

Готов скинуться. Сделайте уж для всех :)


"Проект Chromium предлагает начать тестирование..."
Отправлено arisu , 14-Фев-12 09:04 
>> За пять долларов сделаю тебе еще и статическую типизацию в JS.
> Готов скинуться. Сделайте уж для всех :)

благодарю, не стоит за всех расписываться. мне вот не нужна, например.

впрочем, не вижу, на самом деле, проблемы сделать опциональную типизацию с type inference. только какой тогда сакральный смысл писать на js, если всё равно внешним процессором исходник гонять? уж лучше сделать компилятор в js того же стронгтолка, например, или typed scheme.


"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено Tav , 13-Фев-12 16:10 
Браузеры должны поддерживать универсальный байт-код, в который можно было бы компилировать программы на различных языках, а не содержать встроенный высокоуровневый ЯП, который теперь все равно нередко используется в качестве промежуточного представления (компиляторы чего угодно в JavaScript), а он для этого плохо приспособлен.

"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено Crazy Alex , 13-Фев-12 16:22 
Оно бы да - но на это шансов яво меньше, чем на (постепенное) приведение JS к приемлемому виду. В принципе, там не так много надо - кроме того, что в топике, осталось добавить необязательную типизацию для примитивных типов и какой-то вид описания сложных типов - что-то вроде:
typedef myType... {
  callable foo,
  callable bar(AnotherType a, ~int b) : ~int,
  ~int y,
  String z,
  AnotherAnotherType t,
  Object ?optionalvar
}

где ~ означает "корерктно преобразуется" (т.е. для ~int строка "22" будет принята, а строка "10.9" или "foo" отвергнута,
три точки после имени типа означают, что могут быть и другие члены любых типов, ? - необязательное поле.

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

по сути - это просто способ упростить проверку параметров настолько, чтобы её начали пользоваться.


"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено uhbif18 , 13-Фев-12 16:42 
Лол. "Немного"

Вы в курсе сколько необязательной типизации в Питоне ждут ?


"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено Crazy Alex , 13-Фев-12 16:50 
Не в курсе. Зато в курсе, что мозилловцы для джаваскрипта её таки сделали.

"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено jOKer , 13-Фев-12 16:55 
На самом деле, куда большее неприятие (у меня лично) вызывает полная неопределенность когда что и в какой последовательности выполняется. Причем Deferred тут помогает только отчасти - вопросов все равно масса.

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

А в целом монополию на браузеры <troll mode>этого недоязыка</troll mode> ява-скрипта таки стоит прекратить. Байт-код умеют выполнять все, так в чем же дело?! Лично мне, как питонятнику, было бы прикольно писать скрипты на питоне, не только на стороне сервера. Да и рубиновцы, я думаю, тоже не отказались бы писать скрипты на ruby прямиком на страницах.

Единственно, кто при таком раскладе будет против (а баба-яга всегда против), так это жабовцы, имхо. Но, как известно, проблемы негра мало е###т шерифа!


"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено Crazy Alex , 13-Фев-12 16:58 
Эм... О какой неопределённости речь? Пример можете привести?

"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено jOKer , 13-Фев-12 17:31 
Хм... словами это... да...
Ну пускай так: у меня выполняется колбак, допустим, щелчка мыши по таблице, в котором мне надо за ради проверки получить ряд параметров со стороны сервера. Получаю ебстесно в json и так же ебстесно по rest. Моя трабла в том, что эти данные я получаю так же асинхронно!

То есть если бы у меня, к примеру, в колбэке была некая safe переменная, то я мог бы написать следующее:
d = new Defferred();
...function(){
    this.a = new safe();
    self = this;
    d.xrhGet({
        url: '/someurl/,
        function(){
           self.a = 5;
        }
    });
    return this.a;
}

зная совершенно точно, что выполняющийся асинхронный Get наложит блокировку на защищенную переменную 'a' и НЕ даст выполнится return ДО своего выполнения. Но у меня такой возможности нет и я должен писать "спагетти".

ОК, можете считать меня неосилятором, но без семафоров, критических секций и защищенных переменных я себя ощущаю как поверх желе - отбросить может в любую сторону. И это несколько напрягает.


"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено Df232z , 13-Фев-12 17:46 
> ОК, можете считать меня неосилятором, но без семафоров, критических секций и защищенных
> переменных я себя ощущаю как поверх желе - отбросить может в
> любую сторону. И это несколько напрягает.

Вы бредите? Какие семафоры? Какие секции? Потрудитесь перед использованием языка программирования хоть прочитать спецификацию.


"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено jOKer , 13-Фев-12 17:50 
А вы прочитать пост целиком!
Я собсно об этом и пишу: напрягает что этих механизмов нет как нет

"Проект Chromium предлагает начать тестирование..."
Отправлено arisu , 13-Фев-12 17:55 
> А вы прочитать пост целиком!
> Я собсно об этом и пишу: напрягает что этих механизмов нет как
> нет

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

ну, помимо того, что они не обязаны являться частью языка.


"Проект Chromium предлагает начать тестирование..."
Отправлено jOKer , 13-Фев-12 18:00 
> и многопоточности нет

Прозвучала та фраза которая нужна! Именно это и есть напряг, поскольку с момента возникновения AJAX многопоточность стала просто.... короч, без нее просто никуда!


"Проект Chromium предлагает начать тестирование..."
Отправлено Df232z , 13-Фев-12 18:05 
Да мы уже поняли, что javascript не для вас.

"Проект Chromium предлагает начать тестирование..."
Отправлено jOKer , 13-Фев-12 18:09 
>Да мы уже поняли
>мы

Учимся говорить за себя!

И да, _я_ понял что мгопоточность не для вас!


"Проект Chromium предлагает начать тестирование..."
Отправлено arisu , 13-Фев-12 18:13 
> Учимся говорить за себя!

вот именно. например, прекращаем говорить, что «после аякса без многопоточности никуда».


"Проект Chromium предлагает начать тестирование..."
Отправлено Df232z , 13-Фев-12 18:13 
> И да, _я_ понял что мгопоточность не для вас!

Совершенно верно. Мне node.js вполне устраивает.



"Проект Chromium предлагает начать тестирование..."
Отправлено arisu , 13-Фев-12 18:11 
> Прозвучала та фраза которая нужна! Именно это и есть напряг, поскольку с
> момента возникновения AJAX многопоточность стала просто…. короч, без нее просто никуда!

а мужики-то и не знают. я понимаю, что голова — она одна, и две концепции туда уже не помещаются, но зачем это прилюдно демонстрировать-то?


"Проект Chromium предлагает начать тестирование..."
Отправлено jOKer , 13-Фев-12 18:16 
>> Прозвучала та фраза которая нужна! Именно это и есть напряг, поскольку с
>> момента возникновения AJAX многопоточность стала просто…. короч, без нее просто никуда!
> а мужики-то и не знают. я понимаю, что голова — она одна,
> и две концепции туда уже не помещаются, но зачем это прилюдно
> демонстрировать-то?

ОК. Покажите мастер-класс и продемонстрируйте кусок кола который стыкует синхронный обработчик с возвращающим данные асинхронным запросом в нем!

P. S.
А мужики в гугле не знали что ява-скрипт такое могет  и решили изобрести драфт. Мдя.. лоханулись... Столько кода и зря! :)


"Проект Chromium предлагает начать тестирование..."
Отправлено Аноним , 13-Фев-12 18:40 
> кагбэ потому, что в оригинале и многопоточности нет.

С появлением веб-воркеров она появилась. Заметь как работают в peacekeeper тесты с параллельной генерацией картинок. Да, лиса с 1 процессом в аккурат жрет все 4 ядра.


"Проект Chromium предлагает начать тестирование..."
Отправлено jOKer , 13-Фев-12 18:42 
Хм... не знал об этом. Буду грызть доки в этом направлении. Спасиб за наводку.

"Проект Chromium предлагает начать тестирование..."
Отправлено arisu , 13-Фев-12 18:47 
дык я специально про оригинал оговорку сделал: давал человеку шанс исправить сказаную глупость и поговорить предметно.

"Проект Chromium предлагает начать тестирование..."
Отправлено Аноним , 13-Фев-12 19:15 
> дык я специально про оригинал оговорку сделал: давал человеку шанс исправить сказаную
> глупость и поговорить предметно.

Странный какой-то програмер, если я (не являющийся профессиональным JS-программером вообще ни разу) такое знаю, а он - нет :)

"...и почему-то бывает порой, не разобраться кто шут, кто король" :D


"Проект Chromium предлагает начать тестирование..."
Отправлено arisu , 13-Фев-12 19:21 
он, кажется, вычитал где-то умную вещь: что настоящий программист может писать почти на любом языке не занимаясь глубоким изучением оного. откуда, по-моему, сделал забавный вывод, что настоящие программисты так и пишут — ничему не обучаясь. старается соответствовать.

"Проект Chromium предлагает начать тестирование..."
Отправлено Аноним , 13-Фев-12 19:26 
> обучаясь. старается соответствовать.

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


"Проект Chromium предлагает начать тестирование..."
Отправлено Crazy Alex , 13-Фев-12 19:33 
Ну, пользоваться ими пока всё равно нельзя - т.к. IE

"Проект Chromium предлагает начать тестирование..."
Отправлено Аноним , 13-Фев-12 19:36 
> Ну, пользоваться ими пока всё равно нельзя - т.к. IE

Дык показывай юзерам ишака "replace you browser and press any key". Глядишь MS постепенно призадумается о том что так процент рынка можно и до нуля просрать. Они б и в минус просрали, если б это было возможно :D. С таким "развитием" как у них это было бы заслуженно.


"Проект Chromium предлагает начать тестирование..."
Отправлено Crazy Alex , 13-Фев-12 19:44 
Пропаганда - это хорошо, но пока не бьёт по карману. Упадёт процент IE хотя бы втрое - можно будет и так, при аккуратной реализации. А пока - ну максимум, в очень некоторых проектах можно IE8 дропнуть. Девятка будет поодерживаться всеми разумными людьми еще года два как минимум. ну а к десятке список претензий будем составлять после выхода. Пока - смотрится сравнительно неплохо.

"Проект Chromium предлагает начать тестирование..."
Отправлено arisu , 13-Фев-12 18:49 
ну вот: кажется, ты его плохому научил. он и обычный-то js не смог осилить… помучается и пойдёт опять на форумах плакаться, на этот раз про то, что вебворкеры плохие, и опять не получилось лочку сделать в XMLHttpRequest.

"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено Crazy Alex , 13-Фев-12 19:02 
Машины состояний используйте, они в JS это очень хорошо лечат.

"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено Crazy Alex , 13-Фев-12 19:38 
Второй вариант - чтобы не плодить спагетти - через события всё разруливать, тоже вполне приличный код получается и писать проще, но архитектура видна хуже, чем у автомата.
То есть
Dispatcher.bind('XYZresponse', function(arg){
  console.log(arg) //prints '5'
})
xrhGet({
        url: '/someurl/,
        function(){
           Dispatcher.trigger("XYZresponse", 5);
        });

"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено Df232z , 13-Фев-12 19:48 
Первый бесплатный урок:
С большой буквы в js пишутся только имена Конструкторов.
Это общепринятая практика.


"Проект Chromium предлагает начать тестирование..."
Отправлено arisu , 13-Фев-12 19:55 
> Первый бесплатный урок:
> С большой буквы в js пишутся только имена Конструкторов.
> Это общепринятая практика.

вообще-то и имена синглтонов, каковым диспетчер явно является.


"Проект Chromium предлагает начать тестирование..."
Отправлено Df232z , 13-Фев-12 20:04 
Нет.
>диспетчер

Самообразование?


"Проект Chromium предлагает начать тестирование..."
Отправлено Crazy Alex , 13-Фев-12 20:09 
Именно синглтон и есть. И события, раскиданные по неймспейсам модулей, если таковые есть: Dispatcher.trigger("myModule.myEvent", arguments) - такой подход позволяет из одного места четко отследить последовательность прохождения событий по всему приложению, и не требует ничего переделывать если какое-то событие в результате рефакторинга признаем глобальным (т.е. на него может отвечать не только водуль, его запустивший) - меняем это дело в документации да в утилите проверки кода ывставляем правило, чтобы не ругалась на подписку на данное событие из чужого модуля.

"Проект Chromium предлагает начать тестирование..."
Отправлено arisu , 13-Фев-12 20:09 
> Нет.

орли?

>>диспетчер
> Самообразование?

чем тебе не нравится слово?


"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено Crazy Alex , 13-Фев-12 19:58 
А еще с большой буквы чатос пишутся имена глобальных сущностей - например, Backbone из backbone.js. YUI тоже этого правила не придерживается.

"Проект Chromium предлагает начать тестирование..."
Отправлено arisu , 13-Фев-12 19:55 
а если немного глубже пойти в js (я понимаю, почему ты не стал человека пугать, понимаю), то передавать в триггер можно замыкание. а потом и триггер упразднить, всё равно одно замыкание у нас уже есть. и получим автомат, где состояния представлены замыканиями. диковатая немного конструкция с точки зрения пуриста, но вполне жизнеспособная.

ладно, ладно: где *переключение состояний* представлено замыканиями. а потом уже вышеописаного мутанта.


"Проект Chromium предлагает начать тестирование..."
Отправлено Crazy Alex , 13-Фев-12 20:00 
Человек линейный код просил, поэтому так. Плюс это хорошая документация - именованное событие.

"Проект Chromium предлагает начать тестирование..."
Отправлено arisu , 13-Фев-12 20:10 
> Плюс это хорошая документация - именованное событие.

дык замыкание тоже именовать можно, хотя никто почти этого и не делает.


"Проект Chromium предлагает начать тестирование..."
Отправлено Crazy Alex , 13-Фев-12 20:24 
Это да, всё забываю про эту фичу.

"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено jOKer , 13-Фев-12 20:37 
Алексей, это действительно работает!

Вы мне доказали свою правоту и без слов "бредите", "прочитайте спецификацию" и т. д. Это впечатляет! Надеюсь Вы не будете за иллюстрацию в коде своей правоты просить мзду, как некоторые товасчи? :) Шутю, конечно!

Но (кроме шуток!), переходить от написания бакэндов на строгих ЯП к модели яваскрипта действительно очень не легко, и тут Вы все правильно угадали.

В общем за _вежливый_ диалог - спасиб. За намеки - тем более. Остальное - добью сам.

Удачи во всем!))


P. S.
Кстати, воркеры (я о них оказывается знал, просто не сразу понял о чем речь) в dojo и jquery тоже (местами), - не всегда адекватно себя ведут. Скажем так, я сталкивался с проблемами. Такое чувство. что с контекстами там не все прозрачно, или я не все еще тут понимаю.


"Проект Chromium предлагает начать тестирование..."
Отправлено arisu , 13-Фев-12 20:48 
> Алексей, это действительно работает!

breaking news!


"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено Crazy Alex , 13-Фев-12 22:28 
Спасибо :-) Ну вот, говорил я народу - культурнее надо...

"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено Аноним , 14-Фев-12 07:35 
> Лично мне, как питонятнику, было бы прикольно писать скрипты на питоне, не только на стороне сервера. Да и рубиновцы, я думаю, тоже не отказались бы писать скрипты на ruby прямиком на страницах.

То есть ты хочешь сказать что давай каждый будет писать кто в лес кто по дрова? И теперь вместо использования фаербага надо выучить тучу ваших язычков и плюс найти то что заменит фаербаг для ваших язычков? А для того чтобы поправить для себя какой-нибудь опенсурс форум, портальчик и ещё что-нибудь надо оглядываться и искать не дураков пишущих не на этих ваших язычках?


"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено anonymous vulgaris , 14-Фев-12 08:06 
> То есть ты хочешь сказать что давай каждый будет писать кто в  лес кто по дрова?

Ну так даже сам гугел не хочет писать на жабоскрипте. И не пришет (и правильно делает).

http://code.google.com/intl/ru-RU/webtoolkit/overview.html
В Google Web Toolkit (GWT) интерфейс AJAX пишется на языке программирования Java, а затем GWT кросс-компилирует его в оптимизированный JavaScript


"Проект Chromium предлагает начать тестирование..."
Отправлено arisu , 14-Фев-12 09:12 
у меня, скажем, компилятор для гибрида нескольких языков, который выплёвывает на выходе исполняемый js. правда, человекочитаемым выхлоп не является. но js. тебе сильно полегчает от этого, если придётся в скрипт залезть?

вообще-то код универсальной виртуальной машины (при условии, что она сделана достаточно минималистично) разобрать попроще будет. а поскольку оно всё изначально объектное (кто сказал c++? прототипы, прототипы), то дописывать и править любой метод любого объекта можно на любом языке, который поддерживает генерацию кода для нашей vm.

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


"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено Аноним239 , 13-Фев-12 16:48 
> Браузеры должны

Браузеры тебе ничего не должны.
JVM в виде java-аплетов уже пролетела, как фанера над Парижем.



"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено Crazy Alex , 13-Фев-12 16:53 
JVM пролетела отнюдь не из-за байткода, а из-за громоздкости языка, толщины рантайма и необходимости этот рантайм отдельно устанавливать. Ну и дыры не последнюю роль сыграли. Причем всё кроме необходимости установки сейчас бы сожрали и не поморщились, включая дыры - каналы толстые, языков под JVM навалом, есть и весьма приличные (скала та же). Ну и не в курсе, насколько хоорошо оном огло с самой страницей взаимодействовать - но это точно лечится, вон, тот же флеш интегрируется идеально.

"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено Аноним , 13-Фев-12 17:35 
> вон, тот же флеш интегрируется идеально.

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


"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено Crazy Alex , 13-Фев-12 19:08 
Не о том речь. А о том, что можно из JS вызывать AS (и таким образом информировать о DOM-событиях либо запрашивать сервис) и наоборот из AS дергать JS, и таким образом предоставлять флешу возможность делать нужные изменения в DOM, причем  изменения эти ограничиваются тем, что допустит JS-обёртка. То есть сам механизм плагинов это позволяет, вопрос лишь в том, умели ли этим пользоваться апплеты. А то, что адоб не осилил нормально реализацию сделать - кто б спорил.

Кстати, я не в курсе - а что сейчас модно использовать, чтобы организовать взаимодействие с недоверенным скриптом - ифреймы?


"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено Аноним , 13-Фев-12 19:21 
> Не о том речь. А о том, что можно из JS вызывать
> AS (и таким образом информировать о DOM-событиях либо запрашивать сервис) и
> наоборот из AS дергать JS, и таким образом предоставлять флешу возможность
> делать нужные изменения в DOM

Можно, но костыльно. Кстати в порядке извращения видится запуск яваскриптового парсера байткода, и далее... хм... ну вы поняли :). Вон например у Фабриса Белларда запускается некистый такой "интерпретатор байткода", после чего пингвин лихо взлетает прямо в браузере. Такой вот байткод из яваскрипта :)

> Кстати, я не в курсе - а что сейчас модно использовать, чтобы
> организовать взаимодействие с недоверенным скриптом - ифреймы?

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


"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено Crazy Alex , 13-Фев-12 19:29 
NoScript - это не о том :-) Задача выглядит примерно так. Вот вы хостер какой-то среды - от фейсбука до блгосервиса. И вы хотите дать возможность сторонним программистам писать приложения для вашей среды. Вопрос: как их интегрировать в страницу и при этом не поступиться безопасностью пользователя? у того же фейсбука для этого используется жуткая система костылей и подпорок в виде переопределения доступных стороннему скрипту браузерных объектов. У вконтакта с флешовыми приложениями всё держится как раз на том, что бридж "JS-флеш" может очень точно ограничить взаимодействие флешки со страницей четким API. Вот и вопрос - можно ли подобное сделать как-то менее извращенно, чем у фейсбука?

"Проект Chromium предлагает начать тестирование..."
Отправлено arisu , 13-Фев-12 20:00 
> Вот и вопрос — можно ли подобное сделать как-то менее
> извращенно, чем у фейсбука?

молиться, поститься… будут костыли — просто в силу того, что встроеного механизма песочниц у js нет. костыли можно только немного «украсивить», навесив getters/setters, чтобы каждый метод не переопределять. и то…


"Проект Chromium предлагает начать тестирование..."
Отправлено Crazy Alex , 13-Фев-12 20:02 
Ну вот есть подозрение, что iframe + SameOrigin Policy чем-то таким послужить могут, а так - весьма неутешительный ответ. Очень хочется в одном проекте дать пользователям вставлять в свои страницы виджеты, которые могли бы исполняться у других пользователей.

"Проект Chromium предлагает начать тестирование..."
Отправлено arisu , 13-Фев-12 20:12 
ну, единственное, что тут может утешить, хоть и с оттенком издевательства — я думаю, что не пройдёт и десяти лет, как песочницы вставят в очередную ревизию стандарта.

"Проект Chromium предлагает начать тестирование..."
Отправлено Crazy Alex , 13-Фев-12 20:26 
поглядим, может, и получится выкрутиться. В принципе, посадить каждого пользователя на совй домен - извращение, но не смертельное, вон ЖЖ так живёт.

"Проект Chromium предлагает начать тестирование..."
Отправлено arisu , 13-Фев-12 20:31 
> В принципе, посадить каждого пользователя на
> совй домен — извращение, но не смертельное, вон ЖЖ так живёт.

…кроме тех, кто выбрал себе имя, начинающееся с подчёркивания, хихикс.


"Проект Chromium предлагает начать тестирование..."
Отправлено Crazy Alex , 13-Фев-12 22:31 
То есть надо делать домены как id пользователей, и наружу не показывать... Логично, зачем ограничиваться правилами для доменых имён.

"Проект Chromium предлагает начать тестирование..."
Отправлено arisu , 13-Фев-12 22:35 
> То есть надо делать домены как id пользователей, и наружу не показывать…
> Логично, зачем ограничиваться правилами для доменых имён.

кстати, может сработать. я, правда, точно security-правил не помню, но.


"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено Аноним , 13-Фев-12 19:15 
+1.
Уже много кто допер мозгами до этого. Кто-нибудь понаглее придет в браузерную среду и потеснит существующих олдфагов на рынке.

"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено vladimir2k9 , 13-Фев-12 16:52 
может тут кто прояснит ситуацию с репозиторием (dev ppa) хромиума под убунту, уже месяц нет обновлений

"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено paulus , 13-Фев-12 21:05 
давно забили на этот РРА, качай скриптом хоть каждый час 64-битный Хромиум:

#!/bin/bash
cd ~/Загрузки/

VAL=`curl http://commondatastorage.googleapis.com/chromium-browser-sna...

wget http://commondatastorage.googleapis.com/chromium-browser-sna.../$VAL/chrome-linux.zip

killall chrome

rm -rf ~/.local/opt/chrome-linux/

unzip chrome-linux.zip -d ~/.local/opt/

sleep 10
rm chrome-linux.zip

--
p.s. авторам РРА нужно высказать... и больше и чаще :)


"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено vladimir2k9 , 16-Фев-12 18:46 
спасибо

"Проект Chromium предлагает начать тестирование возможностей ..."
Отправлено baronos , 13-Фев-12 23:11 
Если включить данную опцию, то в хроме не будет работать включение расширений для gnome-3 с сайта extensions.gnome.org