Live data from Hacker News

The Clean Language

clean.cs.ru.nl

1–10 of 48 posts

Re: The Clean Language

#3
Having never heard of this, I found the FAQ page an informative starting point.

https://clean.cs.ru.nl/FAQ

In simplistic terms, Clean seems to be a “better Haskell”.

Edit: I just downloaded the bundle tar, looked at some sources and found out that vim has syntax coloring for Clean out of the box. Vim never ceases to amaze me.

More Edit: Clean transpiles to C, which means that when you look at generated code, or just disassemble the resulting binary, you will probably be able to make sense of what you see. When I disassemble a Haskell binary, I can't make heads or tails of it.

Re: The Clean Language

#5
post #2

I never heard of Uniqueness type ( https://en.wikipedia.org/wiki/Uniqueness_type ). Anyone can simply explain pro/contro of this versus monads?

The IO monad (in Haskell) will always be the same, no matter how much I/O you perform. A unique File type, for instance, will be different before and after I/O, reflecting that side effects are not idempotent. In other words, a change in mutable state is reflected in a change of type.

Re: The Clean Language

#6
post #3

Having never heard of this, I found the FAQ page an informative starting point. https://clean.cs.ru.nl/FAQ In simplistic terms, Clean seems to be a “better Haskell”. Edit: I just downloaded the bundle tar, looked at some sources and found out that vim has syntax coloring for Clean out of the box. Vim never ceases to amaze me. More Edit: Clean transpiles to C, which means that when you look at generated code, or just…

Cool that you found this. I’m a student at this university and most alumni I’ve spoken say it is only used for research and a masters degree course course [1]. What’s interesting is that the bachelor course on functional programming gets thought in Haskell.

[1] https://sis.ru.nl/osiris-student/OnderwijsCatalogusSelect.do...

Re: The Clean Language

#7
With unique types and offering an alternative to monadic approach to pure functional programming, I always had an eye out for this language. I always found its syntax rather clean (no pun intended). Sadly there hasn't be much activity. or at least not much that could be discerned from its public facing website. I would love to see a revival in interest and development.

Re: The Clean Language

#8
post #3

Having never heard of this, I found the FAQ page an informative starting point. https://clean.cs.ru.nl/FAQ In simplistic terms, Clean seems to be a “better Haskell”. Edit: I just downloaded the bundle tar, looked at some sources and found out that vim has syntax coloring for Clean out of the box. Vim never ceases to amaze me. More Edit: Clean transpiles to C, which means that when you look at generated code, or just…

It's a pity this info is so hard to find. I had to click for a minute to find some example code, and thought: this is very much like Haskell.

I wonder how it's better than Haskell, why not Idris/Coq/Adga, and why not contribute to any of the just mentioned projects. This info, combined with some code and a description of the target audience of the project would be very helpful indeed.

Re: The Clean Language

#9
post #7

With unique types and offering an alternative to monadic approach to pure functional programming, I always had an eye out for this language. I always found its syntax rather clean (no pun intended). Sadly there hasn't be much activity. or at least not much that could be discerned from its public facing website. I would love to see a revival in interest and development.

I'd love to learn some about the "alternative to monadic approach to pure functional programming" but the project's website is utterly useless in helping me to find it.

Re: The Clean Language

#10
post #5
post #2

I never heard of Uniqueness type ( https://en.wikipedia.org/wiki/Uniqueness_type ). Anyone can simply explain pro/contro of this versus monads?

The IO monad (in Haskell) will always be the same, no matter how much I/O you perform. A unique File type, for instance, will be different before and after I/O, reflecting that side effects are not idempotent. In other words, a change in mutable state is reflected in a change of type.

I'd love to see an example of this (the wikipedia page is not very clear to me).

Is there a Clean or Idris program somewhere I can have a look at?

Post reply on HN