
Evgeniy
05.04.2017
12:14:58
Нравится, когда пишут статьи с интерактивной визуализацией.
Никак руки не дойдут попробовать для этого Fable+D3.
@the_RAMZAY У тебя тоже еще не дошли?

Anton
05.04.2017
12:33:13
@gsomix неа, работы пока хватает своей =)

Google

Roman
05.04.2017
12:48:17
А try-with работает внутри async?
С try надо аккуратнее при рекурсивных вызовах. try with сохранял стек и поэтому даже если рекурсия хвостовая, то случалось переполнение стека.
т.к. не отозвались

Artemy
05.04.2017
12:49:50
Вообще, есть впечатление, что с WebSharper вообще очень мало людей работают.

Roman
05.04.2017
12:52:16

Evgeniy
05.04.2017
12:53:15
@neftedollar Это из-за того, что try-with ломают хвостовую рекурсию?
Или какая-то более глубокая причина?

Roman
05.04.2017
12:53:45

Artemy
05.04.2017
12:55:16
Ну у меня лично WebSharper - первый опыт в вебе. Так что зашло нормально. Тем более, что с JS незнаком. А тут можно об этом почти не думать.
Проблема лишь одна и большая - найти инфу. Спросить толком не у кого.

Anton
05.04.2017
12:57:42
Что такое WebSharper ? 0_o

Google

Artemy
05.04.2017
12:57:55
LOL

Anton
05.04.2017
12:58:48
какая-то очень стрёмная вещь

Artemy
05.04.2017
12:59:03
Веб-фреймворк, позволяющий писать на F# как серверный, так и клиентский код.

Anton
05.04.2017
12:59:18
А зачем, если есть Fable ?

Artemy
05.04.2017
12:59:50
Ну Fable же - это просто транслятор в JS, так?

Anton
05.04.2017
12:59:58
ну да
грубо говоря
очень грубо

Nikolay
05.04.2017
13:00:17

Artemy
05.04.2017
13:00:24
Ага
И ещё есть DSL для HTML
Но это всё равно в JS потом транслируется, естественно.

Nikolay
05.04.2017
13:01:10
Интересно

Anton
05.04.2017
13:01:47
Ок, а как из этого дёргать vue/react/angular ?

Nikolay
05.04.2017
13:02:25

Artemy
05.04.2017
13:02:42
+ ещё серверный код. Компилится как ASP.NET приложение. Так что хостится в IIS. Ну и там есть поддержка OWIN, Suave. С последними дела не имел ещё.

Anton
05.04.2017
13:03:37
Нуууу, просто я пишу на обычном js и не разу ничего такого не использовал. Интересно даже, на сколько это пригодно к жизни.

Artemy
05.04.2017
13:04:55

Anton
05.04.2017
13:05:16
не, jQuery от греха.

Google

Artemy
05.04.2017
13:05:31

Anton
05.04.2017
13:05:56
Artemy пробовали Fable ?

Artemy
05.04.2017
13:07:35
Хотел вот недавно. Но посмотрел, что там нужно больше понимания в инфраструктуре JS. Но уже имелся небольшой опыт с WebSharper и решил сделать на нём. Чтоб быстрее.
Ну и ещё особенности Fable надо было бы разбирать.

Anton
05.04.2017
13:07:51
понятненько

Artemy
05.04.2017
13:07:56
А мне JS много не надо.
Разве что форма с последующей обработкой на сервере. Ну и да, с ASP.NET опыта тоже пока нет. Совсем немного поразбирался.
А, ну и в WebSharper есть ещё HTML-шаблоны, реализованные спомощью провайдеров типов.

Evgeniy
05.04.2017
13:26:19
Завтра F# Exchange стартует.
Надеюсь, видео быстро выложат.

Akhmed
05.04.2017
13:27:51
Я игрался с Fable и WebSharper. На девконе выступал чувак которые пишут только на F#
и вот они активно используют WebSharper
смысле в том что, действительно Fable исключительно HTML5 приложения и все
а WebSharper используется код и на сервере и на клиенте
минус в том что они почти неразрывны

Nikolay
05.04.2017
13:37:31

Dmitry
05.04.2017
13:42:19
"...судьба и родинаааа - едины!"

Akhmed
05.04.2017
13:43:16
не в том смысле что это само по себе минус
минус в том что И сервер И клиент жестко завязывается на сам WebSharper
поэтому надо писать код максимально аккуратно и чисто что бы ограничить зависимость от WebSharper в одном слое ии не размазывать по всему проекту эту зависимость

Google

Artemy
05.04.2017
13:46:51
Ну так вроде вполне себе обычное дело. WebSharper - UI, а логика - сама по себе. Или я что-то ещё упускаю?

Roman
05.04.2017
14:23:44
Года 4 назад вебшарпер был оч крутой, сейчас есть Fable(клиент) и Giraffe(серевер) для веба и там и там может быть общий код общие модели. Так что все плюсы вебшарпера уже не плюсы.

Artemy
05.04.2017
14:30:34
Было дело, в Гиттере вопрос задавал когда-то. Там вообще глухо, вроде.

Evgeniy
05.04.2017
14:32:55
@neftedollar https://hastebin.com/onebevinom.fsx

Roman
05.04.2017
14:33:17
x::xs -> f' x; impl f' xs заверни в try with
и вот тут тогда может быть переполнение
там даже ексепшн райзить не обзательно
просто итераций побольше)

Evgeniy
05.04.2017
14:36:17
@neftedollar Да, это понятно, если ты tail call оборачиваешь в try-with, то он перестает быть tail call.

Roman
05.04.2017
14:36:25
да
ою этом и речь

Vasily
05.04.2017
14:36:32
Хммм... краем глянул на жирафа... на первый взгляд вроде ок

Google

Evgeniy
05.04.2017
14:36:46
Поэтому рекурсию во вложенную функцию, обработка снаружи.
И все.

Roman
05.04.2017
14:37:02

Vasily
05.04.2017
14:37:38
suave все же довольно хипстерская штука. На продакшн лучше что-то более близкое к asp.net накручивать

Evgeniy
05.04.2017
14:37:46
Интересно, какой-нибудь линтер должен ругаться, наверное.

Roman
05.04.2017
14:37:56
ну вот Giraffe это и есть asp.net
@gsomix на хабре древняя статья была, тогда никто не ругался0

Vasily
05.04.2017
14:38:58
Будет время, под что-нить приспособлю

Artemy
05.04.2017
14:40:41
Я про Suave много слышал/видел, но сам всё ещё не пробовал. Интересует, где размещаются приложения на Suave? Можно ли их хостить на Windows-хостинге для ASP.NET?

Roman
05.04.2017
14:41:39
и его можно хостить уже везде)

Artemy
05.04.2017
14:47:39
А что у Giraffe с документацией?
И вообще, каково его состояние? Приемлемое для использования?

Akhmed
05.04.2017
14:59:52
Спасибо за наводку на Giraffe - я тоже про него не слышал
везде suave упоминается

Roman
05.04.2017
15:06:09

Nikolay
05.04.2017
19:53:46
Буду признателен, если кто-нибудь посмотрит код и укажет на ляпы.
https://gist.github.com/anonymous/c8c118d70dfc8cca3eb1995436b827c7

Igor
05.04.2017
20:08:32