all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Rustom Mody <rustompmody@gmail.com>
To: help-gnu-emacs@gnu.org
Subject: Re: Emacs history, and "Is Emacs difficult to learn?"
Date: Wed, 31 Jul 2013 12:20:28 -0700 (PDT)	[thread overview]
Message-ID: <f39aa3a5-44db-4b68-ae00-8a600a31e4bf@googlegroups.com> (raw)
In-Reply-To: <87iozqzjjq.fsf@VLAN-3434.student.uu.se>

On Wednesday, July 31, 2013 11:41:21 PM UTC+5:30, Emanuel Berg wrote:
> Again, I don't understand the "data" viewpoint. Data structures
> and algorithms are the same, or very close, in my mind. Lots of
> algorithms don't even work - and how could they? - if not for a
> specific data structure. (Is this what you mean by "data"?)

> SQL is respected. There is nothing wrong with VB, or VBA, as
> *languages* (they are just BASIC offshots like all the others),
> the problem are those disgusting IDEs, and especially the MS
> Access database wizards. From a theory standpoint, they are the
> opposite of MVC. From an emotional standpoint, they make me want
> to puke. I don't know anything about Cobol. C is highly respect in
> theory and practice, perhaps because of Unix, perhaps because it
> is so cool. C++ is far from as stable/gentlemanly as C, but it
> works, and is fast, with development, and with execution. It is
> the language that the man on the street *still* is (by far) most
> likely to associate with programming.

Well we see differently then.

C programmers think that C has data-structures though they dont think of an int or a char as a data structure.
In fact the opposite is the case: The only data structures C has are int and char (and scalars).  The rest are just storage structures.
Haskell (and from a certain pov lisp) are languages that actually have data structures.

Of course we use the same words and in different ways so heres a map:
What I call a data structure you would probably call a discrete math structure
What you call a data structure I call a pattern of memory layout in a von Neumann machine.

The reason to make this distinction. Consider this C type:
struct S {
  T x; 
  struct S *a, *b; 
}

Does this type represent a doubly linked list of Ts or a binary tree of Ts?

The fact that it could be both (or something still different) implies that C does not have the tools for building genuine data structures, just for memory layouting.

In 1991 I had collected up many such issues about how students brains are getting pickled by being brought up on C. 
[Here with some uptodating http://blog.languager.org/2013/02/c-in-education-and-software-engineering.html ]
It used to be widely cited at one time including the C edition of Code Complete and also some C++ books.


  parent reply	other threads:[~2013-07-31 19:20 UTC|newest]

Thread overview: 60+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-07-29 13:05 Emacs history, and "Is Emacs difficult to learn?" Emanuel Berg
2013-07-29 14:46 ` Jambunathan K
2013-07-30 10:10   ` Chris Van Dusen
     [not found]   ` <mailman.2115.1375179046.12400.help-gnu-emacs@gnu.org>
2013-07-30 22:09     ` Emanuel Berg
     [not found] ` <mailman.2028.1375109070.12400.help-gnu-emacs@gnu.org>
2013-07-29 15:37   ` Rustom Mody
2013-07-29 16:01     ` Phillip Lord
2013-07-30  6:27     ` Luca Ferrari
2013-07-30 15:22       ` Aurélien DESBRIÈRES
2013-07-30 15:31       ` Aurélien DESBRIÈRES
     [not found]       ` <mailman.2162.1375198972.12400.help-gnu-emacs@gnu.org>
2013-07-30 16:44         ` Rustom Mody
2013-07-30 18:08           ` Emanuel Berg
2013-07-30 18:01         ` Emanuel Berg
2013-07-30 11:38     ` Emanuel Berg
     [not found]     ` <mailman.2041.1375113728.12400.help-gnu-emacs@gnu.org>
2013-07-30 11:47       ` Emanuel Berg
     [not found]     ` <mailman.2077.1375165681.12400.help-gnu-emacs@gnu.org>
2013-07-30 11:56       ` Emanuel Berg
2013-07-29 19:38   ` Barry Margolin
2013-07-30 12:00     ` Emanuel Berg
2013-07-30 12:27       ` Rustom Mody
2013-07-30 14:59         ` Emanuel Berg
2013-07-30 15:08           ` Stefan Monnier
     [not found]           ` <mailman.2155.1375196921.12400.help-gnu-emacs@gnu.org>
2013-07-30 15:19             ` Emanuel Berg
2013-07-30 21:19               ` Barry Margolin
2013-07-30 21:33                 ` Emanuel Berg
2013-07-31  4:47                 ` Rustom Mody
2013-07-31  6:23                   ` Rustom Mody
2013-07-31 18:11                   ` Emanuel Berg
2013-07-31 19:19                     ` drain
2013-07-31 19:20                     ` Rustom Mody [this message]
2013-08-01 14:39                       ` Emanuel Berg
2013-08-01 15:21                         ` Rustom Mody
2013-08-01 15:27                           ` Emanuel Berg
2013-08-01 15:42                           ` Stefan Monnier
2013-08-01 16:18                           ` Drew Adams
     [not found]                           ` <mailman.2318.1375371796.12400.help-gnu-emacs@gnu.org>
2013-08-01 16:08                             ` Rustom Mody
2013-08-01 16:43                               ` Óscar Fuentes
2013-08-01 16:44                               ` Stefan Monnier
     [not found]                               ` <mailman.2323.1375375948.12400.help-gnu-emacs@gnu.org>
2013-08-01 20:48                                 ` Emanuel Berg
2013-08-03  1:01                                   ` drain
     [not found]                                   ` <mailman.2414.1375491715.12400.help-gnu-emacs@gnu.org>
2013-08-03 10:55                                     ` Emanuel Berg
2013-08-04 21:23                                       ` drain
     [not found]                                       ` <mailman.2487.1375651440.12400.help-gnu-emacs@gnu.org>
2013-08-05  8:36                                         ` LaTeX (was: Re: Emacs history, and "Is Emacs difficult to learn?") Emanuel Berg
2013-08-01 16:31                             ` Emacs history, and "Is Emacs difficult to learn?" Emanuel Berg
     [not found]                           ` <mailman.2321.1375374479.12400.help-gnu-emacs@gnu.org>
2013-08-01 16:33                             ` Barry Margolin
2013-08-01 17:52                               ` Rustom Mody
2013-08-01 16:41                             ` Emanuel Berg
     [not found]                     ` <mailman.2251.1375298397.12400.help-gnu-emacs@gnu.org>
2013-08-01 14:17                       ` Emanuel Berg
2013-08-01 15:19                         ` Luca Ferrari
2013-08-01 18:40                     ` Pascal J. Bourguignon
2013-08-01 20:28                       ` Emanuel Berg
2013-07-30 15:34           ` Phillip Lord
     [not found]           ` <mailman.2161.1375198462.12400.help-gnu-emacs@gnu.org>
2013-07-30 16:53             ` Rustom Mody
2013-07-31  0:49             ` Emanuel Berg
2013-07-31 12:10               ` Phillip Lord
2013-07-31 14:42                 ` Stefan Monnier
     [not found]               ` <mailman.2222.1375272627.12400.help-gnu-emacs@gnu.org>
2013-08-01  7:40                 ` R development environment Sebastien Vauban
2013-08-01 10:44                   ` Phillip Lord
2013-07-31  0:47           ` Emacs history, and "Is Emacs difficult to learn?" gottlieb
     [not found]           ` <mailman.2194.1375231670.12400.help-gnu-emacs@gnu.org>
2013-07-31  0:51             ` Emanuel Berg
2013-07-30 21:50         ` Emanuel Berg
2013-07-30 10:10   ` Emanuel Berg

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=f39aa3a5-44db-4b68-ae00-8a600a31e4bf@googlegroups.com \
    --to=rustompmody@gmail.com \
    --cc=help-gnu-emacs@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.