Andy Melnikov (nponeccop) wrote,
Andy Melnikov
nponeccop

HNC, Windows, SublimeHaskell и stack

Глобальная претензия к SublimeHaskell всего одна - https://github.com/nponeccop/HNC не поддерживается, т.к. кастом билд использует новые фичи кабала 1.24 (setup-depends), которые не поддерживаются стеком, из-за чего не получается собрать HNC стеком, а сборку кабалом мне было лень сетапить под виндой. Претензию выставлять в гитхабе нет смысла поскольку это баг стека, который уже есть в трекере стека, а под кабалом может оно и заработает. Штатно я (и тревис) собираем HNC кабалом под линуксом, но там из-за бага в ядре нет иксов под используемым мной нестандартным гипервизором.

Иксы есть но нет мыши, и этот баг репортить нет смысла, поскольку ядро без мыши старое, а в новом ядре нет не то что мыши - нет загрузочного диска. Но только под арчем, а арчеводы не умеют в Hyper-V, а я не умею в диагностику ядра. Т.е. поставить саблайм в линукс и проверить там для меня относительный геморрой.

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

Тестил только https://github.com/nponeccop/HNC/blob/master/HNC.hs#L41-L60

Чего хочется, находясь в теле ff (что я попробовал, и не получилось):

- комплита локальных идентификаторов, пусть даже текстового - dump должен предлагать dumpOptFlag и dumpGraphFlag
- комплита qualified imports - M. должно предлагать комплит экспортов из Data.Map
- правильной подсветки guards (этот баг есть в трекере саблайма). Причем лично для меня безглючность подсветки важнее фичастости - т.е. лучше некоторые сущности отдельным цветом не выделять вообще, чем выделять их каждый раз разным цветом.

Что я не попробовал, но попробую, как только начнет собираться:

- https://github.com/nponeccop/HNC/blob/master/Test/Main.hs должен видеть QuickCheck и HUnit (это часто не поддерживается, поскольку Test.Main считается принадлежащим другому таргету в SPL.cabal где quickcheck не указан в build-depends)

- https://github.com/nponeccop/HNC/blob/master/CPP/CompileTools.hs должен видеть Bar (это как правило не поддерживается, потому что о местонахождении Bar знает только плагин uuagc-cabal, который говорит это Кабалу. Т.е. если вместо спрашивания у кабала пытаться угадать - будет хуй. Высший пилотаж там же - это догадаться, что файлов Bar.hs у меня минимум два (разные файлы в разных таргетах) и соответственно предлагать 2 места при go to definition у AG.compile2

- https://github.com/nponeccop/HNC/blob/master/HN/MilnerTools.hs - на нём любили падать все, уж не припомню почему
Tags: fp, haskell, hn0, programming
Subscribe

  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 4 comments