All streams
Search
Write a publication
Pull to refresh
1
0
OlegTsyba @Dethrone

Пользователь

Send message
https://softwareengineeringdaily.com/2016/09/08/relational-databases-with-craig-kerstiens/
в этом подкасте упоминается что переход убера(и вброс статьи) был не только из-за технических вопросов, но и из-за вопроса кадров.
Автору нужно вспомнить о принципе «Worse is better»(которому уже 30 лет) и успокоиться.
согласен, примерно это я и имел ввиду.
интересно, но опять же это compiletime, а не runtime.
А если добавить нейронные сети и какой-то минимальный ИИ то приведенные вами ошибки будут через сеть сопоставляться с различными подходами у разных программистов и вырабатываться решение, которое и будет подставляться при программировании как опробованное и эффективное.

В то время когда космические корабли бороздили просторы вселенной…
Поскольку к языку описания это не имеет отношения тут работа самого компилятора

Как раз к языку это имеет самое непосредственное отношение, поскольку какой компилятор для си ты не пиши, а предотвращения data-race во время компиляции как у Rust или скорости компиляции как у Go ты не получишь ну НИКАК, потому что для этого нужно поменять дизайн языка. А на Ruby ты никак не определишь data-layout, потому что язык не предоставляет никаких средств для этого. Haskell позволяет трекать все сайд эффекты в системе типов за счет ленивости+purity.
я думаю твои расказы о «мозге и его привычках» это твои домыслы, ибо мой мозг успешо переключается… отсюда вывод — это все дело привычки.
tl;dr
В некоторых случаях применение паттерн матчинга целесообразней/удобней применения визитора. (кто юзал хаскель или раст давно об этом знают)
вы захотите использовать одновременно модули, написанные на Go, Rust, Java

вов-вов, какой Java? wasm расчитан на те случаи когда производительности JS нехватает, а не для того чтобы привести зоопарк языков в браузеры.
stack guards виполенены не для всех платформ, из libstd
#[cfg(all(not(all(target_os = "linux", not(target_env = "musl"))),
          not(target_os = "freebsd"),
          not(target_os = "macos"),
          not(target_os = "bitrig"),
          not(all(target_os = "netbsd", not(target_vendor = "rumprun"))),
          not(target_os = "openbsd"),
          not(target_os = "solaris")))]
#[cfg_attr(test, allow(dead_code))]
pub mod guard {
    pub unsafe fn current() -> Option<usize> { None }
    pub unsafe fn init() -> Option<usize> { None }
}


тобишь его нету для emscripten-target.
Stack unwinding можно не использовать (тобишь zero-cost), а если надо исвользовать то в си будешь юзать примерно такой же код.
heap в Rust юзается аналогично си, в языке даже никаких операторов для этого не встроено, просто в std есть парочка стандартных контейнеров шоб не лепить свой велосипед как это часто делаетя в си.
а когда ты смотришь то на один, то на другой монитор, ты не переключаешь внимание? LOL.
ты в любом случае его переключаешь, вопрос лишь в том как ты это делаешь, либо с помощью клавиатуры, либо поворачива свою голову физически :).
я юзаю xfce, и у меня отдельный виртуальный десктоп под каждое приложение, и на каждый десктоп хоткей в виде Win+a, win+s, etc, никаких визуальних эффектов, переключение идет моментально, а нажать хоткей это доля секунды(для меня быстрее чем вертеть головой/глазами), p.s. у меня руки всегда на клаве, vim+vimium решают.
Дело не просто в том что бы описать логоку, а в том какие гарантии тебе дает язык(например в Rust невозможно словить data-race, а в си можно, но в си ненадо замарачиваься с borrow checker за счет которого Rust предотвращает data-race), какой тулинг возможно построить вокруг него (например Go генерит быстрый код, и генерит его быстро, что уникально если не брать в расчет Ocaml, но недостаток Ocamla в том что в нем нету поддержки параллелизма, зато Gc с очень низкой latency, и присутствуют HKT), я уже не говорю о том что если тебе нужно бытро разрабатывать то тебе подойдет Python, Ruby, JS, Clojure, но никак не Rust, C++, etc.… и самое главное что таких ньюансов сотни, и для каждой конкретной задачи один язык(и его экосистема) будет лучше другого.
Потому что каждый язык заточен под разные юзкейси, не??
так виртуальные рабочие столы предоставляют тот же функционал, о чем собственно упоминалось в статье. вместо того что бы вертать головой, ты смотришь в один монитор, и просто переключаешь виртуальние десктопы (а это занимает долю секунды)
у rust нету рантайма.
я начал изучение RxJs из исходников, и очень доволен этой литературой
так же детали обсуждаются в этом эпизоде SE Radio
https://softwareengineeringdaily.com/2016/09/09/ubers-postgres-problems-with-evan-klitzke/

Information

Rating
Does not participate
Location
Полтава, Полтавская обл., Украина
Date of birth
Registered
Activity