арсенал -- не люки и не гномики
От: мыщъх США http://nezumi-lab.org
Дата: 19.05.16 16:45
Оценка: 1 (1) -2
давно это было, но как сейчас помню. блиц интервью. думать некогда и отвечать нужно сразу.

задача #1.
все мы знаем, что километры с литрами складывать нельзя. приведите пример когда это можно.

отвечаю, что:
за каждый километр пройденного пути с логотипом пепси-колы на спине компания платит вам $1. и за каждый литр выпитого пойла тоже платит $1. вы прошли 13 км и выпили 8 литров. сколько вам заплатят денег в скв?

мне говорят что:
так нечестно. у вас там коэффициент равен единице и это частный случай, так что давайте изменим условия задачи.


задача #2:
все мы знаем, что метры с дюймами не складывают. приведите пример когда такое сложение не только допустимо, но и оправдано

отвечаю что:
у нас есть измеритель длинны, основанный на вращении барабана с механическим счетчиком и селектором типа отсчета. счетчик имеет 3 десятичных разряда. вы начинаете измерение в метрах и затем переключаете селектор на дюймы. пускай дюймов было 378, а метеров 518. спрашивается: произойдет ли переполнение счетчика. очевидно, что решение задачи сводится к сложению двух величин

мне говорят что:
нам нравится ход ваших рассуждений и здесь действительно происходит непосредственное сложение дюймов с метрами, но в результате получается булевый тип true или false.


задача #3:
все мы знаем, что доллары с евро не складывают. приведите пример когда такое сложение не только допустимо, оправдано, но и неизбежно

отвечаю, что:
автомат по выдаче пепси-колы принимает монеты, один стакан — один доллар. но монетоприемник не отличает монету достоинством в одно евро от монеты, достоинством в ддоллар. у нас есть 9 долларов и 6 евро. сколько стаканов пепси-колы мы можем выпить, не производя размена монет?

мне говорят что:
это неправильный монетоприемник и вообще лайф-хак юзать монеты в одно евро там где ожидается один доллар. но так-то да.



а теперь внимание правильный ответ:
если у нас есть тип данных "метр" и есть тип данных "дюйм", то ЯВУ может допускать сложение данных разных типов, если ЯВУ автоматически вызывает процедуру преобразования одного типа в другой и у программиста не болит голова.


в принципе, мой ход мысли их удовлетворил. тем более, что блиц. тем более, что мои частные случаи ничуть не более частные чем их "правильный ответ", налагающий жестокие ограничения на выбор ЯВУ и по сути убирающий операции преобразования под кат.


задача #4:
все мы знаем, что гусей с децибелами не скалывают... ну вы короче поняли...

ваш ответ?
americans fought a war for a freedom. another one to end slavery. so, what do some of them choose to do with their freedom? become slaves.
Re: арсенал -- не люки и не гномики
От: uzhas Ниоткуда  
Дата: 19.05.16 17:37
Оценка: :)
Здравствуйте, мыщъх, Вы писали:

М>задача #4:

М>все мы знаем, что гусей с децибелами не скалывают... ну вы короче поняли...

М>ваш ответ?


тут очень просто решить, если умеешь складывать простые дроби
если домножить гусей на децибелы, а децибелы на гусей, то их вполне уже можно сложить
Re[2]: арсенал -- не люки и не гномики
От: мыщъх США http://nezumi-lab.org
Дата: 19.05.16 17:39
Оценка:
Здравствуйте, uzhas, Вы писали:

U>Здравствуйте, мыщъх, Вы писали:


U>тут очень просто решить, если умеешь складывать простые дроби

U>если домножить гусей на децибелы, а децибелы на гусей, то их вполне уже можно сложить
ничего не понял. зачем домножать гусей на децибелы?
americans fought a war for a freedom. another one to end slavery. so, what do some of them choose to do with their freedom? become slaves.
Re: арсенал -- не люки и не гномики
От: dr. Acula Украина  
Дата: 19.05.16 17:40
Оценка: +2
М>ваш ответ?
выдыхай.
Re[3]: арсенал -- не люки и не гномики
От: uzhas Ниоткуда  
Дата: 19.05.16 17:45
Оценка:
Здравствуйте, мыщъх, Вы писали:

