
Konstantin
18.08.2016
18:02:02
Сколько кода генерит это чудо?

Ҫѐҏӗѫӑ
18.08.2016
18:02:07
хз
я пробовал, но не смотрел

Konstantin
18.08.2016
18:02:13
Если hello world написать?

Google

Ҫѐҏӗѫӑ
18.08.2016
18:02:35
но я пробовал еще старый
с сигналами
опачки) монады) а чот он молчит что монад нет

Sergey
18.08.2016
18:03:27
Ну сигналы - это тоже вероятно какая-то монада

Ҫѐҏӗѫӑ
18.08.2016
18:03:29
стыдно!
перед хаскеллистами
сигнал — не монада
он не подчинаяется монадическим правилам
последний доклад же тоже про веб будет?
короче кто хочет норм язык, надо брать настоящие взрослые: clojure, ocaml, scala, haskell
для них всех есть норм транспилеры
clojurescript, bucklescript, scala.js, ghcjs

Alex
18.08.2016
18:06:25
rx кто-то использует с TS?

Google

Ҫѐҏӗѫӑ
18.08.2016
18:07:14
5

Alex
18.08.2016
18:07:38
подтаскивает дефенишены сразу?
или надо reference path

Ҫѐҏӗѫӑ
18.08.2016
18:08:12
подтаскивает

Konstantin
18.08.2016
18:08:26
Это даже веселее чем компиляторы
тьфу, не то(

Alex
18.08.2016
18:12:01

Ҫѐҏӗѫӑ
18.08.2016
18:17:40
он сам подтягивает
tsc берет из его же package.json

Sergey
18.08.2016
18:20:21
vscode уже научился не из корня брать tsconfig?

Alex
18.08.2016
18:21:09
интересно почему в rx4 нет поля, хотя дефинишены лежат рядом

Filipp
18.08.2016
18:24:04

Sergey
18.08.2016
18:24:32

Aldar
18.08.2016
19:37:50
Так что elm уже устарел?

Andrey
18.08.2016
19:38:07
уже?

Ҫѐҏӗѫӑ
18.08.2016
19:39:45
еще нет
он все такой же прыщавый карапуз
но кажется у него неизлечимая и серьезная болезнь

Google

Alex
18.08.2016
20:30:42
какая?

Ҫѐҏӗѫӑ
18.08.2016
23:53:31

Alex
19.08.2016
03:51:16
http://elm-lang.org/blog/how-to-use-elm-at-work
рак яичек
смотрите, как бы он не заразил всех вокруг
Кто-то использует VirtualTimeScheduler/TestScheduler в Rx5?
https://www.infoq.com/presentations/functional-pros-cons
https://www.youtube.com/watch?v=WupzbiMZrl8

andretshurotshka?❄️кде
25.08.2016
08:19:03
Парни, у нас появилась группа по Vue.js - это библиотека для построения интерактивных веб-интерфейсов, которая фокусируется на ViewModel слое паттерна MVVM. Многие наверняка слышали о ней. Всем, кому это интересно, добро пожаловать: https://telegram.me/vuejs_ru


Vasiliy
25.08.2016
11:23:54
const tags$ = entries$
.mergeMap<File>((entry: FileEntry) => Rx.Observable.bindCallback(entry.file.bind(entry))())
.mergeMap((file: File) => Rx.Observable.fromPromise(getMediaTags(file)));
^ как сделать так чтобы это выполнялось синхронно?
getMediaTags:
export const getMediaTags = (file: File) => new Promise(
(resolve, reject) => {
const url = file.name;
const reader = new FileAPIReader(file);
ID3.loadTags(url, () => {
const tags = ID3.getAllTags(url);
const data = knownTags.reduce((acc, tag) => {
acc[tag] = getValue(tags, tag);
return acc;
}, {});
resolve(data);
}, {
tags: knownTags,
dataReader: reader,
onError: reject,
});
});
все прост
concatMap, кек, я ваще пока не въехал похоже в rxjs)

Ярослав
25.08.2016
11:42:31
Резолв промиса гарантированно выполняется асинхронно

Vasiliy
25.08.2016
11:43:06
да понятно что там эвейт
просто в случае мерджа этот эвейт тоже будет параллельно идти, поэтом нужен concat:
const tags$ = entries$
.mergeMap<File>((entry: FileEntry) => Rx.Observable.bindCallback(entry.file.bind(entry))())
.concatMap(async (file: File) => await getMediaTags(file));

Alex
25.08.2016
12:44:10
.concatMap(async (file: File) => await getMediaTags(file))
жесть
работает?

andretshurotshka?❄️кде
25.08.2016
12:46:38
А смысл так делать?

Google

Alex
25.08.2016
12:47:00
не знаю, это вообще работать будет?

andretshurotshka?❄️кде
25.08.2016
12:47:10
Оно все равно промис вернет)

Alex
25.08.2016
12:47:37
я async/await не использую

andretshurotshka?❄️кде
25.08.2016
12:47:56
Так они и не нужны с rxjs должны быть

Alex
25.08.2016
12:47:58
concatMap ожидает синхронную функцию
async (file: File) => await getMediaTags(file) это что даст?

andretshurotshka?❄️кде
25.08.2016
12:48:47

Alex
25.08.2016
12:48:59
а
надо либо то либо то все-таки
т.к. rxjs потоки Это просто способ контроля флоу как и async/await

Filipp
25.08.2016
12:51:55
Ну там надо fromPromise поставить после async функции
я бы даже сказал .map(getMediaTags).concatMap($.fromPromise)

Alex
25.08.2016
13:09:28

andretshurotshka?❄️кде
25.08.2016
13:10:36

Alex
25.08.2016
13:22:58
можно резолвить сихронно

Ярослав
25.08.2016
13:23:59
приведи пример

Vasiliy
25.08.2016
13:55:42

Alex
25.08.2016
14:01:31
приведи пример
в chain попадет асинхронно, сам resove может быть вызван синхронно

Google

Filipp
25.08.2016
14:02:54
нативный промис всегда асинхронный
По спецификации
Но не во всех браузерах это так реализовано к сожалению

Vasiliy
25.08.2016
14:04:42