LINUX.ORG.RU

Javascript


144

12

Всего сообщений: 99

markdown-it — парсер markdown с расширяемым синтаксисом

Группа Open Source

Ключевая особенность нового парсера — простота расширения синтаксиса. При использовании маркдауна пользователь рано или поздно упирается в то, что чего-то не хватает и нужно делать HTML-вставки. В markdown-it можно добавлять новые элементы синтаксиса через плагины. В результате сохраняется безопасность сгенерированной HTML-разметки и нет необходимости использовать сложные валидаторы вроде owasp для защиты от XSS.

Парсер написан на javascript, и работает как в браузере, так и на node.js. Несмотря на язык программирования и заложенную гибкость, markdown-it имеет очень высокую скорость, уступая только скомпилированным вариантам на С.

Другой приятной особенностью парсера является следование спецификации CommonMark.

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

 , ,

Vit
()

Google представил Lovefield — SQL- подобный движок запросов к БД на основе Javascript

Группа Google

Сегодня Google представил релиз библиотеки с SQL-подобным синтаксисом, написанную на языке Javascript.

Поскольку начиная с 2010 года сообществу так и не удалось выработать стандарта WebSQL, в этой области не существовало реляционной БД, которая могла обеспечить полноценную кросс-браузерность.

Имеющиеся решения — IndexedDB и LocalStorage были по сути объектно-ориентированными хранилищами и не имели свойств,которыми обладают реляционные БД.

Lovefield создан, чтобы заполнить этот пробел в подобном ПО.

Он предоставляет мощный и гибкий движок запросов. В качестве бэкэнда в нем используется IndexedDB.

Синтаксис самих SQL-запросов декларативен, т.е. отсутствует прямой парсинг запросов, что делает систему устойчивой к SQL-инъекциям, а также простой в изучении для разработчиков, уже хорошо знакомых с традиционным SQL.

На данные момент движок Lovefield реализует такую функциональность:

  • Поддержка запросов select, insert, update и delete;
  • Простая семантика транзакций для обеспечения атомарности операций;
  • Возможность задания ограничений для проверки сохранения целостности (primary key, unique, nullable/not-nullable).
  • Поддержка агрегатных функций(count, min, max, sum, avg, stddev, distinct);
  • Поддержка группировки в SELECT-запросах через выражение «group by»;
  • Возможность формирования запросов, охватывающих несколько таблиц (INNER JOIN, OUTER JOIN);
  • Более простой, чем в IndexedDB, механизм изменения схемы данных;
  • Кроссбраузерность — поддерживаются браузеры Chrome, Firefox, IE10.

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

Lovefield обеспечивает приемлемую производительность для БД размером до 50 тысяч строк.

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

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

 , , ,

Twissel
()

Новый высокопроизводительный движок JavaScript Higgs

Группа Open Source

Вышла новая версия высопроизводительного движка JavaScript Higgs, написанного на D. Тестирование новой версии показало, что практически во всех тестах движок значительно обходит в производительности TraceMonkey и v8.

Результаты теста for-in loops:

  • Higgs 2.91s
  • V8 3.29.66 (baseline) 4.98s
  • V8 3.29.66 (Crankshaft) 4.95s
  • TraceMonkey 4.12s

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

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

 , ,

Xroft
()

SpiderMonkey вышел в лидеры в тестах JS

Группа Mozilla

Об этом свидетельствует сайт http://arewefastyet.com
Так, на kraken (тест от самих мозилловцев) SpiderMonkey вырвался вперед еще прошлым летом. А уже в августе нынешнего года обошел всех в sunspider (тест от Safari). И вот, несколько дней назад ему покорился octane (тест от Google).

Таким образом, в гонке интерпретаторов js новый лидер.

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

 , , ,

special-k
()

Вышел GNU ease.js 0.2.4

Группа GNU's Not Unix

ease.js — классический объектно-ориентированый фреймворк для JavaScript, предназначенный для избавления от шаблонного кода и упрощения перевода на JavaScript с других объектно-ориентированных языков.

Это служебный релиз, исправляющий ряд ошибок, большинство из которых появились в версии 0.2.3 и в первую очередь представлены несовместимостью с ECMAScript 3. Пользователи, которым нужна поддержка сред ES3 (в частности, IE≤8), рассматривают версию 0.2.3 как сломанную. Версия 0.2.3 вышла на прошлой неделе 28 июля.

Изменения:

  • [багфикс] ссылки method.super в ease.js и тестовых примерах теперь ES3-совместимы
  • [багфикс] прототип Global, представленный в версии 0.2.3, использовал реализацию, которую не поддерживал IE≤8; теперь используется альтернатива
  • [багфикс] Interface.isInstanceOf теперь отрабатывает корректно, как задокументировано в разделе совместимости руководства
    • Когда передан объект, чей конструктор не является классом ease.js, он теперь откатывается в Interface.isCompatible (как и должно быть)
  • [багфикс] исправлен тест, сломанный Node.js 0.10.27
    • Для подробностей, что же изменилось в Node.js, см. коммит cef45cd0
  • Поддержка trait сейчас в разработке и будет раздокументирована к версии 0.3.0; в настоящее время она включена для ознакомления, функционирует и всесторонне оттестирована, но не завершена.
  • [превью] [багфикс] неаргументные trait'ы теперь применяют для «__mixin» пустой массив вместо «undefined», неподдерживаемого ES3.

>>> Источник

 , ,

MiniRoboDancer
()

ki - смешиваем Clojure и JavaScript

Группа Open Source
var nums = ki (take 6 (map (fn [x] (js x * 2)) (range 1000)));

Идёт разработка ещё одного языка программирования, транслируемого в JavaScript: ki. ki дополняет JavaScript приёмами функционального программирования и неизменяемыми структурами данных. На ki можно писать целые приложения, отдельные компоненты или просто функциональные «однострочники».

Синтаксис, семантика и структуры данных языка вдохновлены Clojure и ClojureScript.

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

 , ,

vi0
()

Haste - компилятор Haskell в JavaScript

Группа Open Source

Идёт разработка Haste (HASkell To Ecmascript) - компилятора из Haskell в JavaScript.

Перед проектом стоит цель создать практичный компилятор из Haskell в Javascript.

( читать дальше... )

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

 , haste,

vi0
()

Анонсирован GNU ease.js 0.2.0

Группа GNU's Not Unix

Релиз содержит захватывающие новые возможности, парочку багфиксов и обширную зачистку тестовых примеров. Кроме этого, проект перелицензирован под GNU GPLv3+ с целью помощи в борьбе против несвободного JavaScript.

Изменения по сравнению с версией 0.1.1:

  • [лицензия] смена лицензии с LGPLv3+ на GPLv3+;
  • [багфикс] this.__super теперь отображает стек вместо того, чтобы быть полностью уничтоженным после вызова методов ease.js;
  • [багфикс] защищённые члены переопределяют супер-супертипы и теперь корректно обрабатываются;
  • [планы] поддержка trait'ов и mixin'ов:
    • начата разработка поддержки trait'ов/mixin'ов (в значительной степени вдохновлено Scala), на текущий момент ещё не задокументирована в руководстве;
    • полная документация будет доступна, как только будут распределены все TODO по trait'ам; пока можно ознакомиться с test/Trait/*Test.js, содержащими подробные примеры и обоснования. Тесты производительности для сравнения с без-trait'овым использованием доступны в директории test/perf.
    • реализация является стабильной, но неполной; для более подробной информации см. README.traits;
  • методы работы с прокси и связанное с ними ключевое слово proxy теперь задокументированы (работа с прокси была представлена в версии 0.1.1);
  • все старые тестовые примеры JS, не связанные с производительностью, теперь являются частью нового набора:
    • обширная зачистка тестов и приведение форматирования к единому виду;
    • все тесты теперь содержат обоснования (как часть предваряющего блока комментариев);
  • теперь используются autotools; инструкции см. в README;
  • версия 0.1 (под LGPL) больше не поддерживается; пользователям желательно обновиться до 0.2.0 и обратить внимание на положения новой лицензии.

Новая домашняя страница проекта - https://www.gnu.org/software/easejs; на easejs.org размещён редирект на неё.

>>> Источник

 ,

MiniRoboDancer
()

SICP, теперь и на JavaScript

Группа Документация

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

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

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

 ,

anonymous
()

MetaJS — первый Lisp, который угадывает мысли

Группа Open Source

На GitHub выложен исходный код нового языка программирования MetaJS. Синтаксис языка близок к Clojure, MetaJS также как ClojureScript компилируется в JavaScript, но без внешних зависимостей.

MetaJS разрабатывается в рамках проекта Coect.net, поставившего амбициозную задачу заменить электронную почту, XMPP (Jabber) и социальные сети открытым универсальным протоколом.

