Timofey Zakrevskiy, [28.07.19 17:16]
А можно перевод на человеческий - откуда слово final в final encoding?
Nick Ivanych, [28.07.19 17:17]
[In reply to Timofey Zakrevskiy]
Можно считать, что ниоткуда.
Что-то типаа "другое представление, чем initial".
Timofey Zakrevskiy, [28.07.19 17:18]
Initial == явные конструкторы?
Nick Ivanych, [28.07.19 17:18]
[In reply to Timofey Zakrevskiy]
типатого.
Timofey Zakrevskiy, [28.07.19 17:19]
А где тогда Чёрч в этом спектре?
Timofey Zakrevskiy, [28.07.19 17:20]
И, идя по стопам Кантора, есть ли представление между initial и final?
Nick Ivanych, [28.07.19 17:24]
[In reply to Timofey Zakrevskiy]
Скорее всего, вы имеете в виду Бёма-Берардуччи.
И "где" он, я чотта даже и не знаю, что ответить ;-)
И что такое "между" ;-)
Это не есть какая-то линия, вдоль которой всё выстраивается.
Kirill Valyavin, [28.07.19 17:24]
[In reply to Timofey Zakrevskiy]
final — финальное представление, т. е. такое, которое уже не надо интерпретировать. Сразу семантика
Nick Ivanych, [28.07.19 17:29]
[In reply to Timofey Zakrevskiy]
Олег сказал "We call this approach final (in contrast to initial) because we represent each object term not by its abstract syntax, but by its denotation in a semantic algebra"
А можно перевод на человеческий - откуда слово final в final encoding?
Nick Ivanych, [28.07.19 17:17]
[In reply to Timofey Zakrevskiy]
Можно считать, что ниоткуда.
Что-то типаа "другое представление, чем initial".
Timofey Zakrevskiy, [28.07.19 17:18]
Initial == явные конструкторы?
Nick Ivanych, [28.07.19 17:18]
[In reply to Timofey Zakrevskiy]
типатого.
Timofey Zakrevskiy, [28.07.19 17:19]
А где тогда Чёрч в этом спектре?
Timofey Zakrevskiy, [28.07.19 17:20]
И, идя по стопам Кантора, есть ли представление между initial и final?
Nick Ivanych, [28.07.19 17:24]
[In reply to Timofey Zakrevskiy]
Скорее всего, вы имеете в виду Бёма-Берардуччи.
И "где" он, я чотта даже и не знаю, что ответить ;-)
И что такое "между" ;-)
Это не есть какая-то линия, вдоль которой всё выстраивается.
Kirill Valyavin, [28.07.19 17:24]
[In reply to Timofey Zakrevskiy]
final — финальное представление, т. е. такое, которое уже не надо интерпретировать. Сразу семантика
Nick Ivanych, [28.07.19 17:29]
[In reply to Timofey Zakrevskiy]
Олег сказал "We call this approach final (in contrast to initial) because we represent each object term not by its abstract syntax, but by its denotation in a semantic algebra"
Vyacheslav Shebanov:
Дженерики это кусок системы типов
Важный
На эту тему очень интересный пейпер https://lucacardelli.name/Papers/OnUnderstanding.A4.pdf
On Understanding Types,
Data Abstraction, and Polymorphism
Alexander Tchitchigin:
Нет системы типов - нет проблемы. Динамические языки (Terra в том числе) этим пользуются, заменяя генерики макросами, например.
Кроме того, насколько я могу судить, генерики в смысле параметрического полиморфизма трудно подружить с ad-hoc полиморфизмом и наследованием. Нет наследования - тоже нет проблем.
Дженерики это кусок системы типов
Важный
На эту тему очень интересный пейпер https://lucacardelli.name/Papers/OnUnderstanding.A4.pdf
On Understanding Types,
Data Abstraction, and Polymorphism
Alexander Tchitchigin:
Нет системы типов - нет проблемы. Динамические языки (Terra в том числе) этим пользуются, заменяя генерики макросами, например.
Кроме того, насколько я могу судить, генерики в смысле параметрического полиморфизма трудно подружить с ad-hoc полиморфизмом и наследованием. Нет наследования - тоже нет проблем.
https://t.iss.one/rust_offtopic/52333
Bogdan:
Юзай крейт webview
Правда чуваки обычно его форкают, и что-то добавлют свое, те кто юзает.
Работает очень классно. Весит ехе мало, проц не нагружает, как электрон.
Из минусов, под разными OS разный рендер, под виндой Edge, под линухой gtk-webkit, под макосью чет 3е, не помню что
Пример
https://github.com/Freaky/Compactor
Bogdan:
Юзай крейт webview
Правда чуваки обычно его форкают, и что-то добавлют свое, те кто юзает.
Работает очень классно. Весит ехе мало, проц не нагружает, как электрон.
Из минусов, под разными OS разный рендер, под виндой Edge, под линухой gtk-webkit, под макосью чет 3е, не помню что
Пример
https://github.com/Freaky/Compactor
Telegram
Bogdan in rust_offtopic
Юзай крейт webview
Правда чуваки обычно его форкают, и что-то добавлют свое, те кто юзает.
Работает очень классно. Весит ехе мало, проц не нагружает, как электрон.
Правда чуваки обычно его форкают, и что-то добавлют свое, те кто юзает.
Работает очень классно. Весит ехе мало, проц не нагружает, как электрон.
https://t.iss.one/rust_offtopic/52353
Bogdan:
не хватает контекстной инфы, кстати, в ошибках хруста
какого-то аналога стектрейса
Alex Ilizarov:
А я видел крейт который эту проблему решает
Bogdan:
хотя-бын омер стороки где ьросили а в идеале в каждом месте вызова ? добавлять строку текущую в список
Alex Ilizarov:
https://github.com/mitsuhiko/better-panic
Bogdan:
не хватает контекстной инфы, кстати, в ошибках хруста
какого-то аналога стектрейса
Alex Ilizarov:
А я видел крейт который эту проблему решает
Bogdan:
хотя-бын омер стороки где ьросили а в идеале в каждом месте вызова ? добавлять строку текущую в список
Alex Ilizarov:
https://github.com/mitsuhiko/better-panic
Telegram
Bogdan in rust_offtopic
не хватает контекстной инфы, кстати, в ошибках хруста
Forwarded from Awesome Rust
Python vs Rust for neural network implementation
https://ngoldbaum.github.io/posts/python-vs-rust-nn/
https://ngoldbaum.github.io/posts/python-vs-rust-nn/
ngoldbaum.github.io
Python vs Rust for Neural Networks | Nathan Goldbaum
Comparing a simple neural network in Rust and Python
https://t.iss.one/haskell_blah/107309
λeonid Onokhov:
пока всякие псевдо-академики занимаются ерундой типа информатики, настоящие учёные занимаются настоящей наукой
Anton Trunov:
неплохо) я б такую картинку с петухом хотел бы для коллекции
λeonid Onokhov:
петух, в отличии от страуса, плохая модель для динозавра
Alex Gryzlov:
приделывают к страусу вторые крылья?
λeonid Onokhov:
типа того https://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1006846
господи, там даже видео есть
Alex Gryzlov:
в качестве саундтрека надо было наложить музыку Штрауса
Anton Trunov:
летим со мной, там столько вкусного
λeonid Onokhov:
пока всякие псевдо-академики занимаются ерундой типа информатики, настоящие учёные занимаются настоящей наукой
Anton Trunov:
неплохо) я б такую картинку с петухом хотел бы для коллекции
λeonid Onokhov:
петух, в отличии от страуса, плохая модель для динозавра
Alex Gryzlov:
приделывают к страусу вторые крылья?
λeonid Onokhov:
типа того https://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1006846
господи, там даже видео есть
Alex Gryzlov:
в качестве саундтрека надо было наложить музыку Штрауса
Anton Trunov:
летим со мной, там столько вкусного
Telegram
λeonid Onokhov in haskell_blah
пока всякие псевдо-академики занимаются ерундой типа информатики, настоящие учёные занимаются настоящей наукой
https://t.iss.one/rust_offtopic/52516
Alex Zhukovsky, [31.07.19 19:40]
есть вариант что это
Проблема в том, что единицей в моноиде должен быть пустой ренж, который всегда упорядочен по сравнению с любым другим
но сравнивать нужно по непустып ренжам в которых должны быть элементы
Короче, тут три кейса: пустой ренж, ренж из одного элемента (чтобы создать его) и все остальное
а для моноида должно быть два: база и индукция
Nikita Vilunov, [31.07.19 19:52]
Alex Zhukovsky, [31.07.19 20:09]
оно ведь не будет правильно работать
(3,(2,4)) != ((3,2),4)
Nikita Vilunov, [31.07.19 20:11]
🤔
Это получается ещё ловер баунд надо хранить
Alex Zhukovsky, [31.07.19 20:12]
да
как я изначально хотел
И в твоем случае еще учитывать что идентити может справа быть
Nikita Vilunov, [31.07.19 20:14]
Во, малаца
λоλторт, [31.07.19 20:18]
тогда так
Alex Zhukovsky, [31.07.19 19:40]
Use foldMap to detect whether a given IndexedSeq[Int] is ordered. You’ll need to come up with a creative Monoid.
foldMap это def foldMapV[A,B](v: IndexedSeq[A], m: Monoid[B])(f: A => B): B
я не решилесть вариант что это
Monoid[Option[(Int, Int, Boolean)]], но тоже не фактПроблема в том, что единицей в моноиде должен быть пустой ренж, который всегда упорядочен по сравнению с любым другим
но сравнивать нужно по непустып ренжам в которых должны быть элементы
Короче, тут три кейса: пустой ренж, ренж из одного элемента (чтобы создать его) и все остальное
а для моноида должно быть два: база и индукция
Nikita Vilunov, [31.07.19 19:52]
mapping = i => (i, true)λоλторт, [31.07.19 19:55]
def zero: (Int, Bool) =
(-INF, true)
def op((a, b): (Int, Bool), (c, d): (Int, Bool)) =
(c, b && d && (c >= a))
data Ordered n = Last n | Unordered | Mempty
deriving Show
*Main Lib> foldMap (Last @Int) [1, 2, 3]думаю с имплементацией моноида сам справишься
Last 3
*Main Lib> foldMap (Last @Int) [1, 2, 3, 1]
Unordered
*Main Lib> foldMap (Last @Int) []
Mempty
Alex Zhukovsky, [31.07.19 20:09]
оно ведь не будет правильно работать
(3,(2,4)) != ((3,2),4)
Nikita Vilunov, [31.07.19 20:11]
🤔
Это получается ещё ловер баунд надо хранить
Alex Zhukovsky, [31.07.19 20:12]
да
как я изначально хотел
И в твоем случае еще учитывать что идентити может справа быть
Nikita Vilunov, [31.07.19 20:14]
Во, малаца
λоλторт, [31.07.19 20:18]
тогда так
data Ordered n = Ordered n n | Unordered | Mempty
deriving ShowTelegram
Alex Zhukovsky in rust_offtopic
Use foldMap to detect whether a given IndexedSeq[Int] is ordered. You’ll need to come up with a creative Monoid.
Forwarded from ọzkriff
о, sova.dev/ru на крабоугодной Zola, оказывается - https://github.com/sergeysova/sova.dev - мило
https://t.iss.one/rust_offtopic/41416
Слава:
Вот у меня свежий пример.
Есть некая контора и продукт их, Ecompass. Они собирают данные по займам. Принимают на вход словари в виде json, простой формат имя-значение. В справочнике имен, в экселевском файле, около 8000 (восьми тысяч) строк. Описания к полям по сути нет, все очень кратко.
Если запрос с подобным словарём содержит что-то не то, то сервис просто возвращает ошибку разбора json. Без детализации - что не так.
Отлаживается это так: убираем по одному полю и смотрим, заработает или нет. Цикл запрос-ответ занимает секунд 20, полей в среднем 50 и больше.
Я считаю, что подобную контору надо оштрафовать. За уебанство. Что, нельзя было сделать нормальное сообщение об ошибке?
Слава:
Вот у меня свежий пример.
Есть некая контора и продукт их, Ecompass. Они собирают данные по займам. Принимают на вход словари в виде json, простой формат имя-значение. В справочнике имен, в экселевском файле, около 8000 (восьми тысяч) строк. Описания к полям по сути нет, все очень кратко.
Если запрос с подобным словарём содержит что-то не то, то сервис просто возвращает ошибку разбора json. Без детализации - что не так.
Отлаживается это так: убираем по одному полю и смотрим, заработает или нет. Цикл запрос-ответ занимает секунд 20, полей в среднем 50 и больше.
Я считаю, что подобную контору надо оштрафовать. За уебанство. Что, нельзя было сделать нормальное сообщение об ошибке?
Telegram
Слава in rust_offtopic
Вот у меня свежий пример.
Есть некая контора и продукт их, Ecompass. Они собирают данные по займам. Принимают на вход словари в виде json, простой формат имя-значение. В справочнике имен, в экселевском файле, около 8000 (восьми тысяч) строк. Описания к полям…
Есть некая контора и продукт их, Ecompass. Они собирают данные по займам. Принимают на вход словари в виде json, простой формат имя-значение. В справочнике имен, в экселевском файле, около 8000 (восьми тысяч) строк. Описания к полям…
Forwarded from Igor Bodnar
>Отдали клиенту сайт на англуря, те наняли каких то студентов, они взяли билд, разминифицировали и правили вот эти this._a=b.c.a(d.e)
>Теперь на сайте jquery поверх сбилженного ангуляр приложения
>Теперь на сайте jquery поверх сбилженного ангуляр приложения
Forwarded from Валентин Удальцов
У меня похожий кейс был на прошлой работе. Поставили клиенту на Symfony+Doctrine+... приложение. Им потребовалось что-то дешево и быстро допилить. Нанятый ими фрилансер в релевантных по его мнению файлах сделал require '../../tools.php', из которого обращался к бд через синглтон и mysqli_connect. А потом нас попросили поправить, потому что плохо работало 🙈
Forwarded from Sergey P
раз тут вечер охуительных историй о мастерстве... проходил мимо проекта... его начинали поляки - симфони там, апишки, все такое... а потом он достался индусам - скомпиленное реакт приложение выплевывалось через echo в контроллерах
Forwarded from Kai Ren
Не прошло и 10 лет:
https://blog.golang.org/why-generics
https://blog.golang.org/why-generics
Forwarded from Adv0cat
Т.е. нельзя сделать так, что все кто будет использовать трейт, должны иметь в структуре параметр
.name, а не функцию name() ?Forwarded from вафля 🧇🍓
Ещё можно как-то так:
trait
trait
Name {
fn name(&self) -> &str;
}
trait RunTrait {
fn run(&self);
}
impl<T: Name> RunTrait for T{
fn run(&self) {
println!("{}", self.name());
}
}