Live data from Hacker News

Mirth – a type-safe concatenative purely functional programming language

github.com

51–60 of 76 posts

Re: Mirth – a type-safe concatenative purely functional programming language

#51

Earlier quoted context omitted.

Some examples here: https://twitter.com/afsofia_/status/1105913438650486784

I have no idea how to read or make sense of these definitions. I mean semantically and grammatically. What should I read if I want to understand those snippets and how/why they do define what an addition is?

The syntax is a bit peculiar, but they defined the union type Nat, defined the function + which takes two Nats and returns a Nat (which they defined in a thoroughly confusing point-free way because the language is concatenative), and demonstrated the associativity of +.

If you read any introduction to dependent types, they will do this.

Re: Mirth – a type-safe concatenative purely functional programming language

#52

But, but...when do you get to actually use all these awesome languages? > Forth, Haskell, Idris, Rust, Lisp. All great. I would do anything to find a shop that actually uses any one of these instead of the usual boring stuff. Seriously, how would one proceed to find such places?

A number of places use Haskell. There's a list at https://wiki.haskell.org/Haskell_in_industry.

Re: Mirth – a type-safe concatenative purely functional programming language

#53
post #50

Very random question. It’s the first I come across a concatenative programming language. Is SQL also concatenative in a way? I am thinking what you can do by chaining subqueries together for instance using “WITH”.

Not at all. "Concatenative"[1] is a property of a language syntax; broadly speaking, it holds that an arbitrary expression in the program text can be understood as a sequence of words, and any subsequence is in some sense meaningful; that is, the semantics of the expression as a whole is derived by "concatenating" the semantics of each word, and this semantic "concatenation" is consistent in that it can be used to provide a semantics to any subsequence.

[1] https://en.wikipedia.org/wiki/Concatenative_programming_lang...

This all works well for untyped languages (FORTH is untyped, as an example), but once you add in reasonably complex types you can't really use "sequences" alone, anymore; the directly comparable property is instead true of string diagrams. And once you add some more complexity, you even have to deal with, e.g. proof nets. There are ways to simplify textual syntaxes like e.g. typed lambda calculus along 'concatenative' lines, but mostly these are simple tweaks (De Bruijn notation, and/or De Bruijn indexes) that don't really create a "different" language.

Re: Mirth – a type-safe concatenative purely functional programming language

#54
post #37

Earlier quoted context omitted.

" Please don't post shallow dismissals, especially of other people's work. " https://news.ycombinator.com/newsguidelines.html

I know you are a gigantic egomaniac and I'm wasting my time writing this, but if you could ever repress your inflated sense of (mis)justice for two seconds, you might notice that the poster actually asked a perfectly valid question. With the context presented so far (zero, for those keeping score at home), there's no reason to assume that the poster is dismissive of the project being discussed. Why IS Mirth needed, w…

Insults like this are very annoying to read. If you think the moderation is too strict and is hurting HN's environment, then say that. There's no need to be so mean about it.

Re: Mirth – a type-safe concatenative purely functional programming language

#56

But, but...when do you get to actually use all these awesome languages? > Forth, Haskell, Idris, Rust, Lisp. All great. I would do anything to find a shop that actually uses any one of these instead of the usual boring stuff. Seriously, how would one proceed to find such places?

Academic research :)

And personal FOSS projects of course.

Re: Mirth – a type-safe concatenative purely functional programming language

#57

Earlier quoted context omitted.

I have no idea how to read or make sense of these definitions. I mean semantically and grammatically. What should I read if I want to understand those snippets and how/why they do define what an addition is?

The syntax is a bit peculiar, but they defined the union type Nat, defined the function + which takes two Nats and returns a Nat (which they defined in a thoroughly confusing point-free way because the language is concatenative), and demonstrated the associativity of +. If you read any introduction to dependent types, they will do this.

Ok, now I get it... I was just lost in the syntax.

Re: Mirth – a type-safe concatenative purely functional programming language

#58
post #37

Earlier quoted context omitted.

" Please don't post shallow dismissals, especially of other people's work. " https://news.ycombinator.com/newsguidelines.html

I know you are a gigantic egomaniac and I'm wasting my time writing this, but if you could ever repress your inflated sense of (mis)justice for two seconds, you might notice that the poster actually asked a perfectly valid question. With the context presented so far (zero, for those keeping score at home), there's no reason to assume that the poster is dismissive of the project being discussed. Why IS Mirth needed, w…

Wow.. and you don't feel like the comment you made is contributing to the problem?

If you want to live in a society where respect trickles up instead of violence trickling down then you mustn't express yourself with violence.

Re: Mirth – a type-safe concatenative purely functional programming language

#59
post #35

Earlier quoted context omitted.

LISP is a notable exception. Btw, I do believe a compiler should be one of the examples of a new language.

Are you saying that lisps are an exception to needing to see some small examples at first when looking at a new language? Why do you think they're an exception?

In LISP-like languages a compiler/interpeter is a simple example.

Re: Mirth – a type-safe concatenative purely functional programming language

#60
post #37

Earlier quoted context omitted.

" Please don't post shallow dismissals, especially of other people's work. " https://news.ycombinator.com/newsguidelines.html

I know you are a gigantic egomaniac and I'm wasting my time writing this, but if you could ever repress your inflated sense of (mis)justice for two seconds, you might notice that the poster actually asked a perfectly valid question. With the context presented so far (zero, for those keeping score at home), there's no reason to assume that the poster is dismissive of the project being discussed. Why IS Mirth needed, w…

>I know you are a gigantic egomaniac and I'm wasting my time writing this, but if you could ever repress your inflated sense of (mis)justice for two seconds, you might notice that the poster actually asked a perfectly valid question.

Also a perfectly trivial one, an insulting one, and one that has been asked countless times, and that has no real place in a post presenting a new language but goes to meta yak shaving philosophy.

(A question like "what are Mirths differentiating points, what new does it bring" would be an acceptable version -- but that wasn't what was asked).

Note that by starting with "I know you are a gigantic egomaniac" and "inflated sense" and "Thanks for making HN cancer", you already show that you don't have a valid contribution to the discussion either. It even seems like the content of the discussion was secondary, just needed to vent at someone...

Post reply on HN