- 1
- 2
- 3
- 4
- 5
# coffee script
d = 1 - Math.pow(d,n) * Math.pow((1/d -1),n)
// java script
d = 1 - Math.pow(d, n) * Math.pow(1 / d(-1), n);
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+161
# coffee script
d = 1 - Math.pow(d,n) * Math.pow((1/d -1),n)
// java script
d = 1 - Math.pow(d, n) * Math.pow(1 / d(-1), n);
почему не любят кофескрипт, выпуск -дцатьпервый. потому что нельзя просто скопипастить формулу и не поймать Uncaught TypeError: number is not a function
Не знаю кто вас минуснул, но на этом минусе даже бомжественный хацкель ломается.
http://ideone.com/ui77nf
http://ideone.com/bcNPl5
Соглашусь, но мне кажется в жс сахара не нужно сверх того что уже там есть.
Надо делать его более строгим, убирать, запрещать (допустим for~in эксперимент провалился. давайте его просто выпилим). Тогда и копипастная совместимость будет.
Насчёт типов — ну если сделать крутецкий автовывод в рамках всех этих varов, ну и санитайзеры всякие, дабы сыпало побольше полезных ворнингов из коробки.
Если бы они сдуру не додумались смешать в кучу словарь и объект - может и был бы обычным.
> if (Object.prototype.hasOwnProperty.call (obj, prop)) { //в каждом forе
Оооочень удобно.
Плюс for-in сам по себе медленный потому что вынужден ходить по всей цепочке прототипов. Я уж молчу о порядке обхода.
В стиле я пеарю свою либу и ищу работу на волан-де-сайте?
- У гугла уже давно blink/v8 вместо webkit/jsc
- В том смысле что в гугле тоже лояльно относятся к лицам нетрадиционной ориентации.
Доооо.
Не буду ничего прогнозировать, просто исхожу из опыта прошлых лет.
Вот точно так же многим (в т.ч. и мне) виделось десяток лет назад будущее LLVM.
Запилят отличный кроссплатформенный асм, и через три года появятся ну если не десятки языков, то уж точно пара качественных замен морально устаревших сишке и крестам, чтоб каждый мог бы выбрать себе диалект по вкусу.
И какова же реальность? Клей помер, питушня не взлетела.
А сишка с крестами поныне властвуют миром.
Потому просто рекомендую всем жс-хейтерам смириться с тем фактом что жаваскрипт с нами очень надолго, брать и изучать его по мере сил.
JS изначально очень гнилой. Лечить его себе дороже. Если люди пишут скриптовый язык А который компилируется в другой скриптовый язык (Б) то это значит что язык Б настолько омерзителен, что люди не хотят на нем писать!
Ну очевидно же.
Слово «Достаточно» резко упрощает задачу.
Есть еще яблоко недоеденное и пара игроков помельче, но не об этом речь.
Они об видео/аудио в HTML5 так и не смогли договориться.
А вы говорите специфицировать новый язык и vm.
Я вас уверяю что как только они запилят эту машину, на неё с разных сторон посыпятся уникальные и очень важные «расширения», и мы получим.
Опять же я исхожу из фактов, и прошлого а не своих ничего не решающих хотелок как рациональнее было бы поступить.
И новые версии JS как-то выпускают.
И что? Выпустили 1.7
Генераторы-итераторы, десруктивное присваивание, yield, let и другие полезные фичи js 1.7,1.8 никто кроме FF не поддерживает.
Это ж лебедь, рак и щука.
Мозилла рвётся в облака, хром пятится назад, а ишак тянет в проприетарную воду.
hm..)
Родился Ленин в солнечном апреле,
Когда звенела музыкой капель.
И землю нашу сделали добрее
Апрель и Ленин, Ленин и апрель.
И все же хоронить -- это нетскейкп. Опера стабильно держит свои 5% рынка)
Она относительно стабильна, весит меньше хрома, много чего умеет, и неплохо проходила ACID тест..
А можно пруф?
Просто неясно чем такое поведение можно объяснить кроме грибов
http://habrahabr.ru/company/opera/blog/169239/
http://habrahabr.ru/post/169867/
Там ведь не только Вебкит. Там все кишки от Хром(иум)а. Даже Maxthon содержит хоть что-то своё. А при переходе с Оперы на Хромооперу как минимум теряется почтовый клиент и вся переписка, нажитая за пятнадцать лет.
Не гоните. Это же высшая степень подлости.
Как хорошо что я никогда не юзал его.
В целом идея перейти на опенсурсный движок и не плодить свой -- хорошая. Но вот что с пользователями они так поступили -- это хуево, кнечно
P.S. И да, снова напомню Maxthon и Lunascape, содержащие несколько движков, между которыми можно переключаться, и собственный UI.
MWA-HA-HA-HA-HA!!!
То о чём так много говорилось.
Но при этом Opera Mail содержит gstreamer и прочую питушню. Ну а чо, вдруг кто-то пришлёт письмо в формате HTML5 с видеоклипами. Почтовый клиент должен уметь отображать даже такое письмо.
Думаю в противном случае уволенная команда нашла бы другие источники финансирования и продолжила бы пилить интересный браузер с уникальными фичами.
Чую что к этому чёрному делу приложились грязные лапы гугля.
То какой-то security-policy глючный, что запрещает чего-то и нихера не работает.
Лучше б он издох наконец, вместо оперы.
на сафари она ломается и от пользователей жалобы.
То какой-то security-policy глючный, что запрещает чего-то и нихера не работает.
[/quote]
Расскажите подробнее, пожалуйста, иначе очень похоже на "я не люблю %some_product%, у меня что-то где-то когда-то с ним не работало"
>Расскажите подробнее, пожалуйста, иначе очень похоже ....
http://stackoverflow.com/questions/1144894/safari-doesnt-set-cookie-but-ie-ff-does
http://stackoverflow.com/questions/408582/setting-cross-domain-cookies-in-safari
http://stackoverflow.com/questions/23261301/required-attribute-not-work-in-safari-browser
На блядском маке ессно.
Еще с localStorage какие-то траблы помню были. Короче много жалоб на этот пидорский браузер, Тимкуки всякие его писали.
2) хм, и правда говено
3) бага, да. Но нет такого браузера, который бы поддерживал все атрибуты.
Safari говно, но на самом деле любой браузер говно в той или иной степени
Домен тот же.
Да это только то что я вспомнил навскидку.
>но на самом деле любой браузер говно в той или иной степени
Понятно. Но почему в остальных браузерах работает вполне сносно, а с сафари столько боли?!
На ишак новый мало серъезных жалоб не помню, в основном сафари и хром.
Просто Ecma-262 то еще мутное говно.
Там же одни тимкуки работают. Это хуже антимидаса.
В гугле тоже лояльно к ним относятся, не настолько конечно, но движок один и тот же.
А вот на Айка давеча нападали злобные пидарасы, призывая бойкотировать Firefox, что как бы намекает для какой категории людей сделан каждый из браузеров.
И факта положительного отношения к лицам нетрадиционной ориентации это не отменяет.
Именно!
Я видел safari на Mac OS и оно не использовало сервера Apple, потому как ходило на наши интранет сайты, коие в серверах Apple даже не резолвятся)
Жопа там была с HTTPS: какой-то из алгоритмов не поддерживался (DSA, чтоли) а жабий keytool генерил (по-умолчанию) сертификаты именно с таким алгоритмом, и в итоге сайт по https открывался ВЕЗДЕ кроме сафари) Может быть про то и речь.
Тут можно сослаться на глючный порт эппловских библиотек на Windows и поспорить о том, что извращённее: Safari/Windows или IE/MacOS.
Кстати, IE for Mac действительно существовал года так до 2004го.
не для всех.
Хотя в целом ситуация лучше конечно. Проклятый IE 6 уже никого не волнует, можно верстать боль-мень семантически, всякие сетки вроде бутстрапа появились (ждем felxmodel везде), вокруг JS выросли всякие JQuery, ангуляры итд. Но гниль внутри осталась.
В ie8 ведь даже indexOf в массивах нет...
Имхо проблема Js не в indexOf, а в:
1) Отсутствии неймспейсов
2) Отсутствии понятия модуля/пакета (вытекает из пункта один)
3) Невнятных типах и невнятных правилах их преобразования
4) Плохой поддержке обычного класс-бейзд ООП
Как-то так)
Ну 1-2 с горем-пополам пофиксили заворачиванием в функции и AMD. Осталось дождаться, пока все либы так обернутся и перестанут срать в глобалки...
Типы и их преобразования ужасны, да. Стандартная либа - аналогично. Кучи важных функций не хватает. В новых версиях, правда, поюзабельней стало. Но пока старое дерьмо не умрёт - придётся юзать прослойки и обёртки.
> класс-бейзд ООП
Да тут объектов и методов то нет, какие нахрен классы? :)
Объекты можно эмулировать (равно как и классы) но это очень больно и сложно.
* Отсутствие коллекций, строительных блоков для коллекций (т.е. итераторов, как минимум).
* Отсутствие элементов метапрограммирования (не все возможно, да и не нужно пихать в стандартную библиотеку, имея хорошие инструменты метапрограммирования, можно было бы и ООП на любой вкус запилить, и анонимные функции по-короче описывать и т.п.)
* Отсутствие инструментов помогающих интерпретатору / компилятору в понимании кода (таких, которые бы позволили, возможно ценой менее обобщенного кода писать код более еффективный).
* Безопасность, политики безопасностей, контраткы и т.д. просто отсутствуют.
* Низкоуровневая билбиотека для создания графических компонент.
* Ну и по мелочам:
+ возможность обрабатывать разные исключения по-разному.
+ поддержка разнообразных популярных медиа форматов (картинки, музыка, видео).
+ другой базовый численный тип (а лучше два - безразмерные целые и безразмерные псевдовещественные).
+ существующее ООП упразднить (можно либо вообще без него и дать на откуп библиотекам, либо взять за основу что-то более вменяемое, вариантов хватает).
+ строительные блоки для многопоточности.
+ существующий набор типов и отношения между ними вообще бессмыслица полная. Заменить на что-нибудь более продуманое.
+ специальные условия для вызова eval.
+ система библиотек которые не нужно скачивать каждый раз при просмотре страницы (включая возможность компиляции в байткод по желанию пользователя).
+ интерфейс к базам данных (очень жаль, что локал сторидж победил вебдб, но может он еще вернется).
Но реализовать это не так-то просто потому что нет ни модулей ни репозитория.
К примеру в перле в стандартной либе тоже ничего такого нет, но есть стандрты де-факто вроде DBI, коие ставятся с репозитория.
С остальной частью согласен.
+ текста в нем как такогового нету (только нарисовать, а поредактировать - никак).
+ хотелось бы, чтобы АПИ был все-таки немного более высокоуровневый, и векторный. Ну, чтобы события мышки не были таким геморроем.
+ поддержка CSS.
На самом деле и сейчас можно ее разработать, распостранять через npm, компилировать requirejs итд, но это все какие-то третесторонние конструкции, к языку отношения не имеющие.
+1. Сильно не хватало.
>* Отсутствие элементов метапрограммирования
В принципе возможно, но не особо нужно.
>* Отсутствие инструментов помогающих интерпретатору / компилятору в понимании кода
>+ другой базовый численный тип (а лучше два - безразмерные целые и безразмерные псевдовещественные).
Вроде компиляторы и так справляются. Некоторые вещи потихоньку вводятся. Те же типизированные массивы:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Typed_arrays
>+ существующее ООП упразднить (можно либо вообще без него и дать на откуп библиотекам, либо взять за основу что-то более вменяемое, вариантов хватает).
>+ существующий набор типов и отношения между ними вообще бессмыслица полная. Заменить на что-нибудь более продуманое.
Согласен.
В Node.js в Buffer как раз всяких readInt16LE и товарищей понаделали.
Вроде бы и забил на старые ие - так все равно дерьмо вылезло: пришлось -webkit добавлять из-за сафари на айпаде.
И все это хендлится один раз: ты пишешь transform, а препроцессор разворачивает в нужное.
-----
Обратите внимание, опять же: люди придумали декларативный язык чтоб из него компилироваться в другой декларативный язык. Причем половина людей пишет на одном языке, а вторая половина на другом (а третья половина на остальных семи существующих препроцессорах). Ну не пиздец-ли? Такое только в вебе бывает в 2014 году
Полный. У меня МЕТАПРОГРАММИРОВАНИЕ.
> Такое только в вебе бывает в 2014 году
Лолчто? autotools.
Вот чорт, и правда)