[#27163] Statically linked extensions and deferred initialization. — Kent Dahl <kentda@...>

Hi.

12 messages 2001/12/01

[#27168] which editor is adviceful? — Niko Schwarz <niko.schwarz@...>

I know this always is the standard question for every language, but for

17 messages 2001/12/01

[#27191] OO AI — mentifex@... (Arthur T. Murray)

The road to supercomputer AI is paved with good inventions; visit

22 messages 2001/12/01

[#27265] John Roth dolt ( Re: A challenge to proponents of Unit Testing. ) — olczyk@... (Thaddeus L Olczyk)

Background.

166 messages 2001/12/02
[#27697] Re: John Roth dolt ( Re: A challenge to proponents of Unit Testing. ) — tadamsmar@... (Tom Adams) 2001/12/06

Ron Jeffries <ronjeffries@REMOVEacm.org> wrote in message news:<176717160028CE03.51B6AF6E20305FB5.2EC5DCFFD6C10DFD@lp.airnews.net>...

[#27958] Re: John Roth dolt ( Re: A challenge to proponents of Unit Testing. ) — "Robert C. Martin" <rmartin@...> 2001/12/08

On Sat, 08 Dec 2001 00:35:43 -0600, Robert C. Martin <rmartin @

[#27295] Re: John Roth dolt ( Re: A challenge to proponents of Unit Testing. ) — Ron Jeffries <ronjeffries@...> 2001/12/02

On Sat, 01 Dec 2001 13:46:42 GMT, olczyk@interaccess.com (Thaddeus L

[#28226] Re: John Roth dolt ( Re: A challenge to proponents of Unit Testing. ) — rbinder@... (Bob Binder) 2001/12/11

Keith Ray <k1e2i3t4h5r6a7y@1m2a3c4.5c6o7m> wrote in message news:<k1e2i3t4h5r6a7y-7C2620.18082110122001@news.attbi.com>...

[#27287] New RubyGarden Poll - this one affects us all :) — Dave Thomas <Dave@...>

38 messages 2001/12/02
[#27290] RE: New RubyGarden Poll - this one affects us all :) — "Mark Hahn" <mchahn@...> 2001/12/02

[#27482] Re: New RubyGarden Poll - this one affects us all :) — Darrin Thompson <dthompson@...> 2001/12/04

Paul Brannan wrote:

[#27488] Re: New RubyGarden Poll - this one affects us all :) — Michael Neumann <neumann@...> 2001/12/04

Darrin Thompson wrote:

[#27546] Re: New RubyGarden Poll - this one affects us all :) — Bob Hutchison <hutch@...> 2001/12/05

Hi everyone,

[#27552] Re: New RubyGarden Poll - this one affectsus all :) — "Bill Kelly" <billk@...> 2001/12/05

[#27553] Re: New RubyGarden Poll - this one affectsus all :) — David Alan Black <dblack@...> 2001/12/05

Hello --

[#27344] Programname in (un*x) top — kamphausen@... (SKa)

Dear Rubies,

25 messages 2001/12/03
[#27454] Re: Programname in (un*x) top — kamphausen@... (SKa) 2001/12/04

mark@wutka.com wrote in message news:<IsPO7.70773$8n4.4039369@e3500-atl1.usenetserver.com>...

[#27456] Re: Programname in (un*x) top — Martin Weber <Ephaeton@...> 2001/12/04

On Wed, Dec 05, 2001 at 01:03:17AM +0900, SKa wrote:

[#27369] Killer app for Ruby developers? — "Hal E. Fulton" <hal9000@...>

This is an idea that is very skeletal

17 messages 2001/12/03

[#27405] Sourceforge vs. Savannah — "Hal E. Fulton" <hal9000@...>

Opinion question(s).

16 messages 2001/12/04

[#27485] Package Naming — Dave Thomas <Dave@...>

69 messages 2001/12/04
[#27487] RE: Package Naming — "Mark Hahn" <mchahn@...> 2001/12/04

[#27501] RE: Package Naming — Sean Russell <ser@...> 2001/12/05

Mark Hahn wrote:

[#27506] Re: Package Naming — "Mark Hahn" <mchahn@...> 2001/12/05

[#27585] Re: Package Naming — "Mark Hahn" <mchahn@...> 2001/12/05

The forest service must be a hotbed for beauracracy. The only requirement

[#27587] Re: Package Naming — David Alan Black <dblack@...> 2001/12/05

Hello --

[#27588] Re: Package Naming — "Rich Kilmer" <rich@...> 2001/12/05

> -----Original Message-----

[#27589] Re: Package Naming — David Alan Black <dblack@...> 2001/12/05

Hi --

[#27591] Re: Package Naming — "Rich Kilmer" <rich@...> 2001/12/05

David...

[#27505] Do we need something like Python-URL? — ptkwt@...1.aracnet.com (Phil Tomson)

16 messages 2001/12/05

[#27647] web hosting — "ktethridge" <kevinethridge@...>

Does anyone know of a good hosting service that supports Ruby and MySQL?

18 messages 2001/12/06
[#27654] RE: web hosting — "Curt Hibbs" <curt@...> 2001/12/06

Kevin wrote:

[#27761] what are symbols good for???? — Markus Jais <info@...>

hello

13 messages 2001/12/06

[#27783] DBI and large result sets — " JamesBritt" <james@...>

I'm starting to use Ruby DBI, and I'm wondering about its use when processing

18 messages 2001/12/07
[#27805] Re: DBI and large result sets — Michael Neumann <neumann@...> 2001/12/07

JamesBritt wrote:

[#27829] Re: DBI and large result sets — "James Britt (rubydev)" <james@...> 2001/12/07

Thanks to those who helped clarify things.

[#27824] Perl/Python Module Porting — Joseph Erickson <jerickson@...>

Has there been any thought in the Ruby Community of actively porting

27 messages 2001/12/07
[#27834] Re: Perl/Python Module Porting — ptkwt@...1.aracnet.com (Phil Tomson) 2001/12/07

In article <B3265BDC-EB39-11D5-97BA-0050E4C58663@eyemg.com>,

[#27837] Perl/Python Module Porting — Eric Lee Green <eric@...> 2001/12/07

On Friday 07 December 2001 11:55 am, Phil Tomson wrote:

[#27895] Re: Perl/Python Module Porting — Mathieu Bouchard <matju@...> 2001/12/08

[#27894] Re: App server for Ruby? — Tobias DiPasquale <anany@...>

Todd Gillespie wrote

12 messages 2001/12/08

[#27897] Dictionary.com speeder upper — "Ralph Mason" <ralph.mason@...>

Here is a little script I did to make dictionary.com more useful for me.

15 messages 2001/12/08

[#27915] Ruby IDE?? What about using Eclipse?? — "Ross Shaw" <rshaw1961@...>

Eclipse (www.eclipse.org) is an open extensible IDE (written in Java) that

16 messages 2001/12/08
[#27916] Re: Ruby IDE?? What about using Eclipse?? — Robert Feldt <feldt@...> 2001/12/08

On Sat, 8 Dec 2001, Ross Shaw wrote:

[#27920] Re: Ruby IDE?? What about using Eclipse?? — "Curt Hibbs" <curt@...> 2001/12/08

I am going to do this.

[#27921] Re: Ruby IDE?? What about using Eclipse?? — Robert Feldt <feldt@...> 2001/12/08

On Sat, 8 Dec 2001, Curt Hibbs wrote:

[#27980] Displaying Ruby code in LaTeX — "Harry Ohlsen" <harryo@...>

Has anyone written a document in LaTeX that includes examples of Ruby

15 messages 2001/12/08

[#28052] How does puts decide how to print a given object? — "Harry Ohlsen" <harryo@...>

I'm writing a short tutorial introduction to Ruby for an upcoming uni

20 messages 2001/12/10
[#28062] Re: How does puts decide how to print a given object? — matz@... (Yukihiro Matsumoto) 2001/12/10

Hi,

[#28087] Re: How does puts decide how to print a given object? — David Alan Black <dblack@...> 2001/12/10

Hello --

[#28096] The benefits of dynamic typing? — Roy Patrick Tan <rtan@...>

I have just recently read an old paper by Wirth "On the Design of

59 messages 2001/12/10
[#28108] Re: The benefits of dynamic typing? — Robert Feldt <feldt@...> 2001/12/10

This is a bit long...

[#28147] Re: The benefits of dynamic typing? — "Harry Ohlsen" <harryo@...> 2001/12/10

In article <3C153282.9000309@vt.edu>, "Roy Patrick Tan" <rtan@vt.edu>

[#28150] Re: The benefits of dynamic typing? — "Mark Hahn" <mchahn@...> 2001/12/10

[#28115] Ruby for Mac OS X — "Dan Hable" <DHable@...>

Hi,

18 messages 2001/12/10
[#28119] Re: Ruby for Mac OS X — Luc Heinrich <lucsky@...> 2001/12/10

On 10/12/2001 19:05, "Dan Hable" <DHable@phmining.com> wrote:

[#28885] Re: Ruby for Mac OS X — John Beppu <beppu@...9.org> 2001/12/18

[ date ] 2001/12/11 | Tuesday | 03:23 AM

[#28179] Ruby Musings — "John Kaurin" <jkaurin@...>

Ruby Musings (IMHO):

18 messages 2001/12/11

[#28272] Survey for new Rubyists — ptkwt@...1.aracnet.com (Phil Tomson)

23 messages 2001/12/11

[#28307] Reviews solicited for Ruby article — "Harry Ohlsen" <harryo@...>

I'm in the process of writing an article on Ruby for a computer science students'

17 messages 2001/12/12

[#28308] Rendering UML diagrams? — Robert Feldt <feldt@...>

Hi,

14 messages 2001/12/12

[#28495] internal server errors — Jack Dempsey <dempsejn@...>

hi all,

15 messages 2001/12/14

[#28500] A Review of "Ruby in a Nutshell" book — Johan Holmberg <holmberg@...>

27 messages 2001/12/14

[#28552] help with ^M (line endings ) removing — Dinakar Desai <Desai.Dinakar@...>

Hello:

12 messages 2001/12/14

[#28655] RDoc - Document Ruby source files — Dave Thomas <Dave@...>

25 messages 2001/12/16
[#28768] Re: RDoc - Document Ruby source files — Dave Thomas <Dave@...> 2001/12/17

Alexander Bokovoy <a.bokovoy@sam-solutions.net> writes:

[#28769] Re: RDoc - Document Ruby source files — Alexander Bokovoy <a.bokovoy@...> 2001/12/17

On Mon, Dec 17, 2001 at 11:19:11PM +0900, Dave Thomas wrote:

[#28789] Re: RDoc - Document Ruby source files — "Christian Boos" <cboos@...> 2001/12/17

[#28676] How do you do "character filtering" of a string using each_byte. — olczyk@... (Thaddeus L. Olczyk)

I'm trying to do several things where I produce new strings from old

10 messages 2001/12/16

[#28722] stderr from external process? — "MikkelFJ" <mikkelj-anti-spam@...1.dknet.dk>

I have asked this question before - maybe it is just not possible:

75 messages 2001/12/17
[#28923] Re: stderr from external process? — "MikkelFJ" <mikkelj-anti-spam@...1.dknet.dk> 2001/12/19

[#28960] RE: Ruby 'make' replacement (Re: stderr from external process?) — "Christian Boos" <cboos@...> 2001/12/19

Hello,

[#29094] Re: Ruby 'make' replacement (Re: stderr from external process?) — "Jason Horman" <jason@...> 2001/12/20

I wrote the Torrent library. I was not sure what license to pick so I picked

[#29096] Re: Ruby 'make' replacement (Re: stderr from external process?) — Robert Feldt <feldt@...> 2001/12/20

Just a thought on this thread (it might be obvious, I just want it to be

[#29117] Re: Ruby 'make' replacement (Re: stderr from external process?) — Dave Thomas <Dave@...> 2001/12/20

"MikkelFJ" <mikkelj-anti-spam@post1.dknet.dk> writes:

[#29156] Programming Ruby — "Marcio Barbosa" <argaeus@...> 2001/12/20

Hi,

[#28737] [Announcement] Ruby news weekly — Holden Glova <dsafari@...>

-----BEGIN PGP SIGNED MESSAGE-----

30 messages 2001/12/17

[#28749] Constant loss of memory with Kernel::load in a loop — "Jens Nissen" <frodo.hobbit@...>

We have developed a wonderful application under Windows 2K using Ruby 1.6.5

31 messages 2001/12/17
[#28755] Re: Constant loss of memory with Kernel::load in a loop — nobu.nokada@... 2001/12/17

At Mon, 17 Dec 2001 19:36:42 +0900,

[#28760] Re: Constant loss of memory with Kernel::load in a loop — ts <decoux@...> 2001/12/17

>>>>> "n" == nobu nokada <nobu.nokada@softhome.net> writes:

[#28774] Re: Constant loss of memory with Kernel::load in a loop — nobu.nokada@... 2001/12/17

At Mon, 17 Dec 2001 22:06:31 +0900,

[#28782] Re: Constant loss of memory with Kernel::load in a loop — ts <decoux@...> 2001/12/17

>>>>> "n" == nobu nokada <nobu.nokada@softhome.net> writes:

[#28803] Re: Constant loss of memory with Kernel::load in a loop — nobu.nokada@... 2001/12/17

At Mon, 17 Dec 2001 23:59:17 +0900,

[#29128] Re: Constant loss of memory with Kernel::load in a loop — matz@... (Yukihiro Matsumoto) 2001/12/20

Hi,

[#28855] [IDEA] creating stand-alone versions for easy distribution etc — Patrik Sundberg <ps@...>

hi list,

10 messages 2001/12/18
[#28856] Re: [IDEA] creating stand-alone versions for easy distribution etc — Robert Feldt <feldt@...> 2001/12/18

On Tue, 18 Dec 2001, Patrik Sundberg wrote:

[#28875] C++ preincrement operator — Paul Brannan <paul@...>

In Ruby, if I do this:

17 messages 2001/12/18
[#28876] Re: C++ preincrement operator — Peter Hickman <peter@...> 2001/12/18

Paul Brannan wrote:

[#28878] Re: C++ preincrement operator — Paul Brannan <paul@...> 2001/12/18

On Wed, Dec 19, 2001 at 02:09:03AM +0900, Peter Hickman wrote:

[#28879] Re: C++ preincrement operator — "Jack Dempsey" <dempsejn@...> 2001/12/18

so basically you're suggesting that any amount of stacking -'s or +'s past

[#28911] A Ruby programmer walked into a bar ... — "Harry Ohlsen" <harryo@...>

Now that I have your attention :-) ...

29 messages 2001/12/19
[#28985] Re: A Ruby programmer walked into a bar and ordered a Ruby-Thread — Luc Heinrich <lucsky@...> 2001/12/19

On 19/12/2001 15:46, "Harry Ohlsen" <harryo@zip.com.au> wrote:

[#29036] Re: A Ruby programmer walked into a bar and ordered a Ruby-Thread — HarryO <harryo@...> 2001/12/19

On Thu, 20 Dec 2001 07:58:47 +1100, Dave Thomas wrote:

[#29038] Re: A Ruby programmer walked into a bar and ordered a Ruby-Thread — "Mark Hahn" <mchahn@...> 2001/12/20

[#29046] Re: A Ruby programmer walked into a bar and ordered a Ruby-Thread — Dave Thomas <Dave@...> 2001/12/20

"Mark Hahn" <mchahn@facelink.com> writes:

[#28926] Stream? — Ron Jeffries <ronjeffries@...>

Is there a memory stream object in Ruby, analogous to Smalltalk's

14 messages 2001/12/19

[#28977] overriding methods: (almost) a replacement for alias_method — Paul Brannan <paul@...>

I think almost all of us will agree that it's pretty ugly to do:

17 messages 2001/12/19

[#29014] But is it Fun? — edwardhatfield1@... (Edward Hatfield)

I've been watching Ruby with great interest over

19 messages 2001/12/19

[#29265] upper case to lower — "Bashar A. Asad" <baasad@...>

hello,

25 messages 2001/12/21

[#29296] XEmacs problems with ruby-mode.el

Hi,

17 messages 2001/12/22

[#29327] a better way? — Ron Jeffries <ronjeffries@...>

I was writing a little code that cached a function value, and wound up

38 messages 2001/12/23
[#29328] Re: a better way? — David Alan Black <dblack@...> 2001/12/23

Hi --

[#29331] Re: a better way? — "Hal E. Fulton" <hal9000@...> 2001/12/23

----- Original Message -----

[#29488] Python and Ruby: a comparison — Ron Stephens <rdsteph@...>

I initiated a thread over on comp.lang.python which has turned into

68 messages 2001/12/27
[#29677] Re: Python and Ruby: a comparison — Ron Stephens <rdsteph@...> 2001/12/30

Very interesting idea. Unfortunately, I doubt if it woudl be possible. For one

[#29696] Re: Python and Ruby: a comparison — "Conrad Schneiker" <schneiker@...> 2001/12/30

"Ron Stephens" <rdsteph@earthlink.net> wrote:

[#29869] Re: Python and Ruby: a comparison — Michael Kelly <mkelly2002NOSPAM@...> 2001/12/31

On Mon, 31 Dec 2001 12:26:46 +1100, Michael Lucas-Smith >Check out

[#29871] Re: Python and Ruby: a comparison — Dan Sugalski <dan@...> 2001/12/31

At 02:02 AM 1/1/2002 +0900, Michael Kelly wrote:

[#29541] New Rubygarden poll — Dave Thomas <Dave@...>

27 messages 2001/12/28

[#29545] RDoc now displays source — Dave Thomas <Dave@...>

17 messages 2001/12/28

[#29596] extending method of class A to support arguments of class B by promoting `self' to class B — Tomasz Wegrzanowski <taw@...>

(Names of classes chosen arbitrarily, just to show issue)

18 messages 2001/12/28

[#29613] Extending Ruby on Windows platform using VC++ IDE — "Alan Moyer" <moyer4@...>

Hi,

11 messages 2001/12/29

[#29667] Yet Another Newbie — Michael Kelly <mkelly2002NOSPAM@...>

Yet Another Newbie. :)

13 messages 2001/12/29

[#29713] Ruby parsers in Ruby — ptkwt@...1.aracnet.com (Phil Tomson)

Wouldn't it be cool to have Ruby playing with Parrot before Python or even

20 messages 2001/12/30

[#29773] Proc.class vs yield — Michael Lucas-Smith <s3225202@...>

Hi,

49 messages 2001/12/31
[#29782] Re: Proc.class vs yield — David Alan Black <dblack@...> 2001/12/31

Hello --

[#29795] Re: Proc.class vs yield — Michael Lucas-Smith <s3225202@...> 2001/12/31

def someThing (&a, &b)

[#29796] Re: Proc.class vs yield — David Alan Black <dblack@...> 2001/12/31

Hi --

[#29797] Re: Proc.class vs yield — Michael Lucas-Smith <s3225202@...> 2001/12/31

>

[#29802] Re: Proc.class vs yield — David Alan Black <dblack@...> 2001/12/31

Hi --

[#29849] Re: Proc.class vs yield — Michael Lucas-Smith <s3225202@...> 2001/12/31

That's a good solution, thanks.

[#29867] Re: Proc.class vs yield — David Alan Black <dblack@...> 2001/12/31

Hi --

[#29798] FXRuby FreeRIDE Spike uploaded. — Phlip <phlip_cpp@...>

Rubies:

14 messages 2001/12/31

[#29886] Ruby/Python: Software Engineering — noone <nanotech@...>

All:

36 messages 2001/12/31
[#29889] Re: Ruby/Python: Software Engineering — Tomasz Wegrzanowski <taw@...> 2001/12/31

On Tue, Jan 01, 2002 at 05:03:35AM +0900, noone wrote:

[#29904] Re: Ruby/Python: Software Engineering — noone <nanotech@...> 2001/12/31

Tomasz/All:

[#29887] RE: Ruby multi-dimensional Hash question?---Any one out there willing to give this questions a try? — "Crandall, Jeff W" <jeff.w.crandall@...>

Anyone? Is this the correct mailing list to try and get

18 messages 2001/12/31

[#29895] How to check free diskspace? — Le Wang <lewang@?.?.bigfoot.com (nospam)>

Hi all,

23 messages 2001/12/31

[ruby-talk:28134] Re: The benefits of dynamic typing?

From: ptkwt@...1.aracnet.com (Phil Tomson)
Date: 2001-12-10 20:20:17 UTC
List: ruby-talk #28134
In article <Pine.GSO.4.21.0112101819120.2422-100000@godzilla.ce.chalmers.se>,
Robert Feldt  <feldt@ce.chalmers.se> wrote:
>This is a bit long...
>
>On Tue, 11 Dec 2001, Roy Patrick Tan wrote:
>
>> I have just recently read an old paper by Wirth "On the Design of
>> Programming Languages", which started me thinking about dynamic typing.
>> 
>> One of the lessons he enumerated:
>> 
>> "Design languages such that most checking operations can be performed at
>> compile time, and need not be deferred until execution. The concept of
>> static data types of variables is essential in this respect, and enhance
>> both programming security and system efficiency."
>> 
>> Hoare also has similar comments about static typing.
>> 
>> Now, given that ruby is interpreted, much of the efficiency and type 
>> safety aspect might not matter (though, if/when it gets bytecode 
>> compiled, I can see that static typing can improve both).
>> 
>> However, it seems that dynamic types can be more error prone and harder
>> to read, since we can't be sure what type of object a variable holds. I
>> guess what I'm asking is: given the advantages of a statically typed
>> language, does dynamic typing offer any benefits? What is the reason
>> behind ruby's dynamically typed variables?
>> 
>IMHO, there is no simple answer to this and its more of an open research
>question than an established fact. Although dynamic typing has been around
>for quite a while humanity as a whole has lots more experience with
>using statically or type inferring languages. So the verdict is not yet
>out there on the relative merits of dynamic and static typing. 
>
>(IMO, the final answer will probably be, as it often is in complex
>questions, "it depends". And a hybrid solution where you can adapt to the 
>problem at hand will have the highest probablity of success.)
>
>I'm very interested in this questions so have collected some different
>views. Below are some of them. Sorry that they are redundant and not
>summarized. Beware of the line wrap.
>
>* Classic-formal-methods-safety-critical view:
>    * We must be sure the program works, so we need to prove it. Types are
>      fundamental aspects of programming languages and type errors are
>common.
>      With static types we can prove there will be no type errors so one
>      source of errors is eliminated. Fine, lets do it.
>
>* Pragmatic-static-typing view:
>    * Having the types explicitly stated in the code makes it easier to
>read.
>      Readability is a crucial aspect in determining the cost of code
>since
>      it determines maintainability. So lets type!
>
>    CP = Counterpoint: Can't this be solved with comments or some other
>      type annotation scheme.
>
>* Modern-dynlang view:
>    * Not having to specify types makes me go faster. Its more flexible
>      and I can more easily change things as I go along. The flexibility
>      and increased speed pays back by making me develop the right product
>      with a higher productivity.
>
>* "Based on my considerable experience" view:
>    * In practice, type errors are not very common and their effect not
>very 
>      severe. Since specifying types gets in the way lets not do it.
>
>* Xp/Executable-tests view:
>    * Type checking is only one aspect of testing your code. Executable
>unit
>      tests allow you to test more than the typing of your program.
>
>* Multi-method dispatch view:
>    * With multi-methods you can dispatch on more than one type. So even
>      though the typing is not static (the dispatch is still based on
>dynamic
>      type info) you can be sure your method will not be called with
>objects
>      that aren't of class/type X or fulfill the interface I.
>
>* Efficient-dynlang-implementer view:
>    * DynTypes are great but cost a lot since we cannot optimize for a
>      certain type. To make the task of the compiler/optimizer simpler we
>      need hints of the actual types. Lets give the user a way to 
>      specify/hint on the actual types. (Dylan has this feature for
>example)
>
>* "Statically typed languages aren't typed anyway!" view:
>    * Precise type information is lost when objects are fed through more 
>      generic structures.
>    * Since we want to write generic data structures etc even in
>statically
>      typed languages we need to work around the type system or invent
>      special handling (templates in C++). In Java and C you frequently
>need
>      to type cast so they're not really statically typed and its not
>safe.
>
>* Smalltalk view:
>
>(http://wiki.cs.uiuc.edu/VisualWorks/Mark+Fussell+Dynamic-vs-Static+Typing+Message)
>    * "Types have poor granularity. Frequently a Type will be specified
>that has too many operations (is too specific) to be useful in multiple
>contexts even though subsets of those operations (a more general
>concept) is widely useful. Since it costs effort to name and create each
>Type, there is an impetus of reduction that again impedes reuse and
>generalization. Save now, pay later."
>    * "Types restrict future type-safe expansion to programs. Some
>programs that could have been written type-correctly if done in one
>"lump" are impossible to write given the actual historical growth of a
>program (many people, different companies, over time, with limited
>foresight). Choose now, pay later."
>    * "[Static typing] ... may be helping in certain ways against mistakes
>in the small, but it is interfering with good code (code that will execute
>properly at runtime, is easy to understand, is easy to maintain, and is
>useful to many clients) that helps grow systems in the large and over
>time."
>
>* "Type checking in Lisp" http://www.elwoodcorp.com/alu/table/types.htm
>view:
>    * "The lack of required variable declarations in Lisp does not provide 
>       any less safety than in statically typed languages. Because of the 
>       tagged types, Lisp can, in the worst case, check the types at run
>time 
>       for those items that cannot be automatically recast. In addition,
>the 
>       type system in Lisp can specify much finer grained types than are 
>       usually available in statically typed systems. Thus it is possible
>to 
>       use the type system to ensure, for example, that a particular
>integer 
>       be odd, that a character be ASCII, or that an array not be a
>string."
>
>    CP: Most modern statically typed languages can accomplish such "finer
>        typing".
>
>* Lisper/Schemers going back to static typing:
>   Dan Weinreb on ll1-discuss@ai.mit.edu 
>     Thu, 6 Dec 2001 01:42:54 -0500 (EST) 
>   "   I've written 100,000-line Lisp applications that don't have any
>       type declarations.
>
>     Me too, but my current opinion is that the next time I write a
>     100,000-line application, I'm going to use type declarations
>     everywhere I can, if the langauge makes them available (whether
>     mandatory or optional).  I've really changed my mind on this over the
>     years.  Partly it's because type declarations sometimes catch
>     programming mistakes statically, and partly it's because they make
>     programs easier to read.
>
>     How's that for a provocative statement?  :-) Yes, easier to read.
>     It's easier to understand a program if you can see, right on its
>face,
>     important invariants.  Assertions are helpful, and type declarations
>     are an important special case of assertions."
>
>   Scott McKay answers:
>
>   "It's not provocative to me at all, since I had the same change of mind
>    as you.  My Dylan and more modern Lisp code all use type declarations,
>    at least for all the "contracts".
>
>    I still think that's it's important for type declarations not to be 
>    mandatory, and for type information to be carried by objects, not by 
>    variables.  I haven't change my mind on that."
Robert

This post offers good coverage of all sides of the issue - could you post 
it to the RubyDiscussions section of the wiki on Rubygarden.com?

Phil



In This Thread