Google Code Search

Материал из Википедии — свободной энциклопедии
Это старая версия этой страницы, сохранённая A5b (обсуждение | вклад) в 20:19, 17 ноября 2013 (Интересные факты: +1). Она может серьёзно отличаться от текущей версии.
Перейти к навигации Перейти к поиску
Google Code Search
URL http://www.google.com/codesearch (архивная копия)
Тип сайта Поиск по исходным кодам
Владелец Google
Начало работы 2006[1]
Окончание работы 2012[2]
Текущий статус Используется для поиска в рамках проектов, размещенных на Google Code

Google Code Search — проект поисковой машины от Google Labs, индексировавшей исходные коды открытых программ, и позволявшей использовать в поисковых запросах регулярные выражения[1]. В виде бета-версии работал с 5 октября 2006 года по 15 января 2012 года[2]. Закрыт в связи с закрытием Google Labs.

Кроме поддержки регулярных выражений[1], имелась возможность более точного поиска с помощью специальных операторов. Среди них: lang: (указание языка программирования[1]), package: (имя проекта), license: (лицензия[1]) и file: (имя файла).

Индексировался код программ, хранившихся в различных форматах, включая tar.gz, tar.bz2, .tar, .zip, репозитории CVS и Subversion.

В ограниченном виде наработки Google Code Search продолжают использоваться для поиска в рамках кодов проекта Chromium, код которого расположен на сайте Google Code.[3]

Автором проекта, Russ Cox, была опубликована пара консольных утилит Cindex/Csearch, предоставляющая возможность индексирования и поиска по исходным кодам. Утилиты используют схожие с Google Code Search принципы, хотя не могут масштабироваться более чем на несколько десятков гигобайт исходников.[4]

Движок регулярных выражений

Сайт позволял использовать регулярные выражения в запросах, на момент создания такими возможностями не обладали другие поисковые системы. Это делало его похожим на программу grep, который выполняет поиск по огромной базе открытого исходного кода. Используется поиск на базе индекса триграмм и собственной реализации POSIX-совместимых регулярных выражений — RE2, написанной Russ Cox.[5] Исходные коды RE2 были открыты в марте 2010 .[6]

Google Code Search поддерживал POSIX-расширенный синтаксис регулярных выражений, за исключением обратных ссылок, сопоставления элементов и сортировки классов.[7]

Интересные факты

  • Некоторое время в 2008 году результаты поиска Code Search могли интегрироваться в основную поисковую выдачу Google[8].
  • Google code search использовался в комитете ISO при выборе имен некоторых новых функций в стандарте языка программирования Си (стандарт C11 от 2011 года)[9].
  • Code Search применялся хакерами для поиска уязвимостей в программах[10].

Примечания

  1. 1 2 3 4 5 Ed Burnette. Google: Code search and movies and gadgets, oh my! (англ.). ZDNet Dev Connection (5 октября 2006). — «Code search. This is for developers to help them find open source code. Features include the ability to search by regular expressions (go{2}gle), by language (lang:"c++" sprintf.*%s), or by license (-license:gpl quicksort).» Дата обращения: 17 ноября 2013.
  2. 1 2 Google Shuts Ten Services // The Register, 2011-09-05
  3. Code search по проекту Chromium.
  4. Cindex/Csearch - command-line file search tool, based on ideas from GCS
  5. Regular Expression Matching with a Trigram Index or How Google Code Search Worked, Russ Cox, January 2012
  6. Google Open Source Blog: RE2: a principled approach to regular expression matching. Дата обращения: 22 января 2013. Архивировано 3 февраля 2013 года.
  7. Google Code Search: FAQ // Google, архивная копия от 2008 года
  8. Nik Cubrilovic (2008-07-13). Google Now Displaying Code Search Results (англ.). Washington Post. Дата обращения: 17 ноября 2013.
  9. P.J. Plauger, Abandoning a Process, ISO/IEC JTC1 SC22 WG14 N1327: "while there are no occurances of quick_exit in a Google code search. "
  10. Johnny Long. Locating Code with Google Code Search // Google Hacking for Penetration Testers, Volume 2. — Syngress, 2011. — С. 227-230. — 560 с.

Ссылки