Linker Unsafe
220 subscribers
182 photos
24 videos
18 files
859 links
Собираю ржавые и лямбдообразные новости, прикольные цитатки с форумов, ссылки на статьи и всё такое. В-общем, сюда я тащу такие крупицы, которые мне будет жаль потерять в цифровой бездне. Возможно, они покажутся интересными и вам.

Фи сюда: @nlinker
Download Telegram
Tux, [26.07.19 09:05]
помогите с лайфтаймами разобраться

https://play.rust-lang.org/?version=stable&mode=debug&edition=2018&gist=eb8c22ce3b9df236f9da7e35861bb053

Дмитрий Беляев, [26.07.19 10:20]
[In reply to Tux]
мне кажется из Shared::get_ref не получится вернуть ссылку
так как владелец сдохнет по ее завершении

Andrey @ozkriff Lesnikov, [26.07.19 10:26]
да, там lock() мьютекса возвращает гард, который по определению локальный и в этом его смысл. так что прямо так взять и вернуть ссылку вовне нельзя и так и должно быть. в чем сама решаемая задача?

Tux, [26.07.19 10:31]
[In reply to Andrey @ozkriff Lesnikov]
хочу избавиться от статик (который глобальная переменная) синглтона

Tux, [26.07.19 10:34]
и везде его через arc+mutex передавать. и хочется при этом сохранить красивый api, чтобы без кишок типа мьютекса наружу. как в actix контекст в Data передается
Stanislav Popov:
врёти что хаскель простой. там такие нагромождения, просто ад

тайп фемелис, линейные типы, миллион экстеншенов, миллион фиксов позволяющих делать чтото для чего то что раньше не делалось

λeonid Onokhov:
линейных типов ещё нет
почти все экстеншены считай что просто часть языка

Stanislav Popov:
ну я вот это прочитал https://gist.github.com/klapaucius/8fc2fbb48606e6dd9a9a095898e3fac4
λоλторт:
задачи на собеседованиях помогают понять, умеет ли человек своей головой думать

в этом плане для интервьюера даже лучше, если человек изначально решения не знает

тогда можно проследить ход мыслей собеседуемого

Слава:
А интервьюер сам умеет, или его сюда по иному принципу взяли?

С одной стороны, я как бы за академичность, с другой - ну-ка, суки, давайте-ка выкиньте тогда Линукс и прочую инженерию в духе "good enough", которой вы так радостно пользуетесь (особенно мыскль). И переходите на FreeBSD, а то и на Hurd. Будьте последовательны.

Охуенный подход. Спрашивать человека о том, чего он гарантированно не знает. А вы кого берете-то, и в курсе ли вы, как работает человеческое мышление в моменты делания чего либо?

Если не в курсе, поясняю: человек делает то, что он умеет делать, и делает это так, как он умеет делать. Именно поэтому все успешные языки похожи на сраную сишечку - потому что её умеют программисты, те, что есть. Именно поэтому так популярен питон - его студентишки учат, а потом сразу его знают и пишут на нем километры кода на своей дата сцаенс работе. И поэтому же js жил, жив и жить будет - его уже умеют. То есть, более продуктивным и разумным возможно было бы заявить "так, программистишки, с завтрашнего дня начинаем учить Окамл, и будет на нем писать под браузер (компилируя в js)". Но этого никто не делает, потому что знают - подход не взлетит. А на собеседованиях глумиться - это как здрасьте. Я полагаю, что это от природного мазохизма физматов - в то время, как будущие юристы трахали одноклассниц и одноклассников, физматы учились, вот и привыкли к долготерпению и страданиям.

Откуда ты знаешь, ты собеседовал, и проводил допросы достаточного количества собеседующих?
Forwarded from Aliester Crowley
Forwarded from Nick Ivanych
Неа, ничо там не исправляли.
Вот pijul, как раз, и есть почти что darcs (какой-то одной фичи не хватает), но с оптимальными алгоритмами.
Forwarded from Nick Ivanych
However, Pijul's pristine format was designed to comply with axioms on a specific set of operations only.
As a result, some of darcs' features, such as darcs replace, are not (yet) available.
https://pijul.org/manual/why_pijul.html
Forwarded from Денис
при этом
for element in a.iter() {
println!("the value is: {}", element);
}
полностью эквивалентно
let mut iter = a.iter();
while let Some(element) = iter.next() {
println!("the value is: {}", element);
}
Am i imagining it, or is this a reincarnation of an old soundness hole in Java's type system, which also hinged on uninstantiable witness types:

https://stedolan.net/java-unsoundness/
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"
Vyacheslav Shebanov:
Дженерики это кусок системы типов

Важный

На эту тему очень интересный пейпер 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
https://t.iss.one/rust_offtopic/52353
Bogdan:
не хватает контекстной инфы, кстати, в ошибках хруста

какого-то аналога стектрейса

Alex Ilizarov:
А я видел крейт который эту проблему решает

Bogdan:
хотя-бын омер стороки где ьросили а в идеале в каждом месте вызова ? добавлять строку текущую в список

Alex Ilizarov:
https://github.com/mitsuhiko/better-panic