MetaJS полностью реализован на MetaJS и может перекомпилировать себя. MetaJS обладает рядом интересных возможностей, среди которых можно выделить специальный синтаксис для упрощения последовательных вызовов методов одного объекта (часто применяется, например, в jQuery). MetaJS поддерживет стандартный для Lisp-языков синтаксис определения макросов, короткие анонимные функции в стиле Clojure #(> %1 %2) и деструктуризацию параметров.

Но главная особенность MetaJS — способность в определенных случаях угадывать мысли программиста и генерировать недостающий код. Демонстрация и разоблачение.

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

 , , ,

dogada
()

Вышел Amber 0.11.0

Группа Open Source

Amber — это современная реализация языка программирования Smalltalk, компилирующаяся в JavaScript и предназначенная для работы прямо в браузерах. Amber предоставляет разработчику классическое Smalltalk-окружение, которое включает в себя браузер классов, REPL, а также интерфейс для работы с юнит-тестами (SUnit).

Amber позволяет вести инкрементальную разработку в лучших традициях Smalltalk: все изменения в коде подхватываются системой «на лету». Код компилируется в эффективный JavaScript и сохраняется на сервере с помощью протокола WebDAV.

Amber прозрачно интегрируется с библиотеками на JS: разработчику доступно всё многообразие библиотек JavaScript.

В новой версии, помимо традиционных улучшений производительности и исправлений ошибок, вниманию разработчиков так же представляется новый вариант IDE под названием «Helios» (демо доступно в архиве, файл «helios.html»). В рамках работы над новой IDE продолжается разработка пошагового отладчика смолток-кода (ветка «debugger» в репозитории).

Немного статистики по данной версии:

  • 433 коммита от 13 разработчиков (общее число разработчиков достигло 25);
  • 50 новых юнит-тестов в ядре системы (общее число юнит-тестов достигло 313);
  • исправлено 60 известных проблем.

Домашняя страница проекта

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

 , ,

yoghurt
()

DevConf 2013 пройдет 14 июня в Москве — 71 заявка, секции Python,Ruby,JS, PHP и новая Android секция.

Группа Конференции и встречи

Напоминаем что продолжается прием заявок на доклады по python, ruby,js, php, mobi.

Интересные заявки на доклады:

Prehistoric Python: Patterns Past their Prime Lennart Regebro, автор книги «Porting to Python 3»

Tulip — новый стандарт на асинхронный код Андрей Светлов, Python Core Developer. Участвует в создании tulip.

UI нового поколения с Leap Motion и Python'ом Павел Коломиец. Любит Python3 (!), zeromq, redis и другие прогрессивные технологии.

( читать дальше... )

Полный список заявок на доклады и мастер-классы

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

 , , , ,

devconf
()

jQuery 2.0

Группа Интернет

Вышла новая версия популярной JavaScript библиотеки jQuery — 2.0.

Основные изменения:

  • Удаление поддержки браузеров Internet Explorer 6-8, благодаря чему библиотека стала меньше и быстрее. По сообщениям авторов, наиболее проблемными из поддерживаемых браузеров являются старые версии WebKit, используемые в Android 2.x.
  • Возможность собрать собственную версию библиотеки, выбрав только часть из ее 12 модулей.
  • Совместимость API с jQuery 1.9.

Поддержка версии 1.x будет также продолжена, выпуск 1.10 с исправлениями ошибок состоится в течение двух ближайших месяцев.

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

 ,

maxcom
()

Обновление GNU LibreJS до 4.9.3

Группа GNU's Not Unix

Выпущена версия 4.9.3 GNU LibreJS.

GNU LibreJS является свободным расширением для браузеров, основанных на Mozilla, таких как GNU IceCat и т. п., нацеленным на решение проблем JavaScript, указанных в статье Ричарда Столлмана JavaScript Trap.

GNU LibreJS разрешает выполнение только тех скриптов JavaScript, которые являются, согласно определениям из указанной статьи, свободными и/или тривиальными. В новой версии исправлены несколько ошибок.

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

Загрузить новую версию

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

 ,

record
()

Airtime 2.3

Группа Мультимедиа

Airtime (ранее LiveSupport, Campcaster) — веб-приложение, предназначенное для радиотрансляций, удалённого управления радиостанциями и распределения ресурсов между ними через браузер.
Разработка начата в 2003 году Micz Flor.

