Мне в плане пробелов перед знаками пунктуации повезло, потому что я перед построением синтаксического дерева разбиваю текст на предложения с помощью Томита-парсера от Яндекса, а он отдает результат как раз в таком виде.
Да, действительно, с точкой и без точки разница может быть весьма существенной, пробелы перед символами пунктуации тоже влияют на результат. Тоже обращал на это внимание, но за давностью дел забыл упомянуть об этом в тексте. Спасибо. Ваши примеры:
С точкой:
Маша увидела зелёного крокодила.
Без точки и вправду сенсация, открыт новый глагол.
Маша увидела зелёного крокодила
Соблюдайте правила безопасности при использовании печи , следите за состоянием дымоходов
Кстати, получается, что предложения лучше скармливать анализатору так, чтобы перед знаками пунктуации стояли пробелы, а в конце предложения стояла точка (или "!", "?")?
Мне синтаксическое дерево понадобилось в модуле определения тональности слов/коротких фраз в тексте. Если построить дерево, то становится понятно, какие тональные признаки связаны с интересующей фразой, а какие нет.
Для репозитория можно воспользоваться этой реализацией. Но, как вы и пишете, с сущностями при этом стоит работать только через репозиторий. Вместо мутаторов на мой взгляд стоит использовать явные геттеры-сеттеры и при необходимости делать преобразование данных в них.
Не удивлюсь, что если я выделил бы 1 процессор для виртуалки вместо 4, то оперативной памяти понадобилось бы раза в 4 меньше, т.е. хватило бы 3 ГБ. Возможно, количество параллельных процессов при сборке можно задать где-то в конфигурации Bazel, я не искал.
А для других языков там есть реализации? Если есть пример как это делают для другого языка, то скорее всего удастся сделать по аналогии, обучив на нужном корпусе.
Но представители компании Facebook заверили, что экспериментальная функция обкатывалась в пределах города для небольшого количества пользователей. Эксперимент продолжался всего четыре недели в конце 2015 года и уже закончен (слава богу).
Из этой формулировки может следовать что угодно:
Эксперимент продолжался всего четыре недели в конце 2015 года и уже закончен, и впредь эта функция не будет использоваться.
Эксперимент продолжался всего четыре недели в конце 2015 года и уже закончен, новая технология теперь работает повсеместно.
По поводу immutable. Как было сказано в комментарии выше, это достигается объявлением приватных свойств, которые инициализируются только через конструктор и читаются через геттеры.
Если с помощью immutable можно было бы запретить такое, и это было бы нормально по производительности, то смысл в immutable был бы на мой взгляд:
class Person {
public $id;
public function __construct ($id) {
$this->id = $id;
}
}
immutable class Transaction {
public $amount;
public $fromPerson;
public $toPerson;
public function __construct ($amount, Person $from, Person $to) {
$this->amount = $amount;
$this->fromPerson = $from;
$this->toPerson = $to;
}
}
$person1 = new Person(1);
$person2 = new Person(2);
$transaction = new Transaction(100, $person1, $person2);
$person1->id = 10; // Вот если бы тут выдавать Fatal Error...
А если этого не запрещать, то остается ловушка, в которую не так уж и сложно попасть.
Мне в плане пробелов перед знаками пунктуации повезло, потому что я перед построением синтаксического дерева разбиваю текст на предложения с помощью Томита-парсера от Яндекса, а он отдает результат как раз в таком виде.
Да, действительно, с точкой и без точки разница может быть весьма существенной, пробелы перед символами пунктуации тоже влияют на результат. Тоже обращал на это внимание, но за давностью дел забыл упомянуть об этом в тексте. Спасибо. Ваши примеры:
С точкой:
Без точки и вправду сенсация, открыт новый глагол.
Кстати, получается, что предложения лучше скармливать анализатору так, чтобы перед знаками пунктуации стояли пробелы, а в конце предложения стояла точка (или "!", "?")?
Мне синтаксическое дерево понадобилось в модуле определения тональности слов/коротких фраз в тексте. Если построить дерево, то становится понятно, какие тональные признаки связаны с интересующей фразой, а какие нет.
Для репозитория можно воспользоваться этой реализацией. Но, как вы и пишете, с сущностями при этом стоит работать только через репозиторий. Вместо мутаторов на мой взгляд стоит использовать явные геттеры-сеттеры и при необходимости делать преобразование данных в них.
Насчет классики, результаты такие:
Не удивлюсь, что если я выделил бы 1 процессор для виртуалки вместо 4, то оперативной памяти понадобилось бы раза в 4 меньше, т.е. хватило бы 3 ГБ. Возможно, количество параллельных процессов при сборке можно задать где-то в конфигурации Bazel, я не искал.
А для других языков там есть реализации? Если есть пример как это делают для другого языка, то скорее всего удастся сделать по аналогии, обучив на нужном корпусе.
Очень похоже на то, но не совсем то. Чтобы работало так
надо видимо устанавливать это.
Если написать так
то работает, но при клике на ссылку в браузере, браузер тоже открывает эту страницу и там остается "белая страница".
Попробовал, отлично работает. Сделал аналогично для Laravel.
Using polyfill?
Если говорить про "навязшую в зубах" пирамиду Маслоу, то как же без этой картинки

Из этой формулировки может следовать что угодно:
Эксперимент продолжался всего четыре недели в конце 2015 года и уже закончен, и впредь эта функция не будет использоваться.
Эксперимент продолжался всего четыре недели в конце 2015 года и уже закончен, новая технология теперь работает повсеместно.
С
finalможно определять только методы и классы. Ваш пример выдастДа, прошлогодний вариант выглядел получше.
По поводу
immutable. Как было сказано в комментарии выше, это достигается объявлением приватных свойств, которые инициализируются только через конструктор и читаются через геттеры.Если с помощью
immutableможно было бы запретить такое, и это было бы нормально по производительности, то смысл вimmutableбыл бы на мой взгляд:А если этого не запрещать, то остается ловушка, в которую не так уж и сложно попасть.
Кстати, стоит помнить, что при инкременте строки не всегда просто инкрементируется последний символ.
Если строку можно преобразовать в число, то перед инкрементом это происходит:
Но не всегда:
Насчет разных версий PHP
До PHP 7
В PHP 7
NULL
Но при этом:
В следующих случаях инкремент тоже не имеет эффекта:
Как с
file_get_contents()например настроить таймаут на ожидание ответа?Где можно ознакомиться с результатами?
Если время обработки одного элемента очереди — несколько минут, как поведет себя такая реализация?