See
[ Invitation to Contribute ]
below.
2009-11-19 Thu Nov 19 19:00 An old and powerful linguistic idea rediscovered
Here are a couple of independent papers both showing how to exploit a particular syntactic/semantic
trick that I exploited in the 1980's when design an ASCII-based language for logic and discrete
mathematics called PINAPL. In time it became the language (MATHS) I use for this blog and a large web sites.
I found it in "A Programming Language"
[ samples/languages.html#APL ]
in the 1960's and 70's. In essence, normal arithmetic operators can be used (in various syntactic forms) to
operate on vectors, lists, sets, and functions. The result is nearly a powerful generalization of normal algebra.
CookeRushton09
- Daniel E Cooke & J Nelson Rushton
- Taking Parnas's Principles to the Next Level: Declarative Design
- IEEE Computer Magazine V42n9(Sep 2009)pp56-63
- =ADVERT SequenceL FUNCTIONAL LANGUAGE SERIAL PARALLEL
- Rediscovers APL and Lucid.
- (dick)|-almost like executable MATHS.
For example, Σ( 1/((0..n)!) ) in MATHS looks like this
sum(1/fact( [0,...,N]))
in SequenceL.
- Compare
[Holmes09]
Holmes09a
- Neville Holmes
- Truth and Breadth, Clarity and Depth in Algebra
- IEEE Computer Magazine V42n11(Nov 2009)pp108+106-107
- =ADVERT Formulator FUNCTIONAL TOOL SERIAL PARALLEL
- Use APL/MATHS style operators to express complicated calculations in exact arithmetic.
- Compare
[CookeRushton09]
Invitation to Contribute
If you disagree with what I write.... click
[ contribute.html ]
and send me a comment.
If you have read something about software development that you think
was worth reading you can share it and earn a small piece of fame merely
by following this link
[ contribute.html ]
and filling in the form. I will review and post it if it
fits with the goals of this blog: The most practical theories and the
most sound practices associated with software development.
Contributors to this site
Dr. Christopher Landauer
[ samples/ada.syntax.html ]
Wednsday, November the 18th, 2009.
Katie Kline
[ info4.html ]
Monday October 12th 2009.
Jeff Hewitt
[ samples/people.html#Computer Science Associations ]
Alejandro
[ maths/blog.html#2009-01-31 Sat Jan 31 09:01 Thank you Alejandro ]
Joanna,
Emily Kovak
[ blog008.html#2008-12-22 Mon Dec 22 09:12 Contributions ]
[ maths/blog.html#Sonesh Rawat ]
Etc.
Previous Archived Blog Entries
(2009):
[ blog009.html ]
(Blog to December 2008):
[ blog008.html ]
(Blog to December 2007):
[ blog007.html ]
(Blog December 2006):
[ blog006.html ]
(Blog December 2005):
[ blog005.html ]
(Blog December 2004):
[ blog004.html ]
(Blog December 2003):
[ blog003.html ]
(Blog July 2003):
[ blog002.html ]
(Blog June 2003 and before):
[ blog001.html ]
Latest
[ blog.html ]
Glossary and Links
- above::=using the above statements....
- bibliography::= See http://cse.csusb.edu/dick/newbib.html,
(source
[ newbib.mth ]
)
a
large collection of publications on software development.
a place to search for data on my site. Now recovered from damage
done in the latter half of 2003.
- dick::=indicates my own opinion in and of a bibliographic item.
- given::=the data and input into a proof, construction or other thinking.
- goal::=the current conclusion, target or unknown of the thinking, construction, or proof.
- Haiku::poem="A 19 syllable Japanese poem that captures one moment but implies the universal",
All Haiku are supposed to indicate the season of the year and Japanese has many
words and phrase that are used for these purposes. Most Haiku also have a
caesura (pause) that is counted as a single syllable. Writing Haiku
in English is like trying to clap with one hand.
- languages::= See http://cse.csusb.edu/dick/samples/languages.html,
information on computer languages.
- latest::= See http://csci.csusb.edu/dick/blog.html,
- MATHS::= See http://csci.csusb.edu/dick/maths/,
a language for semiformal documentation including
ontologies, logics,
conceptual models, specifications, and algorithms
that I also use for weblogs, essays, lecture notes, etc. etc.
- methods::= See http://cse.csusb.edu/dick/samples/methods.html,
links and definitions about software development methods and processes,
plus some jokes. Also see
[ methods.glossary.html ]
instead.
- monograph::= See http://cse.csusb.edu/dick/monograph,
a study of software development methods 1940-1990 attempting
to show how simple mathematics can avoid common errors.
- papers::= See http://cse.csusb.edu/dick/papers,
pre-publication drafts, local seminars, unpublished essays, etc..
- people::= See http://cse.csusb.edu/dick/samples/people.html,
- prostate::gland=`a walnut sized gland found in human males that has cells
that have a tendency to turn cancerous as the male gets older`, see PSA.
[ http://www.healthopedia.com/prostate-cancer/ ]
(not checked for accuracy, includes adverts).
- PSA::blood test=Prostate Specific Antigen, the cells in the prostate
generate a particular chemical in the blood and this test measures
how much. High values (40+) show rapidly growing cancer. From my
experience -- values like 5, 6, and 7 are a cause for concern ..
but it all depends on age and whether heart disease or some other
problem will get you first. To get a score of zero (undetectable <0.01)
the cells must be gone or not growing.
- samples::= See http://cse.csusb.edu/dick/samples/, samples of documents prepared using
MATHS.
- se::= See http://cse.csusb.edu/dick/samples/se.html,
links to things about software engineering and software development.
- source::= See http://cse.csusb.edu/dick/blog.mth,
I use my own MATHS language to write these blogs.
- standards::= See http://cse.csusb.edu/dick/samples/standards.html,
- STANDARD::= See http://cse.csusb.edu/dick/maths/math_11_STANDARD.html,
my personal standard definitions for MATHS.
- subjects::= See http://cse.csusb.edu/dick/samples/subjects.html,
- tools::= See http://cse.csusb.edu/dick/samples/tools.html,
- vita::= See http://cse.csusb.edu/dick/VITAble.html,
[ short.vita ]
(plain text).
- XBNF::=eXtreme Bachus Naur Form, a metalanguage based on EBNF that
can handle some forms of context dependency in an intuitive way, as
part of the MATHS language.
- Z::= See http://cse.csusb.edu/dick/samples/z.html,
specification language.