В рамках проекта git.js (https://github.com/danlucraft/git.js) развивается реализация Git, написанная целиком на языке JavaScript. Проект git.js поддерживает работу как внутри веб-браузера, так и виде работающего в режиме командной строки клиента, запускаемого под управлением JavaScript-сервера node.js. Код проекта распространяется под лицензией MIT.В настоящий момент поддерживается только работа в режиме чтения. Возможно выполнение таких операций, как просмотр лога совершенных коммитов, вывод списка веток и отображение информации о находящихся в репозитории проектах. Дополнительно подготовлен API, позволяющий создавать размещенные в памяти репозитории, просматривать дерево объектов, формировать списки различий (diff), запрашивать объекты из удаленных репозиториев при помощи протоколов доступа к Git поверх HTTP. Из планов на будущее отмечается реализация поддержки записи в репозиторий, выполнения коммитов и создание веток.
Из реализаций Git на скриптовых языках программиров...URL: https://github.com/danlucraft/git.js
Новость: http://www.opennet.me/opennews/art.shtml?num=31418
Это что какая-то секта, которая пытается переписать все что только существует на JavaScript? Или это так часть "Java" в названии языка влияет...
Ну а почему бы и нет, тот же node.js очень и очень неплох
И правда - секта.
Нормальные люди, типа Торвальдса делают так:
1) О, есть проблема: нам нужна DVCS!
2) Анализ показал что хороших DVCS которые бы нас устроили под наши требования в природе нет.
3) Программится DVCS, отвечающая требованием пункта 2).
4) ???
5 PROFITГит напрограмлен по уму - ряд быстрых и эффективных утилей и скриптообвязка к ним. Юниксвейно, удобно, расширябельно и твикабельно. Вещь!
Как делают сектанты:
1) ???
2) А вот (ява, js, питон, перл, руби, пхп, скуль, брейнфак, whatever) - это круто! Давайте напишем на (яве, js, питоне, перле, руби, пхп, скуле, брейнфаке, whatever) аналог (имя уже существующей программы)! Потому что %s - круто!
Думаю нет, но вы можете основать секту Даваскриптофобов. Судя по каментам на каждую новость про софт, написанный на Джаваскрипт, сторонников у вас будет предостаточно.
>Думаю нет, но вы можете основать секту Даваскриптофобов. Судя по каментам на каждую новость про софт, написанный на Джаваскрипт, сторонников у вас будет предостаточно.Да не в этом дело. Просто странно наблюдать, как люди тратят свою жизнь на переписывание того, что уже давно написано и работает. Так ладно, получалось бы лучше, быстрее. Но таки нет. Как правило, сие переписывание оборачивается возрастанием системных требований на несколько порядков. И меня, как пользователя, эта тенденция удручает.
>Но таки нет. Как правило, сие переписывание оборачивается возрастанием системных требований на несколько порядков.Таки у каждого свои недостатки. Не хочу быть КО, но придется заметить, что производительность не единственный параметр нужности кода.
Вот по кроссплатформенности, удобности распространения, установки, обновления и сопровождения кода у JS и вэб-браузера как платформы конкурентов нет в принципе. Серверный JS конечно не имеет таких преимуществ, но он уже следствие популярности клиентского.
>Вот по кроссплатформенности, удобности распространения, установки, обновления и сопровождения кода у JS и вэб-браузера как платформы конкурентов нет в принципе.Но это не причина отказываться от быстрых оффлайновых приложений в пользу приложений внутри бровзера. Только вот тенденции говорят об обратном. Похоже, крупные игроки вроде гугля хотят создать искусственную зависимость от своих облачных сервисов со всеми вытекающими.
ну, если smart mode реализовали - то в этом даже смысл какой-то есть, как минимум, просмотрщик репозитория можно сделать.А так - тенденция таки странная. Гит всегда нёс на флаге свою скорость и эффективность, сомневаюсь, что это получится сделать в JS-реализации - не знаю.
Ну и традиционная мантра - такие штуки надо делать в NaCl + обвязка джаваскриптовыми интерфейсами. Можно было бы использовать кучу готового кода Git и получить заведомо высокую скорость. Тем более, что джаваскрипт - достаточноуродливый язык, как в плане количества граблей, так и из-за слишком компактного синтаксиса, который делает код весьма слабо читабельным.
Так то node.js использует V8 от корпорации бобра. А там со скоростью вполне прилично.Хотя по поводу читабельности с вами соглашусь - когда после JavaScript я попробовал Python, то немного приуныл, что JS не так красив и удобен.
Прилично по сравнению с чем, простите? Git написан на C, и NaCl ддаёт падение производительности в единицы процентов (если не меньше) по сравнению с нативным бинарником.Что до красоты - дело вкуса (я, допустим нетипизированные языки не люблю). Я говорил об объективных недостатках - разнообразных corner cases вроде проблем с автоматическим завершением операторов на новой строке и печально известной конкатенции через "+", а также о слишком компактном синтаксисе - там, где в других языках (особенно статически типизированных) будет просто из синтаксиса ясно, что происходит, в JS вы увидите просто еще одну анонимную функцию или параметр, для которого непонятно, что через него можно передать.
хочу git на плюсах
а чем на сях не устраивает?
хочу на трУ языке
вон даже на JS код получился более компактный нежели в оригинале на C
Т.е. Вас устраивает даже read-only, лишь бы на Ъ-языке и компактно? А коммитить нечего или для этого всегда есть libastral?
с чего вы взяли что часть которая занимает коммит, будет весить на тру языке как паровоз?
кстати покажите часть на С языке которая только read-only, сравним ее по размерам с js
> вон даже на JS код получился более компактный нежели в оригинале на
> CЛол. Высокоуровневые яп и созданы для этого.
Да... тенденция таки наблюдается. Старнно но складывается ощущение - что JS претендует на место asm только для веба. Непонятоно только чем он так нарвится тем, кто переписывает на нем готовые решения.
>Старнно но складывается ощущение - что JS претендует на место asm только для веба.Ну судя по последним тенденциям в разработке Qt и 8-й венды его уже тащат везде и, зачастую, в ущерб компилируемым языкам.
Я тоже не понимаю тенденции делать подобные приложения на JS, как например портировать doom или писать эмулятор для Linux, JS помойму для таких вещей не предназначен. Насчет скорости исполнения я тоже сомневаюсь что может быть быстро. Вызывают увашение крутые программисты на C, которые написали мощьные движки JS благодоря которым прораммист на JS может писать так вольно.