From: "Yannick Duchêne (Hibou57)" <yannick_duchene@yahoo.fr>
Subject: Re: Some exciting new trends in concurrency and software design
Date: Thu, 23 Jun 2011 12:57:49 +0200
Date: 2011-06-23T12:57:49+02:00 [thread overview]
Message-ID: <op.vxizencfule2fv@douda-yannick> (raw)
In-Reply-To: 1v2auyktde5q4.1wqpdg3fval5k.dlg@40tude.net
Le Thu, 23 Jun 2011 12:25:00 +0200, Dmitry A. Kazakov
<mailbox@dmitry-kazakov.de> a écrit:
> This is a weak argument. The strong one is that the mathematical numbers
> used in engineering are simply incomputable. The question is not
> efficiency
> ("how"), it is "if": you cannot represent numbers involved, e.g. real
> numbers. Engineering computations are on the model numbers, where range
> is
> just one constraint among others.
Was indeed what I wanted to mean (yes, even SML is not able to really
express the ideal nature of numbers, and nothing is able to).
> All programming is actually about constraints, which makes things so
> hard,
> mathematically, algorithmically and also in terms of types (e.g. LSP
> violation). Ignoring this does not help.
Ignoring things can help.
There is always some stage where you ignore some one of some other things.
This is an unavoidable part of a design or understanding process (either
with math or computation, this is true with both). The question is: how do
you forget less and less as the time go, and how do you ensure you do not
forget what is relevant for this and that (“this” and “that” don't occur
at the same time). That's why I underlined the matter of focus: Ada and
SML have different focus.
FP is less executable than Ada, so there are things you will less bother
with FP, you will be required to bother about with Ada. There may be
techniques to make FP more executable (I do not know enough about OCaml
compilers), but I believe FP is primarily a seed to derive from. If you
don't expect FP text to be a final release, you can drop some physical
matters at this stage. Let say, if you can execute it, that's for testing
and prove by execution, which make it more handy than maths.
Do you see what I mean ?
By the way, if you want to prove an Ada program, how do you do it, if not
by turning it into a view where it is all made of expressions (with
possibly multiple expressions at some point, for coverage) ? That's what
SPARK do so far. Yes, SPARK include Ada's type constraint in the proof
requirement, so that is not strictly comparable, but this is a matter of
stage and focus. Let say the functional view you get when proving an Ada
program with SPARK, is more frozen and narrowed than what an expression of
the same program would be with SML. And “frozen” and “narrowed” should not
occurs too much early (and can't occur early anyway), and even, you may
want to keep an hand or an eye on the non-frozen / non-narrowed view at
any time.
Do you feel the picture ?
--
“Syntactic sugar causes cancer of the semi-colons.” [Epigrams on
Programming — Alan J. — P. Yale University]
“Structured Programming supports the law of the excluded muddle.” [Idem]
Java: Write once, Never revisit
next prev parent reply other threads:[~2011-06-23 10:57 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-06-20 10:49 Some exciting new trends in concurrency and software design jonathan
2011-06-20 14:40 ` Georg Bauhaus
2011-06-20 14:48 ` Georg Bauhaus
2011-06-20 23:56 ` jonathan
2011-06-21 9:36 ` steveh44
2011-06-21 13:04 ` Phil Clayton
2011-06-22 0:37 ` Shark8
2011-06-22 9:45 ` anon
2011-06-29 21:39 ` Robert A Duff
2011-06-30 16:52 ` anon
2011-07-01 18:31 ` Shark8
2011-06-23 9:59 ` Yannick Duchêne (Hibou57)
2011-06-23 10:25 ` Dmitry A. Kazakov
2011-06-23 10:57 ` Yannick Duchêne (Hibou57) [this message]
2011-06-23 12:20 ` Dmitry A. Kazakov
2011-06-23 22:17 ` Georg Bauhaus
2011-06-24 1:26 ` Phil Clayton
2011-06-24 1:34 ` Yannick Duchêne (Hibou57)
2011-06-24 10:41 ` Georg Bauhaus
2011-06-24 1:27 ` Yannick Duchêne (Hibou57)
2011-06-24 10:32 ` Georg Bauhaus
2011-06-24 13:45 ` Yannick Duchêne (Hibou57)
2011-06-21 12:19 ` Dmitry A. Kazakov
2011-06-21 12:14 ` Phil Clayton
2011-06-22 8:39 ` Oliver Kleinke
2011-06-23 2:48 ` Nasser M. Abbasi
2011-06-23 9:23 ` Yannick Duchêne (Hibou57)
2011-06-23 10:03 ` Nasser M. Abbasi
2011-06-23 11:07 ` Yannick Duchêne (Hibou57)
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox