📚 Node [[haskell]] exact match
Nodes contain individual contributions whose filenames match your search. x
📓 _notes/haskell.md by @bmann
📓 pages/haskell.org by @jakeisnt

Notes on the Haskell programming language.

Software Development

Haskell code bases to study to learn better swdev The golden rule of software quality Do people here actually build useful programs with Haskell? software dev in haskell 'painlessly' The golden rule of software quality - haskell Pro tips for software design in Haskell http://book.realworldhaskell.org/ — learning haskell from the perspective of a software developer https://www.reddit.com/r/haskell/comments/hz4sec/the_golden_rule_of_software_quality/ haskell and software quality

In this article I try to explain why Haskell keeps being such an important language by presenting some of its most important and distinguishing features and detailing them with working code examples. The presentation aims to be self-contained and does not require any previous knowledge of the language. Appendix to Software Design in Haskell Haskell for all: The golden rule of software quality Do people here actually build useful programs with Haskell? - haskell Do you guys think Haskell is the best language if my intent is to develop a

made in haskell

Solving a puzzle in Haskell Magic: The Gathering in your terminal - madeinhaskell guitar in haskell

Utilities

Graphics

http://hackage.haskell.org/package/gloss — 2d graphics library Graphics in Haskell: linear algebra sleexyz/hylogen: GLSL embedded in Haskell hylogen glsl shaders embedded in haskell

Hoogle

https://aaronguo1996.github.io/project/hoogleplus/ hoogle plus :: search for combinations of functions with hoogle! https://hoogleplus.goto.ucsd.edu/ https://aaronguo1996.github.io/project/hoogleplus/ this is the coolest shit

GHC

incredible breakdown of how GHC works syntax - What does the `forall` keyword in Haskell/GHC do? - Stack Overflow 9.1. Language options — Glasgow Haskell Compiler 8.10.1 User's Guide https://downloads.haskell.org/~ghc/7.0.1/docs/html/users_guide/rewrite-rules.html IDE 2020: Measuring memory usage of Haskell values and patching GHC Lambda calculus implemented at the type level in GHC

TemplateHaskell

An excellent Template Haskell Tutorial codeblog/2011-12-27-template-haskell.md at master · leonidas/codeblog https://github.com/JoeyEremondi/haskelm haskell to elm translation with TemplateHaskell

Categories

Category theory https://ncatlab.org/nlab/show/comonad#definition Math Haskell and Category TheoryCategory theory Category Theory | Haskell Language Tutorial http://www.haskellforall.com/2013/02/you-could-have-invented-comonads.html

Monads

state analysis with monads https://sanderv1992.github.io/fp/monad/ https://bartoszmilewski.com/2017/01/02/comonads/ — monads in reverse; co-categories https://en.wikibooks.org/wiki/Haskell/Monad_transformers — transformers :: operating over monads http://comonad.com/reader/

Dependent types and more

mikeizbicki/subhask: Type safe interface for working in subcategories of Ha Dependent type roles : haskell haskell-snippets/LambdaToSKI.hs at master · roger-uw/haskell-snippets

haskell

