You are not logged in. Your edit will be placed in a queue until it is peer reviewed.
We welcome edits that make the post easier to understand and more valuable for readers. Because community members review edits, please try to make the post substantially better than how you found it, for example, by fixing grammar or adding additional resources and hyperlinks.
Required fields*
-
thx for nice explanation !!rahulaga-msft– rahulaga-msft2018-10-21 14:50:20 +00:00Commented Oct 21, 2018 at 14:50
-
1@RahulAgarwal You may find this answer interesting, it nicely captures a tangential concept of establishing truths vs. describing the steps. I also like the phrase "declarative languages contain side effects while imperative languages do not" - usually functional programs has clean and very visible cuts between the stateful code dealing with outside world (or executing some optimized algorithm) and purely functional code.Frax– Frax2018-10-25 22:00:46 +00:00Commented Oct 25, 2018 at 22:00
-
1@Frax : thanks !! I will look into it. Also recently came across Rich Hickey talk on Value of values It is really brilliant. I think one thumb rule - "work with values and expression rather than working with something holding value and can change"rahulaga-msft– rahulaga-msft2018-10-26 06:59:29 +00:00Commented Oct 26, 2018 at 6:59
-
1@Frax : Also it is fair to say that FP is an abstraction over imperative programming - because ultimately someone have to instruct machine on "how to do", right ? If yes, then isn't imperative programming have more low level control compared to FP ?rahulaga-msft– rahulaga-msft2018-10-27 13:36:56 +00:00Commented Oct 27, 2018 at 13:36
-
1@Frax: I would agree with Rahul that imperative is lower level in the sense that it is closer to the underlying machine. If hardware could make copies of data at no cost, we would not need destructive updates to improve efficiency. In this sense, the imperative paradigm is closer to the metal.Giorgio– Giorgio2018-10-29 06:51:09 +00:00Commented Oct 29, 2018 at 6:51
|
Show 4 more comments
How to Edit
- Correct minor typos or mistakes
- Clarify meaning without changing it
- Add related resources or links
- Always respect the author’s intent
- Don’t use edits to reply to the author
How to Format
-
create code fences with backticks ` or tildes ~
```
like so
``` -
add language identifier to highlight code
```python
def function(foo):
print(foo)
``` - put returns between paragraphs
- for linebreak add 2 spaces at end
- _italic_ or **bold**
- indent code by 4 spaces
- backtick escapes
`like _so_` - quote by placing > at start of line
- to make links (use https whenever possible)
<https://example.com>[example](https://example.com)<a href="https://example.com">example</a>
How to Tag
A tag is a keyword or label that categorizes your question with other, similar questions. Choose one or more (up to 5) tags that will help answerers to find and interpret your question.
- complete the sentence: my question is about...
- use tags that describe things or concepts that are essential, not incidental to your question
- favor using existing popular tags
- read the descriptions that appear below the tag
If your question is primarily about a topic for which you can't find a tag:
- combine multiple words into single-words with hyphens (e.g. design-patterns), up to a maximum of 35 characters
- creating new tags is a privilege; if you can't yet create a tag you need, then post this question without it, then ask the community to create it for you
lang-cs