|
RE: Automation vs. DSLs (was: Development: A Structure d Problem Area?): msg#00055programming.language-of-the-year
(1) SQL has been so remarkably successful with end users because A) its syntax creates mostly readable sentences. B) its primary metaphor of rows, tables and keys is consistent, pervasive and easily grasped. (2) Many people have difficulty with C because of A) difficulty remembering that arrays are 0-based and what the ternary operator means. B) a failure to grasp the nature of the relationships between arrays, pointers, variables and functions. (3) Many experienced C programmers continue to write procedural programs after switching to C++ A) they can't figure out what those angle brackets are doing outside an include statement. B) they haven't made the mental switch to the object paradigm. My point (if you've missed it) is that mastery of a programming language isn't about syntax. It's about internalizing the main metaphors of the language. The simple problem of this thread is that requirements are notoriously ambiguous; code cannot be. I think specifically the removal of that ambiguity is where much of our value as professionals lies. It resists automation, of course, because it is ambiguity. The argument then becomes is a two-step process (reqs->model->code) more valuable than a one-step process (reqs->code). Which, practice is more efficient, and is the 'model' and artifact of some business value? -----Original Message----- From: Gregg Irwin [mailto:greggirwin-mn4gwa5WIIQysxA8WJXlww@xxxxxxxxxxxxxxxx] Sent: Tuesday, June 22, 2004 4:42 PM To: Robert Watson Subject: [pragprog] Automation vs. DSLs (was: Development: A Structured Problem Area?) Programmer-ese isn't always easy to see, because we're steeped in it. The more "visible syntax" there is, the more the user has to remember, the harder it will be for them to use. e.g. which is best for an end user? set_customer_first_name cust "Robert" print (1, get_customer_first_name(cust)) customer.name.first = "Robert" lines(1).print customer.name.first customer's first name is Robert print customer's first name on line 1 A more declarative approach is often more natural for non-programmer's as well (IME). ============================================================================== This message is for the sole use of the intended recipient. If you received this message in error please delete it and notify us. If this message was misdirected, CSFB does not waive any confidentiality or privilege. CSFB retains and monitors electronic communications sent through its network. Instructions transmitted over this system are not binding on CSFB until they are confirmed by us. Message transmission is not guaranteed to be secure. ============================================================================== ------------------------ Yahoo! Groups Sponsor --------------------~--> Yahoo! Domains - Claim yours for only $14.70 http://us.click.yahoo.com/Z1wmxD/DREIAA/yQLSAA/nhFolB/TM --------------------------------------------------------------------~-> Yahoo! Groups Links <*> To visit your group on the web, go to: http://groups.yahoo.com/group/pragprog/ <*> To unsubscribe from this group, send an email to: pragprog-unsubscribe-hHKSG33TihhbjbujkaE4pw@xxxxxxxxxxxxxxxx <*> Your use of Yahoo! Groups is subject to: http://docs.yahoo.com/info/terms/ |
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| Previous by Date: | Automation vs. DSLs (was: Development: A Structured Problem Area?): 00055, Gregg Irwin |
|---|---|
| Next by Date: | Re: Re: Development: A Structured Problem Area?: 00055, Ron Jeffries |
| Previous by Thread: | Re: Digest Number 502i: 00055, K Pugh |
| Next by Thread: | Re: Automation vs. DSLs (was: Development: A Structure d Problem Area?): 00055, Ron Jeffries |
| Indexes: | [Date] [Thread] [Top] [All Lists] |
| News | FAQ | advertise |