https://blog.sumtypeofway.com/posts/fast-iteration-with-haskell.html https://blog.josephmorag.com/posts/mcc1/ http://oleg.fi/gists/posts/2020-04-27-overloaded-local-do.html https://gilmi.me/blog/post/2020/04/28/consider-haskell https://tech.fpcomplete.com/blog/2016/11/covariance-contravariance https://tech.fpcomplete.com/haskell/syllabus https://www.reddit.com/r/haskell/comments/g1ajqe/towards_faster_iteration_in_industrial_haskell/ https://www.reddit.com/r/ProgrammingLanguages/comments/fum1pw/haskell_cheat_sheet/ https://www.reddit.com/r/haskell/comments/x7fyt/smartcheck_a_better_quickcheck_for_testing/ http://hackage.haskell.org/package/mwc-random-accelerate — pseudorandom numbers, accelerate arrays ?? https://mmhaskell.com/machine-learning http://hackage.haskell.org/package/nvvm — no idea, looks cool https://hackage.haskell.org/package/haskeline-0.8.0.0/docs/System-Console-Haskeline.html — ui for interacting with the terminal in haskell https://www.youtube.com/watch?v=uxv62QQajx8 — implementing linear haskell https://www.youtube.com/watch?v=SjxP1NpoP2c — hasktorch ! https://www.youtube.com/watch?v=qWpD8t_Aodk&t=945s — how they made hasktorch https://www.reddit.com/r/haskell/comments/gwdd8/io_evaluates_the_haskell_heap/ https://www.reddit.com/r/programming/comments/gwyq2/implementing_the_haskell_heap_in_python_hint_it/ https://www.reddit.com/r/haskell/comments/fz0ve/the_type_technology_tree_mapping_type_extensions/ https://www.reddit.com/r/haskell/comments/h40qr/unraveling_the_mystery_of_the_io_monad/ https://www.reddit.com/r/haskell/comments/k5okh/lets_play_a_game_how_to_implement_functions_from/ https://www.reddit.com/r/haskell/comments/i29kd/a_pattern_for_avoiding_allocation_inside_t5/ https://www.reddit.com/r/haskell/comments/hlsmv/an_insufficiently_lazy_map_the_dangers_of/ https://www.reddit.com/r/haskell/comments/hcjmm/space_leak_zoo_a_catalog_of_common_space_leaks_in/ https://www.reddit.com/r/haskell/comments/tzp7f/a_gamified_tutorial_on_the_sequent_calculus/ https://www.reddit.com/r/haskell/comments/12irlj/hpd3js_an_interactive_heap_profile_viewer/ https://www.reddit.com/r/haskell/comments/571i8r/galois_is_hiring/ https://www.reddit.com/r/haskell/comments/2b7odl/this_just_in_from_my_local_ghccabal_checkout_re/ https://www.reddit.com/r/haskell/comments/5bkhth/request_for_comment_specifying_versions_soname/ https://www.reddit.com/r/haskell/comments/5erk9u/levity_polymorphism_new_paper_from_richard_and/ https://www.reddit.com/r/haskell/comments/5erk9u/levity_polymorphism_new_paper_from_richard_and/ https://www.reddit.com/r/haskell/comments/5yxbh7/what_bcbreaking_changes_would_you_make_to/ https://www.reddit.com/r/adventofcode/comments/ek4652/2019_day_all_haskell_my_first_journey_through/ https://www.reddit.com/r/compsci/comments/g1rtjo/xpost_rhaskell_i_wrote_an_introduction_to_lambda/ https://alpacaaa.net/thoughts-on-haskell-2020/ https://www.fpcomplete.com/blog/2017/06/readert-design-pattern https://www.tweag.io/posts/2019-02-13-types-got-you.html https://hackage.haskell.org/package/base-4.12.0.0/docs/GHC-Generics.html https://www.snoyman.com/blog/2019/11/boring-haskell-manifesto https://tech.fpcomplete.com/blog/2017/01/quickcheck https://www.parsonsmatt.org/2019/12/26/write_junior_code.html https://talks.diogocastro.com/the-haskell-epidemic/#0 http://www.cse.chalmers.se/%7Erjmh/QuickCheck/ https://www.reddit.com/r/haskell/comments/fz19kg/where_can_i_find_examples_of_haskells_features/ https://www.tweag.io/posts/2020-04-16-exceptions-in-haskell.html https://www.reddit.com/r/haskell/comments/g2y4m1/im_streaming_myself_working_on_ghc_today_if_you/ https://ucsd-progsys.github.io/liquidhaskell-blog/2020/04/12/polymorphic-perplexion.lhs/ https://m.youtube.com/watch?feature=youtu.be&v=kIwd1D9m1gE https://gist.github.com/erebe/a8b0ffd1a27133bcf3b640b64e35f2fb https://www.reddit.com/r/haskell/comments/g0w8g5/can_someone_explain_this_kmett_magic/

setting up stack

wget https://get.haskellstack.org/stable/linux-x86_64-static.tar.gz
rm -rf linux-x86_64-static.tar.gz
export PATH=$PATH:./s

creating project:

stack new Other simple
stack setup
getting ncurses5-compat-libs:

other links

ez web server in haskell client side apps in haskell

https://github.com/raviksharma/bartosz-basics-of-haskell basics of haskell tutorial

Proofs

things to remake in haskell (and maybe racket!)

sha256 encoder

IHP

