
Летучая
28.09.2017
12:43:56
Там даже проблемные координаты буков написаны

Evgeniy
28.09.2017
12:45:04
@lPestl Пожалуйста, большие куски кода или логи выкладывайте на pastebin.com или gist.github.com

Mikhail
28.09.2017
12:45:28

Google

Evgeniy
28.09.2017
12:46:30
https://pastebin.com/gr99Rpiz
@lPestl @Worldbeater ^

Friedrich
28.09.2017
12:47:19
Непохоже, чтобы он не видел классов из соседнего файла. Похоже, что там в синтаксисе где-то ошибка. Можем мы взглянуть на файл?

Mikhail
28.09.2017
12:50:38

Friedrich
28.09.2017
12:53:20
Ну хотя б одним глазком!

Mikhail
28.09.2017
12:55:47
https://gist.github.com/lpestl/7bbd569fb81a647b1c0f6d773f830373

Friedrich
28.09.2017
12:57:19
Ок, он ругается на Positioning.computeRelativePos
Заметь, на Positioning.computeAbsolutePos, вроде, не ругается.

Mikhail
28.09.2017
12:57:41

Friedrich
28.09.2017
12:57:58
Модуль Positioning объявлен в соседнем файле, да?
Можешь показать сигнатуры этих штук? Я думаю, в них что-то не так.

Mikhail
28.09.2017
13:01:16

Google

