Size: a a a

2021 April 13

A

Aleksandr Khristenko in Haskell
А у всех, если зайти на hackage в просмотр модуля, кликнуть на synopsis справа и там кликнуть на любую функцию не происходит перехода на нее?
Или это только у меня что-то сломано?
источник

KV

Kirill Valyavin in Haskell
Да есть такое
источник

LV

Lisa Vasilenko in Haskell
Чет мне гугл не помогает, научите как искать реализацию прагм 🙃
источник

LV

Lisa Vasilenko in Haskell
Сломано
источник

LV

Lisa Vasilenko in Haskell
В смысле в принципе, не только у тебя
источник

JS

Jerzy Syrowiecki in Haskell
никак, это кишки компилятора
источник

A

Aleksandr Khristenko in Haskell
@kana_sama ты вроде в повседневной жизни record-dot-preprocessor используешь?
источник

к

кана in Haskell
+, и в повседневной жизни, и на рабочих проектах
источник

AA

A64m AL256m qn<co... in Haskell
лучше посмотрите какие-нибудь рерайт плагины
источник

A

Aleksandr Khristenko in Haskell
Пока формулировал вопрос, сам разобрался.
Проблема была в том, что автоформатер пробел перед {} съедал
источник

A

Aleksandr Khristenko in Haskell
И соответственно прерпроцессор срабатывал и вставлял setField.
источник

LV

Lisa Vasilenko in Haskell
Пока вот библиотеку нашла https://hackage.haskell.org/package/ho-rewriting
источник

AA

A64m AL256m qn<co... in Haskell
я так понял, что вы хаскельный код переписываете же?
источник

IO

I O in Haskell
fun-like rule не подойдет? IIRC с помощью core plugin можно в какой-нибудь модуль встроить как rule функцию вида

type RuleFun = RuleOpts -> InScopeEnv -> Id -> [CoreExpr] -> Maybe CoreExpr


Сам не пробовал, но вроде видел упоминание в каком-то пейпере.

Поле mg_rules в ModGuts https://hackage.haskell.org/package/ghc-lib-parser-9.0.1.20210324/docs/GHC-Driver-Types.html#t:ModGuts
Конструкор BuiltinRule в CoreRule https://hackage.haskell.org/package/ghc-lib-parser-9.0.1.20210324/docs/GHC-Core.html#t:CoreRule
источник

AA

A64m AL256m qn<co... in Haskell
т.е. надо какой-нить плагин для гхц смотреть типа такого https://github.com/thoughtpolice/unroll-ghc-plugin
источник

к

кана in Haskell
а какой? Ормолу сейчас вроде хендлит, есть ли в модуле прагма плагина, и если есть, то не вставлет и не убирает пробел перед {}
источник

JS

Jerzy Syrowiecki in Haskell
это имеет значение для препроцессора?
источник

A

Aleksandr Khristenko in Haskell
Да. Если перед { нет пробела то он преобразует в setField, если есть пробел то использует родной механизм хаскеля.
источник

A

Aleksandr Khristenko in Haskell
fourmolu, там просто в настройках надо вырубить, чтобы он не убирал пробелы, если они есть, оказывается
источник

IO

I O in Haskell
Compiling to Categories
источник