News for hackers. Stuff that matters.

rusini

Syntax-wise, MANOOL is a homoiconic programming language. It has its advantages and drawbacks, as everything, but it is definitely not designed to cause first good impression to those who are not familiar with such concept (seen, e.g., in CommonLisp, Scheme, or Clojure, which are considered incomprehensible by some people).

But what do you think about the article idea itself (apart from the syntax matters as it is orthogonal anyway)?

Show HN: Manool v0.6 is Out

MANOOL is a dynamically typed homoiconic programming language with functional core and value (copy-on-write instead of reference) storage semantics.News:+ All values, regardless of type, are now totally ordered, which implies fewer arbitrary restrictions and more generality, useful to construct general caches, etc.+ Parallel `for`-loops can now iterate over views of different sizes, useful to...

( Read More... | no comments | on HN )
IMHO, the language size DOES matter and IS related to the language complexity and especially the syntax complexity. However, I believe many designers ARE aware of complexity issues and many languages turn into a mess only with time. BTW, I have designed a PL with a syntax, which is specifically designed to be not-prone to this syntax complexity problem as the language evolves.

There's also general philosophical advice that one should use the LEAST powerful tool for a task among all viable options. Many, especially newbie, developers just don't get it.

So, in general Wirth is right. But he is also known for oversimplifying his "50-page" language reports, and according to my experience, 50 pages is not sufficient to specify precisely even a small (but useful) PL. One such well-known lack of precision is nominal vs structural type equivalence in Pascal.

Re:Lisp-Flavored Programming Languages on Wednesday November 27, 2019 @09:23AM (#21648025)
I know :) And that's cool, and that property is the base of my own programming language. I am also trying right now to find some explanation why it's cool based on some fundamental conclusions from theoretic computer science...

I just feel that when someone says that Lisp does not have syntax or that syntax is not important, it's plain wrong...

Re:Lisp-Flavored Programming Languages on Tuesday November 26, 2019 @09:20PM (#21644752)
And even Scheme.
Re:Lisp-Flavored Programming Languages on Tuesday November 26, 2019 @09:17PM (#21644734)
The syntax of S-expressions is the syntax. It's a form to serialize trees (made out of pairs) and it is described by some grammar.
Re:Lisp-Flavored Programming Languages on Tuesday November 26, 2019 @09:06PM (#21644697)
I have designed a programming language that borrows an important part of its architecture from Lisp(s) (maybe mostly Scheme, but also Kernel: http://klisp.org). However, I have always opposed to the concrete syntax of S-expressions (being mostly unable to be productive with it).

My arguments are not on the familiarity side (with the infix notation), but on the psychological one:

1. S-expressions are not the most simple, natural, or uniform surface form (as they claim); they do have syntactic sugar (quote, even lists themselves!, etc.), so why not to add some more sugar (but sufficiently abstract of course)?

2. Humans' brain has limited "stack" space (especially when closing parentheses); infix forms may "cascade" and do not consume the stack (equally machine on human, due to possibility of "tail recursion")

3. Lack of diverse "visual clues" for humans (note how most natural languages have 40-60 phonemes, and none less than 15)

4. S-expressions and homoiconicity are related but orthogonal features (so the homoiconicity argument is often not valid)

Having that said, when I finally managed to write a working 50+-lines program in Scheme, with "proper" indentation, I was just proud of it, and I said, "Wow, it looks cool!". But I am still on the side of the above rational arguments! My point is that as my experiment demonstrates, it is probably too easy to get on an emotional side of computer-human interaction once you accomplished something a bit challenging (like speaking in classic S-expressions)?

Re:GitHub Archive Program on Wednesday November 13, 2019 @02:56PM (#21528730)
Wow, are we preparing for a global catastrophe?

Older »