М>зачем домножать гусей на децибелы?


то есть вопрос "как" у тебя не возник ?
Re[4]: арсенал -- не люки и не гномики
От: мыщъх США http://nezumi-lab.org
Дата: 19.05.16 17:52
Оценка: +1
Здравствуйте, uzhas, Вы писали:

U>Здравствуйте, мыщъх, Вы писали:


М>>зачем домножать гусей на децибелы?


U>то есть вопрос "как" у тебя не возник ?


"как" это к специалистам. а мне интересно зачем? если гуси вызывают цепную реакцию размножения, то в принципе да. можно сложить пять гусей и три децибела и получить восемь тонн зерна, которое сожрет их популяция через некоторый промежуток времени. то есть физический смысл мне понятен даже без домножения. но зачем это нужно -- никак не пойму.
americans fought a war for a freedom. another one to end slavery. so, what do some of them choose to do with their freedom? become slaves.
Re: арсенал -- не люки и не гномики
От: Хэлкар  
Дата: 19.05.16 19:57
Оценка:
Контора занимается F#? Там можно задавать единицы измерения и преобразования между ними. После этого можно не парясь складывать гусей с дюймами.
Re[2]: арсенал -- не люки и не гномики
От: мыщъх США http://nezumi-lab.org
Дата: 19.05.16 20:11
Оценка:
Здравствуйте, Хэлкар, Вы писали:

Х>Контора занимается F#?

маловероятно, там основная разработка под никсы.

X> Там можно задавать единицы измерения и преобразования между ними.

X> После этого можно не парясь складывать гусей с дюймами.
а как же физический смысл? если комания по логистике берет деньги либо за каждого гуся, либо за каждый дюйм иного груза, то без данного конкретного условия задачи непонятно о каких преобразованиях идет речь. хотя гуси с дюймами это, конечно, крайный вриант.
americans fought a war for a freedom. another one to end slavery. so, what do some of them choose to do with their freedom? become slaves.
Re: арсенал -- не люки и не гномики
От: alpha21264 СССР  
Дата: 19.05.16 21:31
Оценка:
Здравствуйте, мыщъх, Вы писали:

М>задача #4:

М>все мы знаем, что гусей с децибелами не скалывают... ну вы короче поняли...

Когда ты складывал метры с дюймами — это были хоть и разные единицы, но величина одинаковая — длинна.
С километрами и литрами ты выкрутился тем, что перевёл их в деньги.

Не, ну можно и гусей с децибелами в деньги перевести — универсальную меру всего в капитализме.
Но врядли ты это имел в виду...

Течёт вода Кубань-реки куда велят большевики.
Re[2]: арсенал -- не люки и не гномики
От: мыщъх США http://nezumi-lab.org
Дата: 19.05.16 21:41
Оценка: :)
Здравствуйте, alpha21264, Вы писали:

A>Здравствуйте, мыщъх, Вы писали:


A>Не, ну можно и гусей с децибелами в деньги перевести — универсальную меру всего в капитализме.

зачем в деньги? я же предложил цепную реакцию йаиц как функции сколько нужно зерна гусиному поколению пока оно не сдохнет от голода. в децибелах мы будем измерять секусальную функцию гусиного размножения.
americans fought a war for a freedom. another one to end slavery. so, what do some of them choose to do with their freedom? become slaves.
Re[2]: арсенал -- не люки и не гномики
От: C0s Россия  
Дата: 19.05.16 21:59
Оценка: +1 :)))
Здравствуйте, dr. Acula, Вы писали:

М>>ваш ответ?

DA>выдыхай.

