These are chat archives for synrc/n2o

24th
Sep 2015
Alexandr
@alle-ox
Sep 24 2015 07:24
кстати это видемо баг javascript в браузерах вот например как посчитала Wolfram Alpha http://www.wolframalpha.com/input/?i=27155549637337042+%25+256&dataset=
27155549637337042 % 256 отстаток 208, 27155549637337040 остаток тоже 208, а 27155549637337044 остаток уже 212. куда-то потерялся остаток 210 :)
Alexandr
@alle-ox
Sep 24 2015 08:01
короче, что-то с математикой в браузерах на больших числах
Namdak Tonpa
@5HT
Sep 24 2015 08:39
помоему число слишком большое для браузера
ты видимо неправильно преобразования делаешь
Alexandr
@alle-ox
Sep 24 2015 08:40
и для node
Namdak Tonpa
@5HT
Sep 24 2015 08:40
ну если неправильно написано то в любом V8 будет неправильно :-)
Ilya Gorskin
@Revent
Sep 24 2015 09:09
@5HT в kvs store_mongo валится при добавлении keys
Namdak Tonpa
@5HT
Sep 24 2015 09:10
это к @sokal32
Ilya Gorskin
@Revent
Sep 24 2015 09:11
@sokal32 http://pastebin.com/TZK3XaS7 как то так
Alexandr
@alle-ox
Sep 24 2015 09:19
@5HT там простое взятие остатка от деления на 256
Namdak Tonpa
@5HT
Sep 24 2015 09:19
да но число явно не влазит никуда
или ты думаешь что у джаваскрипта длинная арифметика десятичная есть?
Alexandr
@alle-ox
Sep 24 2015 09:21
я думаю врятли.
Namdak Tonpa
@5HT
Sep 24 2015 09:21
ну так зачем ты такое пишешь? :-)
Alexandr
@alle-ox
Sep 24 2015 09:21
либы для nodejs с поддержкой bignum, обращаются сишечке
Namdak Tonpa
@5HT
Sep 24 2015 09:21
с большими числами нужно как со строками работать
да посмотри на оригинальный bert.js
это задача на 5 строчек :-)
сишные либы, node.js вы что люди!
Alexandr
@alle-ox
Sep 24 2015 09:23
всмысле оригинальный bert.js, который от rustyio?
Namdak Tonpa
@5HT
Sep 24 2015 09:23
ага
там же все это было
просто с числами как со строкой нужно работать
но не так как у расти
а через ArrayBuffer или DataView
а не через String
Alexandr
@alle-ox
Sep 24 2015 09:32
ну там тоже идет через остаток от деления и все это запихивается в строку
и там тот же косяк
если заэнкодить одно число, и потом его декодировать будет число чуть меньше чем должно быть
Alexandr
@alle-ox
Sep 24 2015 09:45
и в старом bert.js аналогичный баг
Namdak Tonpa
@5HT
Sep 24 2015 09:49
ну а что никак написать без бага нельзя? :-)
там не все оттуда надо
Namdak Tonpa
@5HT
Sep 24 2015 09:54
да и вообще можно bigint ограничить
нам какие файлы нужны
ну пару экзобайт не больше
Alexandr
@alle-ox
Sep 24 2015 09:56
тоже об этом думал
два петабайта хватит?
Namdak Tonpa
@5HT
Sep 24 2015 09:56
хотелось бы йобибайта
без йоби не хочу
2**80 чтобы работало
или 2*110 даже
это 24 нуля :-)
шо низя нормально написать в 10 строчек?
неверю
Ilya Gorskin
@Revent
Sep 24 2015 10:10
@5HT а client.js уже на ноде?
Namdak Tonpa
@5HT
Sep 24 2015 10:11
не на ноду портированы только те файлы где module.exports есть
незнаю пока как лучше n2o.js портировать на ноду
Alexandr
@alle-ox
Sep 24 2015 10:19
так ну вроде bignumber.js работает, попробую сделать коротко, красиво и чтобы работало правильно.
Namdak Tonpa
@5HT
Sep 24 2015 10:19
удаляй все оставляй самую суть и все должно быть на DataView или ArrayBuffer
хотя пофиг
главное чтобы мало кода было и тесты проходили
тут никто не ошибся?
Namdak Tonpa
@5HT
Sep 24 2015 11:13
а что тебя смущает?
это все нада на kvs:fold переписать
вместе с file:write_file [append,raw]
Ilya Gorskin
@Revent
Sep 24 2015 11:14
ну фильтр меня смущает немного
Namdak Tonpa
@5HT
Sep 24 2015 11:14
да это какие-то наркоманы писали
kvs:fold нада
Ilya Gorskin
@Revent
Sep 24 2015 11:25
[kvs:put(E) || E <- lists:filter(fun(X) -> is_tuple(X) end ,AllEntries)]
короче так там должно быть
Namdak Tonpa
@5HT
Sep 24 2015 11:37
ага