Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
willtim
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
76 ms
·
931.
▲
by
willtim
10y ago
It's overly simplistic. For example, Haskell's do notation allows asynchronous programming in a linear "task list" (to use your phrase). Yet most popular imperative programming languages do not; one must instead use call
932.
▲
by
willtim
10y ago
I enjoy it so much I quit mainstream tech to do Haskell professionally 5 years ago.
933.
▲
by
willtim
10y ago
Will the singularity be happy that it's been written in Python?
934.
▲
by
willtim
10y ago
I use the odd simple flowchart for documentation, but it's not a concise notation. It has no agreed method for abstraction and composition, and generally does not scale.
935.
▲
by
willtim
10y ago
I saw a demo of VS code today, as a Haskell IDE. I was very impressed with what I saw.
936.
▲
by
willtim
10y ago
No C++ is to blame. This type of error could never happen in OCaml and Haskell.
937.
▲
by
willtim
10y ago
It's worth pointing out that the majority of large C++ projects contain non-deterministic memory management (reference counting) and cache-inefficient object structures like C#.
938.
▲
by
willtim
10y ago
Luckily there are some Blockchain/Crypto currency startups that do understand the value of using something like Haskell. See https://iohk.io/projects/cardano/
939.
▲
by
willtim
10y ago
NixOS is also a lightweight alternative to containers.
940.
▲
by
willtim
10y ago
If you're a developer, make sure you check out NixOS. The ability to install different versions/builds of libraries and packages side-by-side safely and without containers is a huge win. I typically pin my base system at a stable
941.
▲
by
willtim
10y ago
The complexity of many Haskell collection APIs is actually documented unlike with many other languages. These complexities are not changed by the runtime. Only constant factors and memory use are affected by optimisations and this is no
942.
▲
by
willtim
10y ago
Everything has a cost. As I said, frameworks do not compose and often fundamentally take away control. If you want to change the behaviour of your framework, you need to hope they have created the necessary callback interfaces.
943.
▲
by
willtim
10y ago
But as my example pointed out, expressiveness is often the difference between being able to understand something and not. Expressiveness permits better abstractions, better composition and better libraries, allowing cheaper and faster softw
944.
▲
by
willtim
10y ago
Frameworks do not compose. Libraries do. If you need a framework, your language has failed.
945.
▲
by
willtim
10y ago
No Java is simply not expressive enough, that's why so many frameworks exist. Adding Lambdas certainly helps, but you are missing out if you restrict yourself to Java. Let me give an example of how Java limits ones thinking. Look at th
946.
▲
by
willtim
10y ago
The presence of many of these frameworks, spring, AOP etc, is proof that many people do not find Java reasonable to work with. If Java was sufficiently expressive, you would need only libraries .
947.
▲
by
willtim
10y ago
Absolutely, just look at all the Hadoop users who don't really have big data.
948.
▲
by
willtim
10y ago
I'm not sure you can really separate the two. Sun pushed out the language and also helped develop much of the culture (enterprise beans, the pet shop example). Languages shape peoples thinking.
949.
▲
by
willtim
10y ago
If true, that would be to the detriment of our industry. The systems produced by that generation were typically simpler and more reliable than what we have now.
950.
▲
by
willtim
10y ago
They could have used "Scheme" with angled brackets instead of parens, which would have made it look much more like an extension of HTML.
951.
▲
by
willtim
10y ago
If you must write your HTML parser in C/C++, then you should expect buffer overruns.
952.
▲
by
willtim
10y ago
Having only a single port on one side is indeed a horrible idea; and the MacBook is in no way an entry-level machine (at well over a thousand dollars). Try and step out of the RDF.
953.
▲
by
willtim
10y ago
You have your personal annecdotes and I have my own. We will have to agree to disagree.
954.
▲
by
willtim
10y ago
It's been a few years since I last read this. Beautifully written, with great metaphors.
955.
▲
by
willtim
10y ago
You brought Haskell into the debate (along with many other topics) and I didn't get the impression it was in a positive light, hence my reply. There isn't really anything more to debate. Your position appears to be that such detai
956.
▲
by
willtim
10y ago
You sound very defeatist. There is world of difference between how much useful mathematics there is in Haskell compared to Python.
957.
▲
by
willtim
10y ago
I respectively disagree. I use types for rapid prototyping. Often I write out the type signatures first, type-check the high-level compositions and then fill in the implementations later.
958.
▲
by
willtim
10y ago
In practice I do not see it being any more "multi-paradigm" than e.g. Haskell is. It just conflates the imperative and declarative subsets, meaning that a lambda is not really a lambda etc
959.
▲
by
willtim
10y ago
I hope you are right. It's spreading all over the industry I work in and the schools want to teach it to my kids.
960.
▲
by
willtim
10y ago
In the UK, algebra is first introduced using the equality operator, often with pictures of weight scales and weights, which students are asked to balance. Then they are introduced to a concise notation for this, e.g.: 1 + x = 3 Simpl
More ›