я вот тоже подумал, что это обсуждение может быть частью темы "курение на работе"...
Re[3]: арсенал -- не люки и не гномики
От: Хэлкар  
Дата: 19.05.16 22:57
Оценка:
М>а как же физический смысл? если комания по логистике берет деньги либо за каждого гуся, либо за каждый дюйм иного груза, то без данного конкретного условия задачи непонятно о каких преобразованиях идет речь. хотя гуси с дюймами это, конечно, крайный вриант.

С каких это пор язык программирования стал интересоваться физическим смыслом программы? Разработчик задал преобразование и это уже его проблемы.
Re[4]: арсенал -- не люки и не гномики
От: мыщъх США http://nezumi-lab.org
Дата: 19.05.16 23:05
Оценка:
Здравствуйте, Хэлкар, Вы писали:

Х>С каких это пор язык программирования стал интересоваться физическим смыслом программы? Разработчик задал преобразование и это уже его проблемы.

как же иначе километры в литры преобразовывать? или я просто не понимаю о чем речь?
americans fought a war for a freedom. another one to end slavery. so, what do some of them choose to do with their freedom? become slaves.
Re[5]: арсенал -- не люки и не гномики
От: Хэлкар  
Дата: 19.05.16 23:33
Оценка:
М>как же иначе километры в литры преобразовывать? или я просто не понимаю о чем речь?

не важно
Re: арсенал -- не люки и не гномики
От: xy012111  
Дата: 20.05.16 05:51
Оценка:
Здравствуйте, мыщъх, Вы писали:

М>а теперь внимание правильный ответ:

М>если у нас есть тип данных "метр" и есть тип данных "дюйм", то ЯВУ может допускать сложение данных разных типов, если ЯВУ автоматически вызывает процедуру преобразования одного типа в другой и у программиста не болит голова.

"ЯВУ" — язык высокого уровня? ОК, Каков будет тип результата даже при сложении метров с дюймами? Метры? Дюймы? Попугаи? И как на нём выполняется сложение километров с литрами, можно узнать? Кто и как написал "процедуру преобразования" для этих типов? То есть понятно, что "процедуры" написать как-то можно, но ведь это бессмыслица получится, негодная в реальной жизни? Или нет?

М>в принципе, мой ход мысли их удовлетворил. тем более, что блиц. тем более, что мои частные случаи ничуть не более частные чем их "правильный ответ", налагающий жестокие ограничения на выбор ЯВУ и по сути убирающий операции преобразования под кат.


Их "правильный" ответ кажется какой-то ерундой, ну или я чего-то не понял.
Re[2]: арсенал -- не люки и не гномики
От: Пофигист Россия  
Дата: 20.05.16 06:02
Оценка:
Здравствуйте, xy012111, Вы писали:

X>"ЯВУ" — язык высокого уровня? ОК, Каков будет тип результата даже при сложении метров с дюймами? Метры? Дюймы? Попугаи?

Как определишь, то и будет результатом. Логично было бы конечно всё к стандартным величинам СИ переводить. Но американцы могут конечно и в своих попугаях захотеть результат.

X> И как на нём выполняется сложение километров с литрами, можно узнать? Кто и как написал "процедуру преобразования" для этих типов? То есть понятно, что "процедуры" написать как-то можно, но ведь это бессмыслица получится, негодная в реальной жизни? Или нет?

В принципе литры могут разумно переводится в километры, если это литры бензина и километры пробега автомобиля. И есть функция потребления топлива на километр пробега в зависимости от, например, скорости.
Re[2]: арсенал -- не люки и не гномики
От: Miroff Россия  
Дата: 20.05.16 06:04
Оценка: 6 (1)
Здравствуйте, xy012111, Вы писали:

X>"ЯВУ" — язык высокого уровня? ОК, Каков будет тип результата даже при сложении метров с дюймами? Метры? Дюймы? Попугаи?


Производный анонимный тип "метры плюс дюймы" в виде монады.

X>И как на нём выполняется сложение километров с литрами, можно узнать?


