This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2016-04-26
Channels
- # admin-announcements (4)
- # beginners (3)
- # boot (78)
- # cider (13)
- # cljs-dev (29)
- # cljs-edn (8)
- # cljsjs (11)
- # cljsrn (15)
- # clojure (81)
- # clojure-beijing (2)
- # clojure-belgium (3)
- # clojure-canada (1)
- # clojure-dusseldorf (8)
- # clojure-greece (6)
- # clojure-russia (40)
- # clojure-sg (1)
- # clojure-uk (59)
- # clojurebridge (1)
- # clojurescript (101)
- # core-logic (1)
- # cursive (3)
- # data-science (1)
- # datomic (60)
- # emacs (4)
- # error-message-catalog (12)
- # funcool (1)
- # hoplon (60)
- # jobs (1)
- # jobs-discuss (40)
- # leiningen (5)
- # liberator (1)
- # mount (22)
- # off-topic (8)
- # om (16)
- # onyx (53)
- # re-frame (11)
- # reagent (2)
- # specter (4)
- # testing (18)
- # untangled (51)
> ngrok генерирует тебе хост уникальный, иногда он меняется можно задать своё фиксированное значение для хоста
Кто хочет поиграть на ClojureScript, с призами? https://github.com/hola/challenge_word_classifier
> The data file shares the 64 kB quota with the JS file @dottedmag: а это в gzip-нутом варианте?
Полчаса назад лимит был ещё 256k, но в холовом слаке пообсуждали и нашли, как поужимать полный словарь до 140k :)
т.е. сложность не в задаче, а в том как ужать словарь в итоге?
а http запросы запрещены да? Ну а вдруг это тоже не учли
Запрещено звать require
, тесты гоняются в нодовой "виртуальной машине", без доступа к чему-либо.
> но в холовом слаке пообсуждали и нашли, как поужимать полный словарь до 140k а долго обсуждали?)
подскажите как правильно возвращать две структуры данных. строю поисковый индекс, соответственно: веду 1) вектор оригинальных записей (индекс) и 2) мапу с отдельными словами где values - номера в индексе. Завернуть их обе в еще одну мапу (вроде сложно)? Или использовать атомы. Атом кажется может подойти: структуры данных ведь мутабельные (тут и перформанс), но может есть более FP way, а то получается первая практическая задача и уже атомы, не уверен что это правильно
tuple! т.е. лист/вектор
@artemyarulin: типа дешевле будет?
ну если я правильно понял что всего будет всегда 2 значения [a b], то смысла городить мапу {:first a :second b} я не вижу
во всяких типизированных языках есть KeyValuePair<T1,T2>
Ага. И эту мапу (вектор) передать на вход функции осуществляющей поиск. А то получается я делаю (def index {}) в корне, строю индекс, но при выходе из функции получаю пусту мапу. Соответственно либо встраивать логику поиска в ту же функцию (что неправильно) либо передавать на поиск эту мапу/вектор и опять сразу же. Атом -это во мне ООПщик говорит, но вообще да, сложно соорентироваться. В ООП проще: построили индекс, он у нас лежит, когда надо берем используем. А тут dataflow получается непрерывный и пока не очень понятный
>мапа имеет ключи, ключи как набросок спеки - по мне очень даже ок тут согласен да
@andmed, если еще неясно как дальше использовать - я бы вектор возвращал [index, addresses]
, но если индекс у тебя будет общий для нескольких серчей, и ты его просто насквозь протаскиваешь - может лучше в атом какой-то сложить, видный всем учасникам?
таплы промисы, например, используют для [error, result]
, хотя там на самом деле [nil, result]
или [error, nil]
в питоне идеоматично тапл возвращать, если нужно много вернуть. в джаве - заворачивают в MyResult(), в котором 2 поля, в кложе я бы брал вектор или список
вообще - это у тебя 1в1 юзкейс бд. посмотри примеры использования датомика: на входе 2 аргумента: db, query; на выходе - квери резалт только, потому что дб следующей функции (если она есть) и так доступно как отдельный аргумент "снаружи"
@misha Спасибо! Значит оно так и задумано. Вообще юзкейсы о которых я думал, все такие: есть структура данных которая строится, а пользователей несколько. Вот курс алгоритмов на курсере сейчас: задачки с решением через графы. Прикидывал как можно переложить на кложу: самый простой вариант - просто обертка на джавошной либой принстона. Все с данными