Особенности:

  • управление радиостанциями возможно с любого компьютера через Интернет;
  • планирование/редактирование сетки вещания радиостанций;
  • запуск предварительно созданного списка радиопрограмм в автоматическом режиме;
  • многопользовательский режим при составлении списка воспроизведения радиопрограмм;
  • распределение прав между ведущими/диджеями;
  • удалённое управление аудиоархивами, загрузками файлов, созданием радиопередач;
  • возможность публикации контента радиостанции на сайтах благодаря встроенным виджетам;
  • интеграция с SoundCloud;
  • запись и ретрансляция радиопередач;
  • использование ЯП аудио Liquidsoap для плавности переходов, усиливания и затухания звука, установки метки начала/конца для отдельных файлов с точностью до секунды;
  • поддержка Ogg/MP3;
  • простая установка с помощью пакета «Easy Install».

Изменения с прошлой версии:

  • сбор статистики по слушателям конкретной радиостанции с помощью Icecast/Shoutcast;
  • возможность сканирования только что добавленных треков для вставки плавных переходов между ними;
  • выравнивание громкости (ReplayGain) транслируемых треков;
  • улучшения в работе с памятью обновлённого ЯП аудио Liquidsoap, в связи с чем повышена потоковая производительность;
  • добавлена страница управления для пользователей без административных прав;
  • начиная с этой версии доступен интерфейс и на русском языке;
  • автоматический перевод языка интерфейса станций в соответствии с установленной локалью рабочего окружения.

>>> Полный список изменений

>>> Страница загрузки

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

 , , , ,

amorpher
()

jQuery 1.9

Группа Интернет

Вышла новая версия популярной JavaScript библиотеки jQuery: 1.9.

Основные изменения в этой версии:

  • Очистка API от устаревших и недокументированных вызовов. Изменения довольно значительные, для проверки совместимости существующих сайтов с этой версии выпущен отдельный скрипт jquery-migrate.js, предназначенный для облегчения тестирования и портирования старого кода
  • Добавлены новые CSS3 селекторы: :nth-last-child, :nth-of-type, :nth-last-of-type, :first-of-type, :last-of-type, :only-of-type, :target, :root и :lang
  • Возможность получить и модифицировать несколько css свойств за один вызов функции .css().
  • Добавлен source map — файл соответствия минифицированного исходного текста библиотеки исходному, для облегчения отладки.
  • Исправлено большое количество ошибок

Данная версия является последней, поддерживающей старые версии Internet Explorer, IE6, IE7 и IE8. Код версии 2.0, выпущенной в виде бета-версии уже очищен от их поддержки. Поддержка версии 1.9 продолжится и после выхода 2.0, однако в ней будут только исправляться обнаруженные ошибки.

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

 ,

maxcom
()

CasperJS 1.0

Группа Open Source

Вышла первая стабильная версия CasperJS — утилиты для автоматизации работы с веб-приложениями и их тестирования. Приложение построено на базе PhantomJS, безэкранной версии WebKit с поддержкой Javascript.

Основные функции:

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

Changelog

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

 , , ,

maxcom
()

Microsoft представила TypeScript — новый язык программирования для Web

Группа Интернет

Microsoft представила новый язык программирования для Web — TypeScript. Язык транслируется в JavaScript, транслятор языка доступен под лицензией Apache 2.0.

Основное преимущество языка — опциональная статическая типизация. В остальном язык близок к находящейся сейчас в разработке новой редакции JavaScript — проекте «Harmony». Кроме того, язык предлагает синтаксис для определения классов и интерфейсов, а также поддержку модулей.

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

 , ,

maxcom
()

Выпуск jQuery 1.8

Группа Open Source

Пару дней назад состоялся релиз популярной библиотеки. Данная версия совместима с последними версиями jQuery UI и jQuery Mobile. Основные изменения:

  • Переписан движок селекторов с использованием возможностей современных браузеров. Совместимость с IE при этом сохранена.
  • При изменении CSS-свойств префикс для данного браузера добавляется автоматически, где это необходимо.
  • Улучшения в плане модульности.
  • Исправлено более 160 ошибок.

Релиз доступен в официальном CDN проекта.

>>> Подробности в блоге

 ,

Apple-ch
()

OpenLayers 2.12

Группа Интернет

29 июня вышел релиз клиентской JavaScript библиотеки для отображения картографических данных в web-приложениях. Основные улучшения и дополнения:

  • Элемент управления изменением масштаба теперь может быть стилизован с помощью CSS
  • Введение значений по умолчанию в части проекций
  • Кэширование тайлов для оффлайнового использования
  • Основанная на CSS анимация тайлов
  • Полностью переписан код, отвечающий за поддержку работы с тайлами
  • Реализовано непрерывное масштабирование карты

>>> Перевод официального анонса

 , , ,

DR
()