Никак, метры хранятся отдельно, дюймы отдельно, при необходимости можно привести результат к одной из двух, либо вообще к третьей величине, либо вообще взять по отдельности.

X>Кто и как написал "процедуру преобразования" для этих типов?


Кому потребуется, тот и напишет.

X>То есть понятно, что "процедуры" написать как-то можно, но ведь это бессмыслица получится, негодная в реальной жизни? Или нет?


Как раз в реальной жизни оно востребованно. Мы как-то написали POC для банковского баланса, суммы не приводились в рубли на лету, а хранились рубли отдельно, доллары отдельно, фраки отдельно. Конвертация же в ребли осуществлялась в последний момент. Благодаря такой архитектуре, баланс не нужно было сводить по нескольку часов, вместо этого можно было апдейтить баланс в реальном времени. К сожалению недалекие банкиры нашу идею зарубили по каким-то своим политическим причинам.
Отредактировано 20.05.2016 7:03 Miroff . Предыдущая версия .
Re: арсенал -- не люки и не гномики
От: mgu  
Дата: 20.05.16 06:24
Оценка: :)
Здравствуйте, мыщъх, Вы писали:

М>задача #3:

М>все мы знаем, что доллары с евро не складывают. приведите пример когда такое сложение не только допустимо, оправдано, но и неизбежно

Я складываю доллары с евро в кубышку -- рубль-то неизбежно обесценится.
Re[3]: арсенал -- не люки и не гномики
От: xy012111  
Дата: 20.05.16 07:37
Оценка:
Здравствуйте, Miroff, Вы писали:

X>>"ЯВУ" — язык высокого уровня? ОК, Каков будет тип результата даже при сложении метров с дюймами? Метры? Дюймы? Попугаи?

M>Производный анонимный тип "метры плюс дюймы" в виде монады.
M>…метры хранятся отдельно, дюймы отдельно, при необходимости можно привести результат к одной из двух, либо вообще к третьей величине, либо вообще взять по отдельности.

Да, спасибо, но так ведь можно по сути описать вообще всё что угодно! Любую операцию над любыми(*) данными.

M>Как раз в реальной жизни оно востребованно.


Вообще принцип — да, конечно. Но и в вашем примере (*) вы хранили две денежные единицы. Это как метры-дюймы, тоже понятно. Я так дни-недели-месяцы абстрактные храню, так же операции арифметические над ними делаю (операцию сложения нескольких дней и нескольких месяцев ни в днях ни в месяцах не выразить точно). А только как появляется дата конкретная, к которой надо этот период времени применить, входит результат и операция обретает смысл.

А вот я спросил конкретно про разноплановые величины и операцию сложения над ними. Хоть убейте, никакого практического применения не могу выдумать. Умножить-поделить одно на другое я понимаю. Приведение и того и другого к одной другой величине и сложение тех величин — отлично понимаю! Поэтому решение топик-стартера видится верным, а вот спрашивающих сильно натянутым.
Re[3]: арсенал -- не люки и не гномики
От: xy012111  
Дата: 20.05.16 07:40
Оценка:
Здравствуйте, Пофигист, Вы писали:

П>Здравствуйте, xy012111, Вы писали:


X>>"ЯВУ" — язык высокого уровня? ОК, Каков будет тип результата даже при сложении метров с дюймами? Метры? Дюймы? Попугаи?

П>Как определишь, то и будет результатом. Логично было бы конечно всё к стандартным величинам СИ переводить. Но американцы могут конечно и в своих попугаях захотеть результат.

Да, семантически-то ясно, интересно было с точки зрения ЯП, на что ответил Miroff.

X>> И как на нём выполняется сложение километров с литрами, можно узнать? Кто и как написал "процедуру преобразования" для этих типов? То есть понятно, что "процедуры" написать как-то можно, но ведь это бессмыслица получится, негодная в реальной жизни? Или нет?

П>В принципе литры могут разумно переводится в километры,

Вопрос был не в переводе, а в осмысленности сложения одного с другим. Если одно на другое поделить — это я понимаю.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.