all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Emanuel Berg <embe8573@student.uu.se>
To: help-gnu-emacs@gnu.org
Subject: Re: Emacs history, and "Is Emacs difficult to learn?"
Date: Thu, 01 Aug 2013 16:39:08 +0200	[thread overview]
Message-ID: <871u6dpjar.fsf@VLAN-3434.student.uu.se> (raw)
In-Reply-To: f39aa3a5-44db-4b68-ae00-8a600a31e4bf@googlegroups.com

Rustom Mody <rustompmody@gmail.com> writes:

> 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.

Are you saying: C doesn't have hash tables, search trees, etc.,
you have to make them yourself with data types and pointers, and
put them into structs, and then have the algorithm traverse them,
and all this you do manually, with no support from the language?

It doesn't surprise me one bit that Haskell has all that fancy
stuff, because Haskell is much, much more recent, and with a
strong (the strongest?) tilt towards university people (of CS
*and* math), while C is something that were/is very robust in
practice, and is "engineering" in nature (as opposed to
scientific).

Even their *names* illustrate this. C is C because its predecessor
was B. Haskell is Haskell because of a math (?) guy who did
function theory.

Haskell people have neurotic hangups how thing "should" be,
especially with respect to side-effect: they even separate the
"pure" (yuk) part of their programs, so it shouldn't intermingle
with all those toxic side-effects. C people are more like, if it
works, that's the definition of a good program.

But what about *Lisp*? Lisp has lists, obviously, which can be
made into association lists, and just about anything else. Is
there anything more that didn't meet my eyes?

Yes, a struct is just a memory pattern. You are saying, a Lisp
list isn't - is it moving around in memory, is it fragmented, or
is allocation made dynamically based on the elements? Is that the
difference? With pointers, isn't that what you get in C?  Please
explain.

-- 
Emanuel Berg - programmer (hire me! CV below)
computer projects: http://user.it.uu.se/~embe8573
internet activity: http://home.student.uu.se/embe8573


  reply	other threads:[~2013-08-01 14:39 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
2013-08-01 14:39                       ` Emanuel Berg [this message]
2013-08-01 15:21                         ` Rustom Mody
2013-08-01 15:27                           ` Emanuel Berg
2013-08-01 15:42                           ` Stefan Monnier
     [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
2013-08-01 16:18                           ` Drew Adams
     [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
2013-07-31  0:47           ` gottlieb
     [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
     [not found]           ` <mailman.2194.1375231670.12400.help-gnu-emacs@gnu.org>
2013-07-31  0:51             ` Emacs history, and "Is Emacs difficult to learn?" 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=871u6dpjar.fsf@VLAN-3434.student.uu.se \
    --to=embe8573@student.uu.se \
    --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.