'batteries included haskell framework' https://github.com/digitallyinduced/ihp https://github.com/bergmark/feed haskell package for RSS https://github.com/cdepillabout/termonad haskell terminal emulator https://github.com/AndrasKovacs/setoidtt implementations of systems with setoid type theory https://github.com/jaspervdj/websockets yea https://m.youtube.com/watch?v=FYTZkE5BZ-0 :: make musicwith haskell from scratch https://kowainik.github.io/posts/haskell-mini-patterns haskell mini patterns https://www.reddit.com/r/haskell/comments/hawgff/any_devs_here_interested_in_learning_plutus_and/ https://blog.sigplan.org/2019/12/16/runtime-support-for-multicore-haskell-a-retrospective/ icebreaker fpga https://github.com/mikeizbicki/subhask rewrite of prelude to make numerics fun and fast https://mpickering.github.io//ide/posts/2020-08-04-measuring-memory-size.html measuring memory usage in haskell

web

https://m.youtube.com/watch?v=65GWGc5LNxc debugging ghc assertion error https://reasonablypolymorphic.com/blog/towards-tactics/index.html navigating the haskell tactics engine https://www.srid.ca/haskell-new-project.html creating a new haskell project with ide support and nix

etc…

"A Haskell library that simplifies access to remote data, such as databases or web-based services. " The functional Haskell kernel Developing multiple local packages at once in repl? - haskell Let's build a Cloudflare Worker with WebAssembly and Haskell Implementing a Case Conversion Library in F# and Haskell · maxdeviant.com kwannoel/kattis: Kattis problems in Haskell (maybe Rust? we'll see) kwannoel/haskell_tutorials kwannoel/fingerd: Final haskell project, a finger daemon. Zippers in Haskell and Javascript - My Zettelkasten Other influential disciplines or challenges? - haskell Conal Elliott » “Everything is a function” in Haskell?

effet: An Effect System based on Type Classes - haskell Haskeller competency matrix Solving a puzzle in Haskell. This post isn’t particularly deep or… | by Chr The Haskell Elephant in the Room - YouTube ]"Hackett: a metaprogrammable Haskell" by Alexis King - YouTube Runtime Support for Multicore Haskell: a Retrospective | SIGPLAN Blog raviksharma/bartosz-basics-of-haskell: Code and exercises from Bartosz Mile Announcement/call for contributors: Monpad - haskell

https://lexi-lambda.github.io/resume.html — alexis king — brilliant racket and haskell programmer

he original parsing with derivatives haskell implementation "FPGA Haskell machine with game changing performance. Reduceron is Matthew Naylor, Colin Runciman and Jason Reich's high performance FPGA softcore for running lazy functional programs, including hardware garbage collection. Reduceron has been implemented on various FPGAs with clock frequency ranging from 60 to 150 MHz depending on the FPGA. A high degree of parallelism allows Reduceron to implement graph evaluation very efficiently. This fork aims to continue development on this, with a view to practical applications. Comments, questions, etc are welcome." Haskell-style functional programming language running on Erlang VM. Haskell bindings for the Souffle datalog language Haskell translation of Idris's original algebraic effects library

How Accursed and Unutterable is accursedUnutterablePerformIO? https://ocharles.org.uk/

raft consensus protocol implementation reverse dependency build matrix generator effekt: effect system based on type classes property testing in depth 'vabal': the cabal companion

https://gist.github.com/MaiaVictor/350cd2e318ad884c7c491c3dad7e3b1d

https://typeclasses.com/: a haskell guide, or something https://boarders.github.io/posts/locally-nameless/ cool pl writing based on various papers : ) http://www.newartisans.com/ haskell blogs and ideas https://banana.dog/@yaaps/105019052210553569 https://news.ycombinator.com/item?id=13781467 algebraic subtyping Math CiteSeerX — Functional Programming with Bananas, Lenses, Envelopes and Barbed Wire https://ocharles.org.uk/blog/posts/2019-08-09-who-authorized-these-ghosts.html incredible article on authorization a clever way https://www.youtube.com/watch?v=GQi-6-d5ooQ&app=desktop https://www.reddit.com/r/haskell/comments/i6c0dy/how_to_interpret_recursive_combinators_mean_over/ compile haskell to verilog https://github.com/TOTBWF/refinery: refinement proofs in haskell

Simple Haskell

https://www.simplehaskell.org/ simple haskell is easier for everyone to use https://www.reddit.com/r/haskell/comments/hjtnxx/light_weight_haskell Observations after the first time writing (simple) Haskell : haskell https://www.haskellforall.com/2014/03/introductions-to-advanced-haskell-topics.html?m=1 http://blog.sigfpe.com/2006/08/algebraic-topology-in-haskell.html?m=1