Mikhail
28.09.2017
13:01:41
Ругается на Layers`ы

Friedrich
28.09.2017
13:01:49
Ой, я чёт проглядел. Мне показалось, что он на 80 строку ругается :)
Ок, то есть ему, например, не нравится HudLayer?
Я тогда вообще не понимаю, как это должно работать. С компилятором я пока соглашусь.

Mikhail
28.09.2017
13:03:03
Ему не нравиться все из этого модуля
module LayerProperties =
let LevelEntitiesLayer = LayerProperty(zOrder=1, tag=1)
let PostActionLayer = LayerProperty(zOrder=2, tag=2)
let HudLayer = LayerProperty(zOrder=3, tag=3)
let CalibrationLayer = LayerProperty(zOrder=4, tag=4)
let PauseLayer = LayerProperty(zOrder=4, tag=5)
let EndOfGameLayer = LayerProperty(zOrder=4, tag=6)

Friedrich
28.09.2017
13:03:21
А что это вообще такое? Как это можно вызывать как функции?
Ну то есть вот у тебя есть
let HudLayer = LayerProperty(zOrder=3, tag=3)
// а дальше
let hudLayer = HudLayer(viewSize, config, viewModel)
Что тут имеется в виду?
LayerProperty это совершенно обычный тип, у него нету никакой магии, и непонятно, как ему можно передать что-то в круглых скобках.

Mikhail
28.09.2017
13:07:47
В другом файлк этого проекта объявлен
type HudLayer(viewSize: CCSizeI, config: GameConfiguration, gameViewModel: GameViewModel) as this =
inherit CCLayer()

Friedrich
28.09.2017
13:08:11
Не, погодь, смотри что получается

Mikhail
28.09.2017
13:08:18
И с остальными так же

Friedrich
28.09.2017
13:08:18
В другом файле есть вот этот тип, всё круто
Но в твоём файле-то почему-то описано определение let HudLayer = LayerProperty(zOrder=3, tag=3)
Код в этом файле использует именно это определение, потому что ты написал open LayerProperties
Мб ты хочешь выпилить эту строчку с open? Похоже, ты дальше везде обращаешься к свойствам этого модуля, явно указывая его имя. А если не указываешь, то как раз хочешь типы из другого файла.
https://gist.github.com/lpestl/7bbd569fb81a647b1c0f6d773f830373#file-gamescene-fs-L27 — вот эту строчку.

Mikhail
28.09.2017
13:15:34

Vladimir
28.09.2017
13:16:31
Я тут подумал раз одно предложение прокатило, может и за меня проголосуете) https://github.com/fsharp/fslang-suggestions/issues/508

Google

Evgeniy
28.09.2017
13:17:21
Но оно от тебя и было. :)

Vladimir
28.09.2017
13:17:45
))

Vasily
28.09.2017
13:18:41
Дык шафл жеж в полпинка пишется, не?
Это по факту тот же orderby

Vladimir
28.09.2017
13:20:39
ну да, но orderby есть в стандартной либе, а шаффла нет

Vasily
28.09.2017
13:20:57
сигнатура там вообще один в один будет
Хотя не

Vladimir
28.09.2017
13:21:24
сид передать надо будет

Vasily
28.09.2017
13:21:27
Смотря как запроектировать

Evgeniy
28.09.2017
13:21:41
Я уяснил для себя — Дон очень не любит что-либо добавлять в стандартную библиотеку. :)

Vasily
28.09.2017
13:21:56
В целом, правильно делает

Friedrich
28.09.2017
14:14:49
Я согласен, что не стоит в стандартную либу это тащить. А вот сделать хорошую реализацию где-нибудь в FSharpx — однозначно стоит.

Evgeniy
28.09.2017
14:24:43
Кто-нибудь примеры от SAFE уже смотрел?

Roman
28.09.2017
14:31:48
Может сделать, если не митап, то хотя бы встречу F# обожателей, для знакомства и узнавания в лицо.

Evgeniy
28.09.2017
14:45:57
Дринкап!

Roman
28.09.2017
14:46:02

Vasily
28.09.2017
14:58:31
Можно
Но через пару недель

Google

Roman
28.09.2017
15:09:23
Почему через пару недель?

Андрій
28.09.2017
15:12:40
Кто-то встречал?
https://stackoverflow.com/questions/45145581/sonarlint-with-custom-sonarqube-f-plugin

Vasily
28.09.2017
15:20:10

Friedrich
28.09.2017
15:28:52

Андрій
28.09.2017
15:30:25
Спасибо

Andrew
28.09.2017
16:26:21
Кто-нибудь задавался вопросом - как отлаживать fsx?

Evgeniy
28.09.2017
16:49:36

Nikolay
28.09.2017
16:54:55
:D

Evgeniy
28.09.2017
16:57:23
С Fableconf видео нет до сих пор. Может хоть с OpenFSharp будет?
А я сейчас попробую собрать компилятор на своей печатной машинке.
В компиляторе много аббревиатур. Есть свой CSS!
css -- Constraint solver state

Nux
28.09.2017
17:44:32
это леночка?

Evgeniy
28.09.2017
17:45:04
Компилятор скомпилировал, тесты протестировал!
Отлично, не думал, что это будет так просто.

Igor
28.09.2017
17:54:47
Это лайв? Дайте ссылочку

Evgeniy
28.09.2017
17:55:01

P
28.09.2017
20:49:50
@gsomix не подскажешь пожалуйста как вообще работает твой хак https://gist.github.com/gsomix/a452cca580a98f3b3abbeb69e47dffe1 и где об этом можно подробнее почитать?

Google

Xak
28.09.2017
21:00:58

Mikhail
28.09.2017
22:57:44
Привет, всем! Есть кто неспящий? Подскажите, как задать значение по умолчанию необязательному параметру метода класса?
member x.IncrementPlayerCount (?multiplier) =
Типа такого
Как задать значение по умолчанию multiplier?

Evgeniy
29.09.2017
03:29:07
https://angrydexterous.github.io/typeclassish.html#/
Вот тут можно почитать про подобные трюки.
Test Run Summary
Overall result: Passed
Tests run: 5336, Passed: 5336, Errors: 0, Failures: 0, Inconclusive: 0
Not run: 3, Invalid: 0, Ignored: 0, Explicit: 3, Skipped: 0
Start time: 2017-09-28 20:07:57Z
End time: 2017-09-29 03:23:06Z
Duration: 26112,329 seconds
Компилятор на моей печатной машинке.
Оказывается, Rider не умеет в Inline IL.
Не, не так. Не умеет в Inline IL вперемешку с конструкциями языка. Ругается на type('T).
let tok = (# "ldtoken !0" type('T) : System.RuntimeTypeHandle #)
https://github.com/SAFE-Stack/SAFE-BookStore/pull/182
Hot Module Reloading впилили в пример SAFE-BookStore.


Artemy
29.09.2017
08:15:52
Есть ли по https://xyncro.tech/hekate/ какие-нибудь туториалы? А то ничего не нахожу. Даже документации нормальной нету (только комменты в исходниках).

Evgeniy
29.09.2017
08:18:42
@artemy_b Можно взять QuickGraph. Но она на C#, возможно, придется пописать императивную лапшу. :)
https://github.com/YaccConstructor/QuickGraph

Artemy
29.09.2017
08:28:30
Да, эта библиотека покрупнее будет
Там 9.4% кода на F# :)