Fun never stops. Introduction to Haskell Programming language by Paul Szulc

แชร์
ฝัง
  • เผยแพร่เมื่อ 15 ม.ค. 2025

ความคิดเห็น • 42

  • @GopinathSadasivam
    @GopinathSadasivam 6 ปีที่แล้ว +22

    48:24 quick sort followed by fizzbuzz = mindblown!
    Thanks for this inspiration to learn Haskell!

  • @hijarian
    @hijarian 5 ปีที่แล้ว +9

    When I first learned Haskell several years ago, 13:50 was the most world-view-shattering moment for me. Partial and curried functions was a completely surprise alien tech for me then. :D

  • @rodelias9378
    @rodelias9378 2 ปีที่แล้ว +1

    Awesome talk by an awesome speaker. Thanks a lot!!

  • @sorinrusu5311
    @sorinrusu5311 5 ปีที่แล้ว +6

    EPIC! Best intro to haskell I've ever seen!

  • @DanielWillen
    @DanielWillen 4 ปีที่แล้ว +3

    I really wished that guy hadn't asked about pattern matching infinite lists, people come with the strangest questions at what's mostly an introduction. Presenter needed more time to go through the more advanced concepts. By the way, check out Tsoding on youtube, he does a lot of crazy stuff with Haskell and you can learn a lot from him.

  • @ankit8268
    @ankit8268 ปีที่แล้ว

    you are amazing, just started learning haskell and this was very helpfull

  • @mikelezhnin8601
    @mikelezhnin8601 6 ปีที่แล้ว +23

    Just a few comments:
    1) every intro to a programming language should have 'how to write comments' as the very first thing. Btw in Haskell you can use -- to comment the rest of the line.
    2) for those coming from OOP it may be a good idea to call 'class types' interfaces. Because this is what they are, essentially.
    3) one more error in slides that was unnoticed: at 50:55 it should be 'take 16 fizzbuzz' and not 'take 16 pattern'.

  • @sanchopanza271
    @sanchopanza271 6 ปีที่แล้ว +8

    Maybe somebody noted that at 37:06, isn't needed Num a, I mean could be of any type and must to be member of some type class.
    Surely this error is done, to the 1 + , part of its definition, but the + isn't applied on members of the input list,
    it is applied to the list tail length.
    So signature should be:
    length :: [a] -> Int

  • @klokibril
    @klokibril 4 ปีที่แล้ว +1

    I am far from able to program in Haskell, but the composition just makes so much sense...

  • @ChristopherOkhravi
    @ChristopherOkhravi 7 ปีที่แล้ว

    Great, dense talk. Thanks!

  • @shouvi
    @shouvi 3 ปีที่แล้ว

    great introduction! Thank you 🙏

  • @philippederome2434
    @philippederome2434 5 ปีที่แล้ว +3

    10:34 it should read :set +t as opposed to +set :t

  • @silverlane9181
    @silverlane9181 7 ปีที่แล้ว +2

    "Pure Heaven" - I love it.

  • @adelarsq
    @adelarsq 8 ปีที่แล้ว +5

    so little time! give more! =)

  • @oanimashaun
    @oanimashaun 5 ปีที่แล้ว

    Good intro to Haskell.

  • @leonniceday6807
    @leonniceday6807 6 ปีที่แล้ว

    good teacher

  • @andrewgrishanov7453
    @andrewgrishanov7453 6 ปีที่แล้ว

    Very informative!

  • @wikopl
    @wikopl 6 ปีที่แล้ว +4

    Interesting though presentation time was not utilised properly. More advanced structures shown at glance only due to lack of time, which was wasted earlier.

  • @zdeezy420
    @zdeezy420 6 ปีที่แล้ว +3

    Exactly what kinda final product can u make? Like games websites etc?

    • @borekworek69
      @borekworek69 5 ปีที่แล้ว +1

      It's mainly used in pure algorithms

    • @dupersuper1000
      @dupersuper1000 5 ปีที่แล้ว +6

      You can do just about anything you want with Haskell. You could write games, web servers, desktop applications, etc. Games are difficult with pure functional languages, since you often need to compute values at a rapid rate, and if you can never mutate a reference, then you could end up with a very high memory allocation rate, and garbage collection could slow down your program. So you may have to do some nasty things like using mutable data structures, at least for performance-critical sections of the code.

  • @zdeezy420
    @zdeezy420 6 ปีที่แล้ว

    What can do to understand this?

  • @openroomxyz
    @openroomxyz 4 ปีที่แล้ว

    What confuses me is when i look something about Haskell or Lips i never see some real world Application, there is never a high end 3d game created with or some software for video processing. It seems very academic, this bothers me if is learning Haskell or Lisp a meaningful decision. Sure it good to learn new things, but saying it changes your way of thinking does not seem enough it’s non concrete will i make a game in one month instead of a year? Will i make projects that take a year in a month or less what kind of things.

    • @dougrudolph5400
      @dougrudolph5400 4 ปีที่แล้ว +3

      I have the same feeling with haskell, but I like to think the issue with the lack of flashy projects for haskell is a chicken and the egg problem. People are more inspired to use a tool if they can see interesting end results, but haskell is a big agenda language, and thus a lot of new big ideas will make you less productive while trying to build something. At the end of the day, a lot of small and big companies care most about productivity. Until haskell is more popular, that's just the way it's going to be. But I also like to think we are in a transition period in the programming language space. The up and coming big languages like rust and swift borrow a few big ideas from haskell, giving a wider audience access to these big haskell like concepts. It may take a few iterations of new programming languages for haskell to get popular, but I think large group of people will end up settling for a language like haskell once these programming language features become more main stream.
      Also to inspire you to pick up haskell - here are some cool projects:
      Animation library written in haskell: reanimate.github.io/
      A blog post about a game wirtten in haskell: jxv.io/blog/2018-02-28-A-Game-in-Haskell.html
      Tetris in haskell: github.com/hauxir/haskell-tetris
      3D graphics written in haskell: lambdacube3d.com/
      It's not that haskell cant do this stuff, it's just no one is doing it. Be the change you want to see! Cheers

    • @openroomxyz
      @openroomxyz 4 ปีที่แล้ว

      @@dougrudolph5400 Thanks a lot for this comment.

  • @d1namis
    @d1namis 8 ปีที่แล้ว +27

    This introduction make me feel like Haskell is evolution of Brainfuck.

  • @0xOrganix
    @0xOrganix 7 ปีที่แล้ว

    dammmed TY

  • @gavinschuette9826
    @gavinschuette9826 5 ปีที่แล้ว +1

    burn larry ellison for tax parsite regulation theft treason

  • @sharperguy7310
    @sharperguy7310 5 ปีที่แล้ว

    University of Glasgow whoop whoop

  • @mbaderoen
    @mbaderoen 7 ปีที่แล้ว +5

    *heavy breathing*

  • @gavinschuette9826
    @gavinschuette9826 5 ปีที่แล้ว

    cool langs are lisp prolog hakell smalltalk gnoga.com/ada forth occam-pi maybe ATS

  • @abdulqayyumhafiz
    @abdulqayyumhafiz 6 ปีที่แล้ว

    Looks like haskell is inspired from SQL?

    • @dougrudolph5400
      @dougrudolph5400 4 ปีที่แล้ว

      Funny enough, it's the opposite way around. Haskell is considered a general purpose programming language, while languages like SQL take a couple simple ideas from languages like Haskell to build these hyper focused language. Languages like SQL , ones that are designed to solve a very specific problem (such as getting data from a database), are called domain specific languages, or DSLs. The expressiveness that you see in both Haskell and SQL are used to build other DSLs like LINQ. LINQ is probably the most famous domain specific language outside SQL and built directly into C#. There is a great talk about building LINQ from Brian Beckmann and how it's built from concepts used in the haskell compiler. On top of this, Haskell is a great language to write DSLs and even large scale compilers due to exact thing you pointed out here

  • @gavinschuette9826
    @gavinschuette9826 5 ปีที่แล้ว +1

    www.happstack.com WIN trump2020!!

  • @bocckoka
    @bocckoka 7 ปีที่แล้ว +4

    parroting 'no side effects' is stupid. the type system ensures that side effects are handled properly at compile time.

  • @zauroa9904
    @zauroa9904 2 ปีที่แล้ว

    wort programming paradigm ever fonctional shall not exist its horribly hard got a F