Differences Between Hugs, Yhc and GHCi [closed] - haskell

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 4 years ago.
Improve this question
There are differences between Hugs, Yhc and GHCi? If there are differences, What are they?

Update: Hugs is unmaintained.
They are all just different implementations. I would try and explain the differences but this article does a much better job.

First: you want GHC/GHCi. And you want it via the Haskell Platform. Then, for more info on the other implementations of Haskell, read Bartek's link.

Usually people use Hugs for small, testing-type prototypes (analogously to how Ruby users would use irb and Python users would use the interpreter), but for actual shipping code, GHC is by far the most popular target (analogous to how Python users would compile import modules to cpython).
They're all pretty much standards-compliant, its a matter of speed of performance vs speed of compilation.
(Dunno much about Yhc)

These days people kind of converge to using GHC, as it's the de facto standard.

Hugs is a version of Haskell that started out on Linux and is therefore better optimised for it.

Related

Comparing Functional Reactive Programming packages in Haskell [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 6 years ago.
Improve this question
I am new to functional reactive programming and I would like to know how different packages compare in Haskell. They all seem to have slightly different approaches and I don't know enough to choose between them.
I also think that the available information for some of the packages is out of date. This previous Stack Overflow question recommends either netwire or reactive-banana but currently netwire won't install with stack because it depends on an out of date profunctors package.
So basically, for a beginner, how do the various FRP packages compare against each other? And which are best for GUI applications and which are best for simulation/game applications?
Thanks,
I found this link very helpful for comparing FRP libraries. It gives example code for a simple application written in each library.
https://github.com/gelisam/frp-zoo

Which library to use for cryptographic functions [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 6 years ago.
Improve this question
Note: this is not asking for a personal viewpoint on what is the better library, but rather what is the "safest" library or what is a good indication of a "safe" library.
I was looking for a Haskell library with AES256 encryption/decryption capabilities and found quite a few.
cryptocipher
cryptonite
AES
The problem is that most of these seem abandoned, except cryptonite who again seems like the least popular library (the one with the least amount of downloads).
I was wondering if using a library that seems outdated could be a problem (should I worry about possible security flaws, etc.) or if I should simply go with the one that seems most popular?
I'd definitely recommend cryptonite. It's a newer library consolidating a number of older libraries, and the ecosystem hasn't moved over yet.

Why use advanced compiler techniques over simple string manipulation in small compilers? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
What advantage is using (what I understand as) advanced compiler techniques like special grammar, AST, etc over simple string manipulation for making very small programming languages? I'm interested in compiler design and don't know wether I should learn all of this compiler theory if I'm only going to make small and simple languages. I know that as I start to make bigger languages I will probably have to use parser generators and the like, but until then should I bother?
You should definitely know what an AST is and how to build one. Even if you use parser generators later on. I mean, how can you be interested in compiler design but not in grammar and syntax trees? It always pays off to learn how stuff works under the hood, rather than taking it as magic.
And seriously, parsing anything else than Whitespace or Brainf*ck is awful with string manipulation as soon as it gets more complicated...

Possible optimizations in Haskell that are not yet implemented in GHC? [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 5 years ago.
Improve this question
So, purely functional languages have their own class of potentials due to the clear separation between pure and impure code. I have seen several features that are somewhat simpler to implement in Haskell like Nested Data Parallelism or Stream Fusion.
My question is, what are other improvements/optimizations that are more or less unique to Haskell in terms of feasibility/simplicity but not yet implemented? (I mostly care about GHC, but also love to hear about others)
One optimization I'd love to see in GHC is supercompilation. That seems unlikely in the near-future of GHC, though, because it's whole-program optimization, and GHC is very focused on module-at-a-time compilation.
Basically, supercompilation is executing as much of a program as possible at compile time. It naturally subsumes inlining, deforestation, specialization, and any number of other techniques. Early experimental results have been promising, but it's a very expensive process. It's hard to see it being a practical optimization, but the concept is ridiculously awesome.
Another issue that SPJ states in his paper on modular supercompilation is combining supercompilation with unboxing. Possibilities for unboxing in supercompiled program are significantly reduced. This causes decrease in performance in comparison with unoptimized program passed through GHC strict-analyser/unboxer. See http://research.microsoft.com/en-us/um/people/simonpj/papers/supercompilation/
Another powerful but also "not yet ready for production use" technique is worker-wrapper transformation.

What are some new and emerging programming languages [closed]

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 12 years ago.
Improve this question
What are some new and exciting programming languages? I have already looked at ruby and python. Are there any other languages out there
atomo - Erlang-style message passing on Haskell's runtime
ANI - dataflow programming
CoffeeScript - a "little language" that compiles to JavaScript
Go - Google's systems language
Clojure - Lisp on the JVM
F# - OCaml on CLR/.NET
Fantom.
Cross compiles to JVM, CLR, or JavaScript.
Optional dynamic typing.
Object Oriented / Functional Programming
Built-in Actor Model Concurrency
Built-in JSON serialization
Go, developed by Google, for one... :)
I have heard of F#. Don't know if it is exciting though.
Factor
io
(Both are, unlike the aforementioned Python and Ruby, inventions that were not created in a prior millennium. :-)
LOLCODE is pretty new.
I would put in there Silverlight, not a language but kinda new and kinda exciting. It is something to learn.
I think Mozilla's Rust will have good impact.
There is also Erlang. It's kinda old but its good.
R is great for statistics analysis.

Resources