
Programming Paradigms for Dummies: What Every Programmer Should Know - alrex021
http://lambda-the-ultimate.org/node/3465
======
alrex021
Named and Unnamed state.

 _"It seems that we need to have and not have named state at the same time.
How do we solve this dilemma? One solution is to concentrate the use of named
state in one part of the program and to avoid named state in the rest. The
bulk of the program is a pure function without named state. The rest of the
program is a state transformer: it calls the pure function to do the actual
work. This concentrates the named state in a small part of the program."_

This very closely resembles the philosophy behind Clojure.

------
DannoHung
This is Oz's set of primary datatypes: [http://www.mozart-
oz.org/documentation/tutorial/node3.html#l...](http://www.mozart-
oz.org/documentation/tutorial/node3.html#label14)

This is a god damned nightmare if you want to actually use the language. Why?
Because each of these types has separate methods and syntaxes that are used
for manipulation.

Go on, try to write something that is generic, I dare you.

Oz is, without a doubt, the best example of why you should not try to be
everything to everyone that I have ever seen.

------
pragmatic
Anyone used Mozart/Oz for anything?

This chapter is fascinating. Or rather has me fascinated with Oz. However, I
see that Mozart was last updated in 2008.

------
etherealG
what every programmer should know: publishing their works in a pdf will make
it hard for other programmers to read it.

~~~
vorador
Could you tell me why ? After all, pdf is an iso standard.

------
jasonkester
Mmm... Computer Science... 39 pages of things that have no bearing whatsoever
on what I do every day while building a startup.

Does anybody here really care about any of this stuff? I program computers for
a living, and I couldn't even muster the energy to page-down through that mess
of tables and graphs.

~~~
marshallp
Programming computers is about creating abstractions, if you ignored the
abstractions others have methodically thought out - well, then you'd still be
programming in assembly.

The author, peter van roy, has written a book, ctm, that many consider the
successor to sicp, and created a programming a programming language,
mozart/oz, that is the most advanced and well thought ever (it's descrined as
almost like magic on it's homepage).

~~~
jasonkester
Sure, but then most of Computer Science is common sense to anybody who's been
doing it since they were a kid. I'm perfectly happy not knowing the CS terms
for the things that I do or the design patterns that I use.

In 1995, I was asked in an interview what it meant to "deference" a pointer. I
hadn't the first clue what this guy was talking about, despite having 5 years
of self-taught C and C++ under my belt at that point, much of that time spent
deferencing away happily without a fancy term for it.

~~~
Hexstream
You sound mildly anti-intellectual. Also, it's called "dereferencing".

~~~
jasonkester
I hope not. I'm all about learning, provided it's useful and not just a bunch
of definitions for common knowledge.

And if I'm ever back in 1995, I'll ask that guy if that's what he meant by
"deferencing." :)

~~~
jerf
"I'm all about learning..."

... I just don't want other people to be doing it on my Internet, so I'm going
to complain when I see others doing it.

Seriously, what do you think you're adding to this conversation? That there
are people who think they don't need that there fancy book learnins' is not
news.

~~~
jasonkester
Yikes, why the attack? We're commenting on an article that somebody posted. I
found it boring and said as much. That's all that has transpired here.

~~~
derefr
I saw an article here a few months ago, about how there were three kinds of
people—people who weren't really "interested" in anything per se; people who
had one Thing that they spent all their time thinking about; and people who
were interested in _everything_ , and would readily consume information about
any topic. Entrepreneurs tend to be the third type; that is one of the main
reasons HN was renamed from its original title of "Startup News." (The term
"Hacker" is, in usage, 99% similar to "someone who wants to know everything
about everything, just for the sake of it.")

Basically, the community is trying to reject you—a person who has explicitly
stated that they are not of the third type—like a foreign body.

~~~
jasonkester
I agree with your 3 groups, but if you read my post history you'll see that
I'm firmly in the 3rd camp. Anything related to building and growing a tech
startup gets my full attention here.

As I stated in my first post on this thread, this article seems to not contain
anything of value to a person building and growing an entrepreneurial startup.
If I had to bet, it was the anti-anti-intellectual crowd doing the rejecting
here, on the assumption that I don't like knowledge.

~~~
derefr
Er, no—having dispersed interests _focused around a central subject_ , like
running a startup, is the _second_ group. The point is that the people in the
third group don't _care_ that "this article seems to not contain anything of
value to a person building and growing an entrepreneurial startup", because
startups are just one of their (unlimited) interests.

