comp.lang.ada
 help / color / mirror / Atom feed
From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: "functional" programming in Ada
Date: Tue, 6 Mar 2018 17:37:55 +0100
Date: 2018-03-06T17:37:55+01:00	[thread overview]
Message-ID: <p7mg52$13d6$1@gioia.aioe.org> (raw)
In-Reply-To: p7mdu7$vit$1@gioia.aioe.org

On 06/03/2018 17:00, Manuel Collado wrote:
> El 06/03/2018 a las 16:08, Dmitry A. Kazakov escribió:
>> On 06/03/2018 15:35, Alejandro R. Mosteo wrote:
>>>
>>> Do you find something inherently wrong,
>>
>> Yes, both functional programming paradigm and ways to break out of it.
>> The latter is doubly wrong. If functional programming is so cool why
>> would anybody wrap procedural building blocks into functional ones?
>>
> 
> Well, it may sound a bit heterodox, but IMHO functional programming is 
> just a subset of imperative (= procedural) programming.
> 
> - Functional programming = expressions
> - Imperative programming = expressions + variables + procedural actions

Imperative is in opposition to declarative. Another axis is stateless 
vs. stateful. Procedural is usually attributed to the method of 
decomposition: procedural vs. object vs. functional vs. data/event 
driven etc.

Ada used to strictly separate imperative from declarative and took care 
about the states, especially about the correspondence between the 
program state and problem domain. Then Ada supported both procedural and 
object decomposition, even Ada 83 with its abstract data types.

-- 
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de

  reply	other threads:[~2018-03-06 16:37 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-03-06 11:34 "functional" programming in Ada Alejandro R. Mosteo
2018-03-06 13:09 ` Dmitry A. Kazakov
2018-03-06 14:35   ` Alejandro R. Mosteo
2018-03-06 15:08     ` Dmitry A. Kazakov
2018-03-06 16:00       ` Manuel Collado
2018-03-06 16:37         ` Dmitry A. Kazakov [this message]
2018-03-06 22:16           ` Manuel Collado
2018-03-07  8:41             ` Dmitry A. Kazakov
2018-03-07  4:46         ` Paul Rubin
2018-03-06 13:29 ` Mehdi Saada
2018-03-06 14:34   ` Alejandro R. Mosteo
2018-03-06 14:36     ` Mehdi Saada
2018-03-06 15:27       ` Alejandro R. Mosteo
2018-03-06 16:26       ` Jeffrey R. Carter
2018-03-06 20:17       ` Randy Brukardt
2018-03-07 14:30         ` Alejandro R. Mosteo
2018-03-06 15:01 ` Dan'l Miller
2018-03-06 15:25   ` Alejandro R. Mosteo
2018-03-07 10:07 ` Maciej Sobczak
2018-03-07 10:52   ` Mehdi Saada
2018-03-07 13:11     ` Pascal Obry
2018-03-07 13:53       ` Dmitry A. Kazakov
2018-03-07 16:13       ` Dan'l Miller
2018-03-12  0:13         ` Robert I. Eachus
2018-03-08  3:34       ` Randy Brukardt
2018-03-08  8:23         ` Dmitry A. Kazakov
2018-03-08 22:49           ` G. B.
2018-03-09  8:38             ` Dmitry A. Kazakov
2018-03-09  8:40           ` Simon Wright
2018-03-09 13:39             ` Dmitry A. Kazakov
2018-03-07 15:03   ` Alejandro R. Mosteo
2018-03-07 15:16     ` Alejandro R. Mosteo
2018-03-07 20:34     ` Robert A Duff
2018-03-07 22:47     ` Jeffrey R. Carter
2018-03-08  0:26     ` Shark8
2018-03-08  0:45     ` Paul Rubin
2018-03-08 11:07       ` Alejandro R. Mosteo
2018-03-08 18:24 ` G. B.
2018-03-09 14:41   ` Alejandro R. Mosteo
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox