This video is worth more than 10 Haskell books. Authors spend 500 pages talking about math and patterns, when, in fact, 90% of development is entirely based on top of an ecosystem, not only the language itself.
And most of the explanations are GARBAGE. We are developers, not mathematicians wannabes. We don't teach C by starting to tell people how printf is actually implemented in ASM, so why do we do (sort of) that in Haskell?
@@beauteetmusculation8191 haskell is very dependant on maths, while normal imperative programming doesnt force you to have to know the insides of things (but you should still want to learn about those insides if you wanna be a good programmer).
Unfortunately, your setup doesn't seem to work on my system (slackware). I'm a Vim user, but would like to try out Emacs. I hoped that merely copying your emacs config files from your git repo into my home folder would suffice. Emacs starts up fine, but there's a problem with the Haskell mode. I keep getting the error: "The Haskell process 'Haskell' has died. Restart?" Any idea what could be the cause of this? EDIT: The haskell process no longer crashes after changing to the stable MELPA branch. But the key combinations C-c C-l and C-x e don't work. I can start an interactive haskell process from the menu though. Now the only thing that really doesn't work is sending the code to the haskell process with C-x e.
Or the Emacs Window manager? See DistroTube channel how to set that up. He is currently using Emacs and Haskel (with Xmonad). He will stop using it soon, as he jumps around and test everything. :-)
Contrary to what was told in the video, I'd suggest to always begin learning a new language from learning about available package managers, code analysis tools, most usefull libraries, etc. because these are things that matter a lot. sometimes, even much more than language syntax and style itself, like with fortran, R or python.
Running Linux, using Haskell and not using Xmonad as a window manager is a crime imo. You don't even need dmenu, Xmonad has its own prompt. It just makes my eye tick every time I watch your videos. Xmonad is an awesome window manager and it deserves way more love than it gets. Also, it's an actual real world Haskell application, so win-win in my book.
@Ralph Reilly calling configuring xmonad 'programming in Haskell' sounds like too strong of a term - number one, and number two, currently I live with my decision to abandon X in favor of Wayland and I have to content with a thousand of small inconvenience that nonetheless make me wish I was still in xmonad, every time lol
Yeah, it is what it is. ghcid doesn't give you the REPL, it just recompiles your files on changes and shows the errors. For REPL you need to run an instance of ghci (without ghcid) in a separate terminal. ¯\_(ツ)_/¯
When I was still using Windows (3 years back I think), I used at first Haskell Platform: www.haskell.org/platform/#windows . Then I moved to Stack: docs.haskellstack.org/en/stable/README/#how-to-install . I feel I should warn you, native GUI applications are not Haskell's strong suite. There are some libraries which use essentially browser to render GUI (I think Miso or was it something else?), so you can use power of HTML+CSS, but I don't think Haskell in this tech stack brings much (at least GUI-wise). There are a few native GUI libraries, but I think they are quite imperative, of lower quality (missing docs, no or almost no tutorials and so on) and their APIs not really designed in a Haskell way (more like bindings to C APIs).
You can install Emacs and GHC in Windows. It, developing programs etc) does works nearly as good as in Unix/Linux. :-) You could also use VirtualBox to do the developing in, or install Ubuntu (or another distro) from MS Windows store. There are lots of opportunities.
10:05 I felt personally attacked. But being serious, I'm new to Haskell and I am learning with that book, do you suggest any better book? I know what you just said about hlint but learning that way seems inefficient when new to the language and the paradigm.
@@SimonWoodburyForget i know this comment is old, but emacs is literally a lisp interpreter, you can't get more bloated. Compared to other popular text editors on linux, It's VEEEERYYYY bloated.
@@SimonWoodburyForget LISP is as close as you get to minimalism when it comes to programming languages. Not modern Lisps. it may be the easiest language to implement, but just because it's easy to implement doesn't mean that the developers of the interpreter aren't going to make it bloated, also, Emacs comes with the GUI (which is written in C), the text editor part (which is written in C) and only then the elisp being an auxiliary language, not the core.
@@SimonWoodburyForget would you consider the GUI of a terminal emulator to not be part of it? Just because Lisp is easy to implement doesn't mean that anything that uses it is minimal. Go ahead and compare Emacs' implementation to Vim or Acme, And tell me Emacs isn't bloated in comparasion to them.
@@SimonWoodburyForget >Emacs is just a terminal emulator or shell I think most terminal emulators don't come with a Lisp interpreter and Tetris bundled with it. >Not even Vim users want to use Vim False, It does more than enough, there are many vim commands that nobody or almost nobody knows about, if you actually check out the vim documentation you will see that 90% of plugins are unnecessary because their functionalty is already bundled with vim. What i meant by comparing Emacs to Vim and Acme is that Emacs is much more bloated than those, Emacs may be "minimal" compared to VSCode, Sublime, or other modern IDEs, but compared to other text editors GNU users use (Vim and Acme), it is pretty bloated.
@@SimonWoodburyForget Your entire comment revolves around the fact i use Vim, in fact, i use Emacs (because Slime is just so great to work with common lisp), I am happy for that you are happy with Emacs, just like i am happy with Emacs. What i am trying to prove is that Emacs is the most bloated text editor that GNU Users use. (GNU users don't use proprietary IDEs)
How to do this on Windows: install vs code and search for "Haskell" under extensions Jk don't use Windows for Haskell I tried it it was a nightmare. Wsl is fine though
Ok now I have a valid replacement for my JS stack, a linter, a formatter and a fast feedback loop. Thx, you're making my life better
Wow, definitely going to try some of this stuff, thank you so much!
This video is worth more than 10 Haskell books. Authors spend 500 pages talking about math and patterns, when, in fact, 90% of development is entirely based on top of an ecosystem, not only the language itself.
And most of the explanations are GARBAGE. We are developers, not mathematicians wannabes. We don't teach C by starting to tell people how printf is actually implemented in ASM, so why do we do (sort of) that in Haskell?
@@beauteetmusculation8191 haskell is very dependant on maths, while normal imperative programming doesnt force you to have to know the insides of things (but you should still want to learn about those insides if you wanna be a good programmer).
thanks man, haskell has pretty good tooling
Ok that "ghc --make" trick I didn't knew, I wish I knew about it much earlier.
wait wait wait ... 13 years old nerd? you just made me feel really old now :)
Me don't speak english very good. I think I meant 30. What's funny is that I didn't even notice that even during the editing :D
Not just that, but a 13 y.o. boomer
@@nekoill Aang From Avatar: The Last Airbender
Wow, you've improved your speaking and also the sound a lot compared to recent videos. Anyway thanks for sharing your setup! Very helpful 🙂
Unfortunately, your setup doesn't seem to work on my system (slackware). I'm a Vim user, but would like to try out Emacs. I hoped that merely copying your emacs config files from your git repo into my home folder would suffice. Emacs starts up fine, but there's a problem with the Haskell mode. I keep getting the error: "The Haskell process 'Haskell' has died. Restart?" Any idea what could be the cause of this?
EDIT: The haskell process no longer crashes after changing to the stable MELPA branch. But the key combinations C-c C-l and C-x e don't work. I can start an interactive haskell process from the menu though. Now the only thing that really doesn't work is sending the code to the haskell process with C-x e.
Use arch
i'm Emacs user too.
ddg user too
dwm/emacs/haskell... the good life
Maybe xmonad, instead of dwm?
yeah I switched to xmonad too lol
Or the Emacs Window manager?
See DistroTube channel how to set that up. He is currently using Emacs and Haskel (with Xmonad). He will stop using it soon, as he jumps around and test everything. :-)
Anders Jackson I'm currently on spectrwm lol
emacs nice lol... i’m currently using xmonad on my desktop and spectrwm on my laptop... both are great wms
Thanks for showing your setup, I also learned about hslint :)
Contrary to what was told in the video, I'd suggest to always begin learning a new language from learning about available package managers, code analysis tools, most usefull libraries, etc. because these are things that matter a lot. sometimes, even much more than language syntax and style itself, like with fortran, R or python.
Sir, I use ur emacs config, and now i cannot copy/paste from clipboard.
Good video. Helpful and enjoyable to watch.
You're my hero! Thank you. :)
Great video, it would be cool a video about your c++ setup on emacs :)
Very good content. Thank you so much!!!
Way to go.. Very useful..
Думаю, почему мне удается так хорошо понимать твой английский, а оказывается ты Russian 30. y.o. boomer. Спасибо за твои ролики)
Я как услышал его, понял что русский, акцент остался чутка)0
Очень полезные видео, спасибо!
luckily i am a Linux user and like haskell and your videos 👍
I like your spontaneous and relatable jokes :D
Спасибо огромное за твои видео, смотрим с девушкой:)
Running Linux, using Haskell and not using Xmonad as a window manager is a crime imo. You don't even need dmenu, Xmonad has its own prompt. It just makes my eye tick every time I watch your videos. Xmonad is an awesome window manager and it deserves way more love than it gets. Also, it's an actual real world Haskell application, so win-win in my book.
@Ralph Reilly calling configuring xmonad 'programming in Haskell' sounds like too strong of a term - number one, and number two, currently I live with my decision to abandon X in favor of Wayland and I have to content with a thousand of small inconvenience that nonetheless make me wish I was still in xmonad, every time lol
This is very helpful!
Could you advice, ghcid --command="ghci src/Main.hs", reports: "All good" but i have no repl active, how to fix it? using linux
Yeah, it is what it is. ghcid doesn't give you the REPL, it just recompiles your files on changes and shows the errors. For REPL you need to run an instance of ghci (without ghcid) in a separate terminal. ¯\_(ツ)_/¯
@@alexeykutepov3767 if i'will run separate instance of repl, will it be updated automatically during ghcid recompiling ?
@@DjLeonSKennedy Nope :D
What's that fancy program launcher? Would your like to share your desktop/Linux setup ?
The window manager is dwm. I don't remember the name of the program launcher, but I used it before, they're both available at suckless.org.
@@ricardo.mazeto This is i3. Completely unrelated and very different in how it works. dwm is better tho imo
@@0x1337feed But the app launcher is identical to dwm. Why you think it is i3? And why do you think dwm is better?
that is dmenu_run I think
what you use to record you screens?
Emacs is the BEST!
Da!
självklart!
So interested in Haskell but it's so difficult to learn for me, seems i stupid for it :(
Have you tried learnyouahaskell.com/?
don’t read any book on Haskell, just watch this video first
please i want learn haskell in windows
is recomendable install platform?
I try and i cant make a GUI program.
When I was still using Windows (3 years back I think), I used at first Haskell Platform: www.haskell.org/platform/#windows . Then I moved to Stack: docs.haskellstack.org/en/stable/README/#how-to-install .
I feel I should warn you, native GUI applications are not Haskell's strong suite. There are some libraries which use essentially browser to render GUI (I think Miso or was it something else?), so you can use power of HTML+CSS, but I don't think Haskell in this tech stack brings much (at least GUI-wise). There are a few native GUI libraries, but I think they are quite imperative, of lower quality (missing docs, no or almost no tutorials and so on) and their APIs not really designed in a Haskell way (more like bindings to C APIs).
You can install Emacs and GHC in Windows. It, developing programs etc) does works nearly as good as in Unix/Linux. :-)
You could also use VirtualBox to do the developing in, or install Ubuntu (or another distro) from MS Windows store. There are lots of opportunities.
@@AndersJackson many thanks.
Thanks, great tips for beginners.
can someone explain the haskell real world applications joke? why is it not a good language for solving real problems in the real world?
If you tell me you aren't a super villain you are a liar.
10:05 I felt personally attacked.
But being serious, I'm new to Haskell and I am learning with that book, do you suggest any better book? I know what you just said about hlint but learning that way seems inefficient when new to the language and the paradigm.
Can You share you font style details?
He uses iosevka :)
А я юзаю VIM!
> minimal
> emacs
:thinking:
@@SimonWoodburyForget i know this comment is old, but emacs is literally a lisp interpreter, you can't get more bloated. Compared to other popular text editors on linux, It's VEEEERYYYY bloated.
@@SimonWoodburyForget LISP is as close as you get to minimalism when it comes to programming languages. Not modern Lisps. it may be the easiest language to implement, but just because it's easy to implement doesn't mean that the developers of the interpreter aren't going to make it bloated, also, Emacs comes with the GUI (which is written in C), the text editor part (which is written in C) and only then the elisp being an auxiliary language, not the core.
@@SimonWoodburyForget would you consider the GUI of a terminal emulator to not be part of it? Just because Lisp is easy to implement doesn't mean that anything that uses it is minimal. Go ahead and compare Emacs' implementation to Vim or Acme, And tell me Emacs isn't bloated in comparasion to them.
@@SimonWoodburyForget
>Emacs is just a terminal emulator or shell
I think most terminal emulators don't come with a Lisp interpreter and Tetris bundled with it.
>Not even Vim users want to use Vim
False, It does more than enough, there are many vim commands that nobody or almost nobody knows about, if you actually check out the vim documentation you will see that 90% of plugins are unnecessary because their functionalty is already bundled with vim.
What i meant by comparing Emacs to Vim and Acme is that Emacs is much more bloated than those, Emacs may be "minimal" compared to VSCode, Sublime, or other modern IDEs, but compared to other text editors GNU users use (Vim and Acme), it is pretty bloated.
@@SimonWoodburyForget Your entire comment revolves around the fact i use Vim, in fact, i use Emacs (because Slime is just so great to work with common lisp), I am happy for that you are happy with Emacs, just like i am happy with Emacs.
What i am trying to prove is that Emacs is the most bloated text editor that GNU Users use. (GNU users don't use proprietary IDEs)
We all know you're a liar. Don't trust this guy, he is using Vim, not Emacs.
:wq, it was a term window this whole time! But wait, now he's exiting vim and it was eshell this whole time....
10:36 Ahahhah :D How about that ?
>900KB for a simple hello world program??? WTF! `sudo apt purge ghc`.
It is about the same size of most hello world programs this age. But the thing is that programs doesn't grow that much after that initial size.
Emacs, :(
In case for the people using windows or Mac and and editor like vs code or sublime there's an easy fix:
Stop
How to do this on Windows: install vs code and search for "Haskell" under extensions
Jk don't use Windows for Haskell I tried it it was a nightmare. Wsl is fine though
Do you speak russian?