Having done programming in the past, I can appreciate intuitively that the
mathematical properties of Joy and Factor are highly desirable.
I am having trouble defining precisely why, though.
I can imagine trying to convince a programming team and their managers to
implement their next project in Factor.
"Ok, gentlemen ... For the next project we are going to use a language,
that is based on another purely-functional-language, but with more features.
Both languages have a syntax similar to arithmetic in
Reverse-Polish-Notation."
"You can think of the language as the following ... "
[
There are three useful styles:
1. Imperative: programs are commands to modify the stack.
- e.g. "5" means: push the number 5 !
- e.g. "+" means: add the top two numbers !
2. Semantic: programs denote unary functions from stacks to stacks.
- e.g. "5" denotes the functions which yields a new stack with the
number 5 on top.
- e.g. "+" denotes the function which yields a new stack with the top
two numbers replaced by their sum.
3. Syntactic: programs are mere text to be evaluated by rewriting.
- e.g. "5" can be only be part of an expression to be rewritten
- e.g. "+" is used in rewriting, so "5 3 +" is rewritten "8"
] -- http://www.latrobe.edu.au/phimvt/joy/faq.html
"So, programmers, managers, what do you think?"
I can imagine that some teams would answer, "That is radical".
The resistance to anything resembling formal mathematics has a precedent.
http://www.cs.utexas.edu/~EWD/transcriptions/EWD10xx/EWD1036.html
I am trying to imagine how to convince a programming team that Factor is an
exceptional choice for a language.
I have convinced myself, but I am having trouble pinpointing how I would
convince others.
Any suggestions?
Cheers,
Leonard
------------------------------------------------------------------------------
RSA(R) Conference 2012
Save $700 by Nov 18
Register now
http://p.sf.net/sfu/rsa-sfdev2dev1
_______________________________________________
Factor-talk mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/factor-talk