I really, really want to get into Haskell and functional programming in general, but I have no idea what sort of project to build with it. Anyone have any good suggestion?
haskell can be used for pretty much everything (even hard realtime with a code generating dsl called atom), so just think about what you enjoy/like and maybe ask before for pointers to libraries you might use with that task.
if there is anything you like but is algorithmically challenging, all the better. it's very nice to express math in haskell.
If you ever wanted to know what a typical Haskell programmer sounds like, ^^this is it to a T.
No, typical Haskell programmers avoid talking about performance issues, because those highlight how awkward it is to write high- performance code.
that's just nonsense. there are many people very concerned about performance.
i guess you are right that some do not care about constant factors, but i am very sure most do care about algorithmic complexity. and thinking about it, that's the approach you should use for anything where every last bit of performance is not utterly needed.
I get paid to write C++ code. I'm pretty good at it. I understand it's normal usage syntax very well. I don't fucking know what a god damn thing means in Haskell. λ 5 + 7 12 :: Num a => a What the christ? The 12 I get. Got it. The colons? Not sure. I think it's just a dumb separator. Num is type! What the hell is a => a? I have no idea. In the top they have an example. primes = sieve[2..] where sieve (p:xs) = p : sie…
Honestly, we call them computer language for a reason, to a certain extent, you're saying you are very good at English but you can't for the life of you understand Japanese, all those weird symbols! Takes a while to be familiarized with a language and specially when the paradigm is completely different, not sure if it's a good or a bad thing (this paradigm change), but you'll have to make an initial effort, that's for sure.
Please note this homepage is NOT final and it's going to see revisions before we push it out to the actual website, including many tweaks to the content and probably some styling tweaks too. There are a lot of other things we still need to do as well, like ensure all redirects and subpages work properly. Source: I'm one of the Haskell.org administrators, and we pushed this out only today.
Can you please fix this markup? There should be a href on the tag.
The existing site is a pretty unappealing design and is extremely overcrowded; this has been complained about for years.
What's "unappealing" about the existing design? The existing design seems to do a good job of using the space available to convey a large amount of important and relevant information, with very little effort required from the viewer. For example, a viewer of the existing site can quickly get to various types of documentation right away, without having to click on a link to visit a dedicated "Documentation" page, like…
Upvoted you. Even I find the new design to be terrible. One more point - the old webpage seems to be "simple" HTML - which loads properly even in very bad internet connections and old browsers like Hacker News. The new design seems to include video links in the homepage, which is always a bad idea, however "modern" you want it to be.
Also, the old homepage immediately gives a sense that Haskell is mature - with separate links about the language, books, libraries, IDEs, etc. The new webpage does not convey anything at all.
Ugh, doesn't use progressive enhancement: https://en.wikipedia.org/wiki/Progressive_enhancement
How would the REPL look like with progressive enhancement?
"Thanks submitting a Haskell line! You're being redirected to the output of the evaluation. If you're not being redirected automatically, please click _here_"
I used to hate Haskell at University, until the final couple of weeks of the module when I started to "get" it. After that, exams and dissertation (which was in Python) got on top of me and I never revisited it. Now, coming back to it I am starting to remember the fun I had :)
I get paid to write C++ code. I'm pretty good at it. I understand it's normal usage syntax very well. I don't fucking know what a god damn thing means in Haskell. λ 5 + 7 12 :: Num a => a What the christ? The 12 I get. Got it. The colons? Not sure. I think it's just a dumb separator. Num is type! What the hell is a => a? I have no idea. In the top they have an example. primes = sieve[2..] where sieve (p:xs) = p : sie…
Ok I'll take a stab at a super high level crash course: A note! Haskell has weird syntax. But it actually uses this syntax in cool ways, as opposed to some languages that have weird syntax in an effort to be different. Let's consider the basic unit of Haskell programming -- the function! Here is a function which returns its input: f x = x Notice that there are no parens or types or anything. Since functions are used…
Best syntax explanation I've ever read. Awesome! You should write a book.
Could you suggest a simpler example? Finding primes is something that is taught in the first programming class in Indian high schools. I guess I've never thought of it as something hard. I looked at nodejs.org, and their first example is a web server! Python has the Fibonacci as it's second example (the first one show's numeric operations). Ruby does simple string operations on it's home page. While I think that is i…
Well, for one, it's a bad sieve algorithm. I think a neat algorithm to demonstrate laziness and Haskell clarity would be enumerating the Calkin-Wilf rationals. [0] It's quite a bit longer but demonstrates a number of neat ideas. I'll start first with a derivation which demonstrates all of the structure of the algorithm and then go through a series of mechanical transforms so that by the end I have a one-liner and a c…
I haven't digested it completely yet, but I suspect that the definition of `next` in `allRationals` is incorrect
next (a, b, c) = (a, f b, f c)
I can't find the declaration for `f` (probably go?)