Forwarded from Дмитрий Елисеев
Если есть время, то про написание своего DI-контейнера от идеи до применения можно посмотреть https://www.youtube.com/watch?v=8LJH1UuQjOY на полуторной скорости.
YouTube
PSR-7 фреймворк 4/7: Контейнер внедрения зависимостей
Четвёртый урок серии скринкастов по изучению PSR-7 микрофреймворков в PHP. Сегодня разрорабатываем систему управления конфигурацией приложения и автоматизируем внедрение зависимых объектов и параметров в сервисы.
Обсуждение и исходники: https://www.elis…
Обсуждение и исходники: https://www.elis…
Forwarded from Oleg ℕižnik
@jey_lee вы использовали стейт оф зе арт практики из этого видео в своих работах?
весёлый кремовый 🍰 торт, [05.03.20 16:38]
https://github.com/hasura/eff
Oleg ℕizhnik, [05.03.20 16:38]
а это почему почти перестанет тормозить?
весёлый кремовый 🍰 торт, [05.03.20 16:39]
ну эта либа напрямую примитивы ртс использует, но для лучшего перфоманса в ртс нужно ещё 2 функции связанные с делиметед континуэйшнами добавить
весёлый кремовый 🍰 торт, [05.03.20 16:40]
вот пропозал https://github.com/ghc-proposals/ghc-proposals/pull/313
https://github.com/hasura/eff
Oleg ℕizhnik, [05.03.20 16:38]
а это почему почти перестанет тормозить?
весёлый кремовый 🍰 торт, [05.03.20 16:39]
ну эта либа напрямую примитивы ртс использует, но для лучшего перфоманса в ртс нужно ещё 2 функции связанные с делиметед континуэйшнами добавить
весёлый кремовый 🍰 торт, [05.03.20 16:40]
вот пропозал https://github.com/ghc-proposals/ghc-proposals/pull/313
GitHub
GitHub - hasura/eff: 🚧 a work in progress effect system for Haskell 🚧
🚧 a work in progress effect system for Haskell 🚧. Contribute to hasura/eff development by creating an account on GitHub.
Forwarded from саша кремов
Вся суть этого дебильного спрора в том, что люди, которые умеют в ФП так же прекрасно умеют в оопе, но при этом прекрасно осознают его проблемы. Их оппоненты же имеют крайне опосредованное предоставление о ФП и пытаются со своим колхозным пониманием кого-то переспорить.
Forwarded from The Wacky Yellow Dog
Суть спора в том, что не надо использовать термины "чистый" и "грязный" они путают людей и мешают из разобраться в ФП.
Надо использовать "ссылочно-прозрачный"
Надо использовать "ссылочно-прозрачный"
Forwarded from Deleted Account
Умею делать сортировку 😂
fn qs<E: Ord>(arr: &mut [E]) {
if 1 < arr.len() {
let (mut pivot, mut hi) = (0, arr.len()-1);
for _ in 0..arr.len()-1 {
if arr[pivot] < arr[pivot+1] {
arr.swap(pivot+1, hi);
hi -= 1;
} else {
arr.swap(pivot, pivot+1);
pivot += 1;
}
}
qs(&mut arr[..pivot]);
qs(&mut arr[pivot+1..]);
}
}
Forwarded from Deleted Account
Есть два регистра
R1 и R2
Есть две команды
C1: R1 := K*R2 - R1
C2: R2 := K*R1 + R2
Есть целевое число N
На входе: K, N, R1, R2
Нужно: распечатать минимальную последовательность из команд, позволяющую получить N в R1 или в R2 (в любом из двух регистров)
Либо напечатать ничего
Известно, что K != 0, R1 != R2, K, R1, R2 - натуральные, N - целое.
R1 и R2
Есть две команды
C1: R1 := K*R2 - R1
C2: R2 := K*R1 + R2
Есть целевое число N
На входе: K, N, R1, R2
Нужно: распечатать минимальную последовательность из команд, позволяющую получить N в R1 или в R2 (в любом из двух регистров)
Либо напечатать ничего
Известно, что K != 0, R1 != R2, K, R1, R2 - натуральные, N - целое.
Forwarded from hirrolot
image_2020-03-08_16-06-29.png
50.2 KB
восадули
смотри, тут мы компилятора просим захваченные переменные отобразить в массив байт (сразу после main). в closure_new первым аргументом передаём указатель на массив байт, а в самой кложуре мы этот void * кастим снова к union env и пользуемся
смотри, тут мы компилятора просим захваченные переменные отобразить в массив байт (сразу после main). в closure_new первым аргументом передаём указатель на массив байт, а в самой кложуре мы этот void * кастим снова к union env и пользуемся
Forwarded from Kai
А как назвать https://github.com/TinkoffCreditSystems/tofu/blob/b1951d472d02b15e45b3fade1b60c055a262894b/concurrent/src/main/scala/tofu/concurrent/MakeRef.scala ?
По моему это ФАБРИЧНЫЙ КЛАСС
По моему это ФАБРИЧНЫЙ КЛАСС
Forwarded from 𝙽𝚒𝚌𝚔 𝙻𝚒𝚗𝚔𝚎𝚛
Кто хочет базовый http сервер на асинках и warp-е, вот пример на поразбираться:
https://github.com/halfzebra/rust-reqwest-warp-example
Свежий, с пылу с жару 😊
https://github.com/halfzebra/rust-reqwest-warp-example
Свежий, с пылу с жару 😊
GitHub
GitHub - halfzebra/rust-reqwest-warp-example: 🦀 😎 Rust HTTP server basics with async-await
🦀 😎 Rust HTTP server basics with async-await. Contribute to halfzebra/rust-reqwest-warp-example development by creating an account on GitHub.