[07:41:46] <geniepro> пипец! полчаса пролистывал фацебоок ленту -- только на три дня назад пролистал.... не читал -- чисто пролистывал...
[09:00:00] <geniepro> poxu 4 декабря 2015 в 16:56 +10
Был у меня друг один. Всё на JavaScript писал. И клиента и бэкенд и десктоп даже. И базы данных на джаваскрипте делал и игрушки клепал. Говорил удобно, быстро, клёво. Всё работает, всё устраивает.
Ну, потом его в дурку сдали конечно…
[10:10:49] <geniepro> http://www.mk.ru/upload/entities/2016/01/21/articles/detailPicture/c1/31/a7/ae5444472_5167341.jpg
[10:20:23] <geniepro> http://pikabu.ru/story/volga_gaz_v12_coupe_3868174
[12:02:57] <sda> Разбор «Марсианина»: Марс, наука, политика
https://geektimes.ru/post/269718/
[12:09:56] <geniepro> https://pbs.twimg.com/media/CZIJ8LbWcAARVna.jpg
[12:13:21] <geniepro> https://scontent-lhr3-1.xx.fbcdn.net/hphotos-xaf1/v/t1.0-9/6862_10203921509436878_1042724705769723425_n.jpg?oh=372ec4ddfe2c91601347942d93cc371b&oe=572FC135
[12:21:11] <geniepro> https://www.facebook.com/wwlos/posts/10203920112321951
[12:50:45] <TRUE> что по последней ссылке?
[12:52:45] <geniepro> Vladimir Los 23 января в 18:58 ·
Вот это - именно то, что я называю ПРОГРАММИРОВАНИЕМ.
The Remote Agent Experiment: Debugging Code from 60 Million Miles Away
Google Tech Talk February 14, 2012 Presented by Ron Garret. ABSTRACT The Remote Agent…
https://www.youtube.com/watch?v=_gZK0tW8EhQ
[12:55:47] <geniepro> Запуски новомодных "Фальконов" обходятся НАСА дороже, чем стоили сверхдорогие "Шаттлы"
http://gosh100.livejournal.com/172426.html
[13:20:40] <sda> ну посмотрим, они говорят, что одна ракета должна летать 40 раз, а стоимость топлива всего $200 тыщ., типа профит должен быть!
[13:21:16] <sda> надо еще посчитать стоимость обслуживания после каждого запуска
[13:22:22] <sda> если на обычных ракетах ставят детали только на один пуск, то тут надо резервировать на 40 пусков, цена должна вырости
[13:25:27] <geniepro> ну во-первых там многоразовой планируют делать не всю ракету, а только первую ступень
[13:26:22] <geniepro> во-вторых -- сумму всех потраченных денег поделили на количество запланированного груза -- получили не очень дешёвый результат, а многоразовый или одноразовые -- тут уже не имеет значения
[13:29:15] <sda> ну может они скажут, что брали на с запасом, а потом операционные расходы снизятся, история покажет )
[13:35:01] <sda> http://netenovosti.ru/na-to-i-mask-chtoby-roskosmos-ne-dremal/
[15:17:51] <valexey> vlad2: about Rust and exceptions: https://habrahabr.ru/post/275801/ (original: http://www.jonathanturner.org/2016/01/rust-and-blub-paradox.html )
[15:25:23] <valexey> And another one: https://habrahabr.ru/post/270371/
[18:02:42] <TRUE> немножко музыки:
https://www.youtube.com/watch?v=wN2OzjFXbU8
https://www.youtube.com/watch?v=2GuTuJbOpa8
[18:14:49] <Kemet> Блин, мне нужна Composita, но в етх её явно закопали
[18:33:46] <vlad2> valexey: печально. Такие try! мы видели еще в голом С :_
[18:33:49] <vlad2> :)
[18:35:09] <vlad2> Все равно вместо линейного:
f();
g();
будет мусор.
[18:37:43] <vlad2> try!(f());
try!(g());
[18:38:19] <vlad2> Лучше чем в обероне, конечно, но...
[18:42:52] <valexey> And better then in Go.
[18:42:54] <valexey> But...
[18:44:09] <valexey> And try! is only simple macro for pattern matching and return from the middle of your function :-)
[18:44:12] <valexey> macro_rules! try {
($e:expr) => (match $e {
Ok(val) => val,
Err(err) => return Err(err),
});
}
[18:46:42] <vlad2> Угу. Я уже представляю старые добрые шутки с макросами... ;)
[18:47:25] <vlad2> inc!(i) -> на самом деле делает return, если i какая-то не такая
[18:47:43] <valexey> :-)
[19:18:16] <Kemet> бгг genericlevel1optimizerswitches и это далеко не самый длинный идентификатор подобного рода
[19:18:54] <valexey> it is ok :-)
[19:19:23] <Kemet> вырвиглаз
[19:21:12] <vlad2> подчеркиваний на клавиатуре не было? :)
[19:21:21] <Kemet> уж лучше бы подчеркивания стьавили если КемелКейс не нравится, хотя в мире Делфи КэмелКейс же - почти стандарт, ну или кодестайлинг
[19:21:24] <vlad2> А... это ж оберон... ;)
[19:21:52] <Kemet> не, это free pascal compiler
[19:23:07] <Kemet> d j,thjy nj; tcnm j.othjnyzmsq rjltcnfqkbyu lkz bvtyjdfybz nfrjuj hjlf rjycnfyn b gthtvtyys[ = gthdjt ckjdj d yb;ytv htubcnht? lf;tt d R'vtkRtqc
[19:23:45] <vlad2> Это я к тому, что в обероне07 нет подчеркиваний :)
[19:23:58] <Kemet> в Обероне тоже есть типа кодестайлинга для подобного - именование констант и переменных - первое слово в нижнем регистре, затем КемелКасе
[19:24:25] <vlad2> Так что если camelCase религия не позволяет, то остаются только такие идентификаторы.
[19:26:19] <Kemet> ну когда в 10 подряд идущих строчках, то КэмелКейс, то кемелКейс то вырвиглаз то подчеркивания - такой кот надо на свалку
[20:06:46] <TRUE> может, это автоматическая генерация такое выдаёт?
[20:07:14] <TRUE> например, как обработчик кнопки в лазарусе каком-нибудь
[20:21:38] <valexey> vlad2: https://habrahabr.ru/post/275801/#comment_8751523
[20:21:41] <valexey> :-D
[20:24:57] <vlad2> Угу.
[21:00:29] <Kemet> TRUE, Это из компилятора, а в лазарусе как программист написал имя так они и указываетсы, написал по соглашенпю кэмелкейс, так и сгегерит, как в дельфи
[22:00:33] <Kemet> что за java cheked exception -- кратенько
[22:01:38] <vlad2> Каждый метод декларирует какие исключения он может кидать.
[22:02:48] <vlad2> Компилятор ругается если в реализации метода используются вызовы, которые могут кидать исключения не продекларированные для данного метода.
[22:03:18] <vlad2> У этого подхода помимо очевидных плюсов есть и минусы.
[22:26:52] <valexey> But you can omit this by catching some exception.
[22:28:27] <valexey> example:
void foo() throws Exception {throw new Exception();}
void boo() {foo();} // compilation error
void zoo() throws Exception {foo();} // ok
void bar() {try { foo(); } catch (Exception e) {...} } // ok too
[22:29:13] <valexey> throwed exceptions as part of function specification
[22:31:39] <valexey> a public contract
[22:42:21] <Kemet> valexey: а вот модула-3
[[Component Pascal]],
[22:42:44] <Kemet> The RAISES section specifies which exceptions the procedure is allowed to raise. Any exceptions that occur in the procedure, possibly as the result of a call to another procedure, that are not handled by the procedure and that do not appear in the RAISES clause cause a checked run-time error. If the RAISES section is omitted, then any exceptions raised cause a checked run-time error.
[22:43:18] <Kemet> PROCEDURE <sig>
where
<sig> = "(" { <formal> ";" ... } ")"
[ ":" <result type> ]
[ RAISES ( ANY | "{" { <exception> "," ... } "}" ) ]
<formal> = [ VAR | READONLY | VALUE ] <id> { "," <id> ... }
[ ":" <type> ] [ ":=" <const expr> ]
[22:51:23] <valexey> modula or component pascal?
[22:56:14] <Kemet> valexey: м3 ))
[22:56:38] <Kemet> хрень от создателея М3 https://en.wikipedia.org/wiki/Polyphonic_C_Sharp
[23:03:27] <Kemet> valexey: в OO2C что-то схожее ароде
[23:03:45] <Kemet> а не, там другое совсем