Почему Gremlin JavaScript использует сопоставление from_ вместо from?

Я боролся с этим в течение нескольких часов, прежде чем обнаружил, что вы должны использовать from_ вместо from при использовании javascript gremlin.

Покопавшись в исходном коде, я наконец обнаружил, что код использует from_ вместо from (см. code). Поскольку я новичок, это кажется странным, потому что его аналог to все еще to (а не to_, см. код здесь)

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

Кроме того, есть ли официальная страница документации для javascript gremlin где-то, чего мне не хватает? Я обеспокоен тем, что могу столкнуться с этими проблемами в будущем, и на самом деле нет официальной документации для версии JavaScript, и мне, возможно, придется пройти через ту же борьбу. Мне нравится гремлин, но если версия JavaScript нестабильна и не должна использоваться, я мог бы также рассмотреть другие альтернативы, кроме наборов Tinkerpop.


person Vlad    schedule 17.07.2018    source источник


Ответы (1)


Вариантам языка Gremlin (GLV) предоставляется некоторая свобода действий в отношении того, как они реализуют язык Gremlin, чтобы он чувствовал себя как можно ближе к синтаксису и идиомам программирования родного языка и, таким образом, избегал слишком большого загрязнения со стороны Java. Другими словами, если вы используете gremlin-javascript, это должно выглядеть так, как будто вы пишете код на JS, а не на Java. Таким образом, время от времени вы будете видеть небольшие различия между GLV.

Итак, что касается конкретно from_, мы обычно используем подчеркивание, когда у нас возникает конфликт на родном языке с зарезервированным ключевым словом. В Java from вполне приемлемо, но в других языках - нет. Для Javascript from в настоящее время не является зарезервированным словом, но мы готовимся к возможной форме import ... from, которая появится в будущем.

Что касается документации, я знаю не так много, кроме того, что вы уже нашли на веб-сайте TinkerPop. Мы надеемся, что в следующем выпуске будет доступно больше примеров и информации.

person stephen mallette    schedule 17.07.2018