Hacker News new | past | comments | ask | show | jobs | submit login
When Greedy Algorithms Are Good Enough (2014) (jeremykun.com)
106 points by ColinWright on Dec 23, 2015 | hide | past | web | favorite | 7 comments

Why do computer science papers need to dip down into mathematical notation to express ideas, instead of just using pseudocode, which is easier to understand ... and nearly as compact?

But someone's pseudocode is another's 'mathematical notation'. It comes down to familiarity and training. In fact Lisp was more a notation in its early life, then Steve Russel thought it would quite hilarious to use Lisp's own 'eval' to interpret itself. Great way to annoympress your PhD advisor.

I don't see how the math in this paper can easily be expressed as pseudocode. How would you express the first proposition?

F is submodular if F(intersection(A,B) + union(A,B)) <= F(A) + F(B)

And in this way we can actually cut and copy code into text boxes like this one. Whereas we can't with the math forumulas which use a bunch of notation that doesn't work in plaintext.

Also, most math notation uses a bunch of stuff that has no meaning without context (which isn't usually provided to novice readers).

I view math notation as artificial barriers to entry for programmers that didn't have a chance to go to university.

It might help to get the notation correct first. What you have is a type error :)

The fact that you are better trained in a language designed for computers than in a different language designed for humans is not a reason to scrap the language designed for humans. You wouldn't say the same thing about the article if it were written in French.

That "fix" sounds like it would hit a really narrow slice of people who know what intersection and union are but don't know the symbols.

Mostly convention, but also compromise. You may like:


Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact