Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.javascript > #16706
| Date | 2012-10-18 13:06 +0100 |
|---|---|
| From | Patricia Shanahan <pats@acm.org> |
| Newsgroups | comp.lang.javascript |
| Subject | Re: Programming style question |
| References | <r_WdnX50haYCLeLNnZ2dnUVZ_vGdnZ2d@earthlink.com> <1538954.egObkdgl4n@PointedEars.de> |
| Message-ID | <cfCdnQ0lM4FWbeLNnZ2dnUVZ_rmdnZ2d@earthlink.com> (permalink) |
Thomas 'PointedEars' Lahn wrote: > Patricia Shanahan wrote: > >> I've just started writing some of my production code, as distinct from >> throw-away tests and practice programs. I find myself writing in a style >> that would work in a strongly typed language. I know the intended type >> of each identifier, and find myself recording types in comments. > > Good idea. Consider using (some variant of) JSdoc (until something better > comes along). Yes, I've found JSdoc, and not yet found anything better, so I'm writing my comments in that format. I'm not sure which variant to use, but I will probably do several passes over my documentation anyway. > >> It is perhaps natural because I have been programming so long in >> more strongly typed languages. >> >> Is it a problem? > > With that "much" information, I have to say yes. The good news is that I do understand the problem of trying to program in language X as though it were language Y. People who do that end up programming in a very unsatisfactory language containing only the features that are in common to the two languages, and work the same way in both of them. > >> On the one hand, it makes for very organized code, with a lot of >> opportunities for adding type-checking assertions, generally a good >> thing. On the other hand, I may be missing out on opportunities to make >> my code simpler and a better fit for the language. >> >> Is it enough to be aware of the dynamic aspects of the language, and be >> prepared to use them when strong typing gets in the way? > > (see above) > > No. (However, contrary to common misconception, there are no "untyped > variables". Implementations of ECMAScript Ed. 1 to 3, 5, and 5.1 are > dynamically and weakly typed, not untyped. Uninitialized variables and > trailing parameters for which no argument has been passed, hold the > `undefined' value, the sole value of the Undefined type.) As I understand the issue, a variable always has a type, but that type can change on assignment. Similarly, the type of a formal parameter is determined by the type of the actual parameter in the call, or, as you say, the Undefined type if the call did not supply an actual parameter. This is obviously significantly different from having a type that is fixed at declaration, and I need to wrap my brain around the implications. Patricia
Back to comp.lang.javascript | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Programming style question Patricia Shanahan <pats@acm.org> - 2012-10-18 08:32 +0100
Re: Programming style question "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2012-10-18 10:23 +0200
Re: Programming style question Patricia Shanahan <pats@acm.org> - 2012-10-18 13:42 +0100
Re: Programming style question "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2012-10-18 17:59 +0200
Re: Programming style question Gene Wirchenko <genew@ocis.net> - 2012-10-18 09:56 -0700
Re: Programming style question "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2012-10-19 00:49 +0200
Re: Programming style question Gene Wirchenko <genew@ocis.net> - 2012-10-19 11:04 -0700
Re: Programming style question "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2012-10-20 11:52 +0200
Re: Programming style question Patricia Shanahan <pats@acm.org> - 2012-10-19 12:06 -0700
Re: Programming style question Tim Streater <timstreater@greenbee.net> - 2012-10-19 23:12 +0100
Re: Programming style question "Mel Smith" <med_cutout_syntel@aol.com> - 2012-10-19 21:56 -0600
Re: Programming style question Bart Van der Donck <bart@nijlen.com> - 2012-10-20 02:21 -0700
Re: Programming style question "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2012-10-20 12:03 +0200
Re: Programming style question Patricia Shanahan <pats@acm.org> - 2012-10-20 06:31 -0700
Re: Programming style question "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2012-10-20 18:30 +0200
Re: Programming style question Patricia Shanahan <pats@acm.org> - 2012-10-20 10:32 -0700
Re: Programming style question Tim Streater <timstreater@greenbee.net> - 2012-10-20 22:34 +0100
Re: Programming style question "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2012-10-21 10:12 +0200
Re: Programming style question Tim Streater <timstreater@greenbee.net> - 2012-10-21 09:34 +0100
Re: Programming style question Dr J R Stockton <reply1242@merlyn.demon.co.uk.invalid> - 2012-10-21 17:59 +0100
Re: Programming style question "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2012-10-22 09:55 +0200
Re: Programming style question Tim Streater <timstreater@greenbee.net> - 2012-10-22 09:50 +0100
Re: Programming style question Patricia Shanahan <pats@acm.org> - 2012-10-22 04:49 -0700
Re: Programming style question Tim Streater <timstreater@greenbee.net> - 2012-10-22 14:04 +0100
Re: Programming style question Hans-Georg Michna <hans-georgNoEmailPlease@michna.com> - 2012-10-22 16:07 +0200
Re: Programming style question Dr J R Stockton <reply1243@merlyn.demon.co.uk.invalid> - 2012-10-23 18:22 +0100
Re: Programming style question Hans-Georg Michna <hans-georgNoEmailPlease@michna.com> - 2012-10-22 16:01 +0200
Re: Programming style question Jim T. <x@y.z> - 2012-10-22 12:16 -0400
Re: Programming style question Patricia Shanahan <pats@acm.org> - 2012-10-22 11:40 -0700
Re: Programming style question Gene Wirchenko <genew@ocis.net> - 2012-10-22 14:01 -0700
Re: Programming style question Hans-Georg Michna <hans-georgNoEmailPlease@michna.com> - 2012-10-23 10:07 +0200
Re: Programming style question Gene Wirchenko <genew@ocis.net> - 2012-10-23 09:43 -0700
Re: Programming style question "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2012-10-23 11:49 +0200
Re: Programming style question Jim T. <x@y.z> - 2012-10-23 15:52 -0400
Re: Programming style question Patricia Shanahan <pats@acm.org> - 2012-10-23 13:07 -0700
Re: Programming style question "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2012-10-23 22:45 +0200
Re: Programming style question Gene Wirchenko <genew@ocis.net> - 2012-10-23 14:14 -0700
Re: Programming style question "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2012-10-24 09:35 +0200
Re: Programming style question Gene Wirchenko <genew@ocis.net> - 2012-10-24 10:17 -0700
Re: Programming style question Dr J R Stockton <reply1243@merlyn.demon.co.uk.invalid> - 2012-10-25 18:41 +0100
Re: Programming style question Patricia Shanahan <pats@acm.org> - 2012-10-25 17:03 -0700
Re: Programming style question Gene Wirchenko <genew@ocis.net> - 2012-10-25 20:14 -0700
Re: Programming style question Patricia Shanahan <pats@acm.org> - 2012-10-25 20:46 -0700
Re: Programming style question "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2012-10-26 09:55 +0200
Re: Programming style question Patricia Shanahan <pats@acm.org> - 2012-10-26 06:18 -0700
Re: Programming style question "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2012-10-26 17:43 +0200
Re: Programming style question Gene Wirchenko <genew@ocis.net> - 2012-10-26 09:57 -0700
Re: Programming style question Patricia Shanahan <pats@acm.org> - 2012-10-26 10:24 -0700
Re: Programming style question Gene Wirchenko <genew@ocis.net> - 2012-10-26 14:18 -0700
Re: Programming style question Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2012-10-27 10:45 +0200
Re: Programming style question "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2012-10-27 12:58 +0200
Re: Programming style question Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2012-10-27 16:18 +0200
Re: Programming style question "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2012-10-27 18:08 +0200
Re: Programming style question Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2012-10-27 18:26 +0200
Re: Programming style question "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2012-10-27 19:43 +0200
Re: Programming style question Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2012-10-27 21:09 +0200
Re: Programming style question "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2012-10-27 22:53 +0200
Re: Programming style question John G Harris <john@nospam.demon.co.uk> - 2012-10-28 11:37 +0000
Re: Programming style question Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2012-10-28 12:50 +0100
Re: Programming style question Martin Leese <please@see.Web.for.e-mail.INVALID> - 2012-10-28 13:43 -0600
Re: Programming style question "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2012-10-28 23:58 +0100
Re: Programming style question John G Harris <john@nospam.demon.co.uk> - 2012-10-29 11:18 +0000
Re: Programming style question Eric Bednarz <bednarz@fahr-zur-hoelle.org> - 2012-10-27 23:58 +0200
Re: Programming style question Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2012-10-28 12:43 +0100
Re: Programming style question Dr J R Stockton <reply1243@merlyn.demon.co.uk.invalid> - 2012-10-27 19:44 +0100
Re: Programming style question Patricia Shanahan <pats@acm.org> - 2012-10-24 12:06 -0700
Re: Programming style question Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2012-10-24 21:27 +0200
Re: Programming style question Gene Wirchenko <genew@ocis.net> - 2012-10-24 15:12 -0700
Re: Programming style question Tim Streater <timstreater@greenbee.net> - 2012-10-25 01:29 +0100
Re: Programming style question Stefan Weiss <krewecherl@gmail.com> - 2012-10-24 21:25 +0200
Re: Programming style question Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2012-10-24 21:57 +0200
Re: Programming style question Stefan Weiss <krewecherl@gmail.com> - 2012-10-25 01:11 +0200
Re: Programming style question Christoph Becker <cmbecker69@gmx.de> - 2012-10-25 02:00 +0200
Re: Programming style question Scott Sauyet <scott.sauyet@gmail.com> - 2012-10-24 20:27 -0700
Re: Programming style question Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2012-10-25 08:44 +0200
Re: Programming style question Adam Silver <adambsilver@gmail.com> - 2012-10-25 04:28 -0700
Re: Programming style question Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2012-10-25 23:18 +0200
Re: Programming style question Scott Sauyet <scott.sauyet@gmail.com> - 2012-10-26 08:24 -0700
Re: Programming style question Stefan Weiss <krewecherl@gmail.com> - 2012-11-07 22:13 +0100
Re: Programming style question Tim Streater <timstreater@greenbee.net> - 2012-11-07 21:51 +0000
Re: Programming style question Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2012-11-07 23:47 +0100
Re: Programming style question Stefan Weiss <krewecherl@gmail.com> - 2012-11-08 01:14 +0100
Re: Programming style question Gene Wirchenko <genew@ocis.net> - 2012-11-07 16:51 -0800
Re: Programming style question "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2012-11-08 16:45 +0100
Re: Programming style question Scott Sauyet <scott.sauyet@gmail.com> - 2012-11-08 08:02 -0800
Re: Programming style question "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2012-11-08 17:39 +0100
Re: Programming style question Gene Wirchenko <genew@ocis.net> - 2012-11-08 11:25 -0800
Re: Programming style question "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2012-11-08 22:25 +0100
Re: Programming style question John G Harris <john@nospam.demon.co.uk> - 2012-11-09 10:19 +0000
Re: Programming style question "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2012-11-09 17:41 +0100
Re: Programming style question Dr J R Stockton <reply1245@merlyn.demon.co.uk.invalid> - 2012-11-10 22:38 +0000
Re: Programming style question Scott Sauyet <scott.sauyet@gmail.com> - 2012-10-22 12:32 -0700
Re: Programming style question Hans-Georg Michna <hans-georgNoEmailPlease@michna.com> - 2012-10-23 10:05 +0200
Re: Programming style question Christoph Becker <cmbecker69@gmx.de> - 2012-10-22 22:11 +0200
Re: Programming style question Stefan Weiss <krewecherl@gmail.com> - 2012-10-23 02:42 +0200
Re: Programming style question Hans-Georg Michna <hans-georgNoEmailPlease@michna.com> - 2012-10-23 10:08 +0200
Re: Programming style question "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2012-10-20 18:34 +0200
Re: Programming style question Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2012-10-18 11:57 +0200
Re: Programming style question Patricia Shanahan <pats@acm.org> - 2012-10-18 13:06 +0100
Re: Programming style question "Jukka K. Korpela" <jkorpela@cs.tut.fi> - 2012-10-18 15:32 +0300
Re: Programming style question Patricia Shanahan <pats@acm.org> - 2012-10-18 13:37 +0100
Re: Programming style question "Jukka K. Korpela" <jkorpela@cs.tut.fi> - 2012-10-18 15:55 +0300
Re: Programming style question John G Harris <john@nospam.demon.co.uk> - 2012-10-19 10:12 +0100
Re: Programming style question Patricia Shanahan <pats@acm.org> - 2012-10-19 07:24 -0700
Re: Programming style question John G Harris <john@nospam.demon.co.uk> - 2012-10-20 17:47 +0100
Re: Programming style question Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2012-10-24 01:15 +0100
Re: Programming style question Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2012-10-24 01:31 +0100
Re: Programming style question "Jukka K. Korpela" <jkorpela@cs.tut.fi> - 2012-10-24 07:34 +0300
Re: Programming style question Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2012-10-24 19:57 +0200
Re: Programming style question "Jukka K. Korpela" <jkorpela@cs.tut.fi> - 2012-10-24 21:02 +0300
Re: Programming style question Patricia Shanahan <pats@acm.org> - 2012-10-18 20:15 -0700
Re: Programming style question Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2012-10-24 01:21 +0100
Re: Programming style question Scott Sauyet <scott.sauyet@gmail.com> - 2012-10-21 17:57 -0700
csiph-web