important

https://artyom.me/aeson#fromjson-instances-for-other-types the best aeson tutorial

📓 programming/haskell.md by @karlicoss

Table of Contents

[2016-08-07] .

ihaskell install
jupyter console –kernel haskell

[2015-06-20] Do notation expanded

do e → e
do { e; stmts } → e >> do { stmts }
do { v <- e; stmts } → e >>= \v -> do { stmts }
do { let decls; stmts} → let decls in do { stmts }

This is not quite the whole story, since v might be a pattern instead of a variable. For example, one can write

do (x:xs) <- foo
bar x
but what happens if foo produces an empty list? Well, remember that ugly fail function in the Monad type class declaration? That’s what happens.

monads [[monad]]

writer monad, logger monad

-- l: log type, Monoid
newtype Writer l a = Writer {
    runWriter :: (a, l)
}

reader monad

newtype Reader r a = Reader {
    runReader :: r -> a
}

state monad

newtype State s a = State {
    runState :: s -> (a, s)
}

[2015-06-20] monad transformers [[monad]]

Monad transformers exist only because monads do not compose in general.
MaybeT : provides the construction for (f of Maybe) for any Monad f.

data Compose f g x = Compose (f (g x))

instance (Functor f, Functor g) => Functor (Compose f g) where
      fmap f (Compose z) = Compose (fmap (fmap f) z)

instance (Monad f, Monad g) => Monad (Compose f g) where
      bind :: Compose f g a -> (a -> Compose f g b) -> Compose f g b
      bind (f (g x)) ff =
      bind = ???
      no way!

f a -> (a -> f b) -> f b
g c -> (c -> g d) -> g d

related [[fp]]

Tweet from Dmitry Kovanikov (@ChShersh), at Jun 1, 04:37 [[haskell]]

Looks like @iokasimov can write good #haskell jokes 😏

<https://twitter.com/ChShersh/status/1002393643288686592 >

[2018-10-23] krispo/awesome-haskell: A collection of awesome Haskell links, frameworks, libraries and software. Inspired by awesome projects line. [[haskell]]

  • State "DONE" from [2019-04-22]

https://github.com/krispo/awesome-haskell

[2018-11-24] debug: what I learnt during setting app hakyll blog..

  • stack ghci
  • Debug.Trace.traceShowM within do block
  • pandoc –metadata

[2019-01-06] Resilient-Haskell-Software - Gwern.net [[haskell]]

https://www.gwern.net/Resilient-Haskell-Software

[2019-02-11] Stackage Server https://www.stackage.org/

[2019-04-14] debugging ghci

stack ghci (module loaded automatically)
:set args rebuild
main
:break 222

[2019-01-05] debug: stack trace

stack build --profile
stack exec -- site rebuild +RTS -xc 

[2019-01-25] Henry de Valence on Twitter: "7 years ago i was very smart and wrote my website in haskell and now i can’t update it because i forgot how to make a monad out of posts" / Twitter [[haskell]] [[fun]]

<https://twitter.com/hdevalence/status/1088649294746275840 >

[2016-02-28] applicative functors [[haskell]]

  • regular functor

    class Functor f where
      fmap :: (a -> b) -> f a -> f b
    

Laws:

fmap id = id                                 -- Identity
fmap (p . q) = (fmap p) . (fmap q)           -- Homomorphism
  • applicative

    class (Functor f) => Applicative f where
        pure  :: a -> f a
        (<*>) :: f (a -> b) -> f a -> f b
    

Laws:

pure id <*> v = v                            -- Identity
pure (.) <*> u <*> v <*> w = u <*> (v <*> w) -- Composition
pure f <*> pure x = pure (f x)               -- Homomorphism
u <*> pure y = pure ($ y) <*> u              -- Interchange
fmap f x = pure f <*> x                      -- Fmap

The mapping between Haskell functors is a family of functions parameterized by types. For instance, a mapping between the [] functor and the Maybe functor will map a list of a, [a] into Maybe a.
Here’s an example of such a family of functions called safeHead:

safeHead :: [a] -> Maybe a
safeHead []     = Nothing
safeHead (x:xs) = Just x

[2016-02-28] monad vs applicative [[haskell]]

https://wiki.haskell.org/Typeclassopedia#Intuition_3

📓 haskell.md by @ryan

Haskell

📓 Haskell.md by @agora@botsin.space

Loading pushes...

Rendering context...