These types of discussions seem to get very broad in their scope and not much is ever settled.
That being said, it seems one place where dynamic typing is a huge advantage is for records--Clojure records are prevalent and extremely easy to use, and are an excellent substrate for where we would normally use objects. Now, it's possible to have records in statically typed languages, but there are many different ways to do it, and not all buy you the same properties you enjoy in a dynamic language (duck-typing a record if it contains the correct fields, adding additional fields the library designer didn't originally allow, etc.) Haskell has been trying for years to get a grip on it's record story. This isn't because it's impossible to have nice records in a static type system, it's simply because with a static type system you have to make a careful up-front choice about what your type system will allow. In a dynamic language you have none of these worries, and you are free to impose whatever invariants you like on your records. Great power/great responsibility, etc. On Sep 21, 12:09 pm, Dennis Haupt <d.haup...@googlemail.com> wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > Am 21.09.2011 19:58, schrieb Ken Wesson: > > > On Wed, Sep 21, 2011 at 3:00 AM, Dennis Haupt > > <d.haup...@googlemail.com> wrote: > >> yes, but you magically need to know a) for which types does it > >> work? if you give a byte to the function, will you get an error, > >> or its first bit? or its first char after its been converted to a > >> string? b) if i want my data structure to support this, how do i > >> have to do that? > > > I'm curious: in what world is API documentation considered to be > > magical? :) > > - -- > > good point. in my experience, public apis often are well documented > (no problem with clojure standard lib) while in-team-code is rarely > documented at all > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v2.0.14 (MingW32) > Comment: Using GnuPG with Mozilla -http://enigmail.mozdev.org/ > > iQIcBAEBAgAGBQJOejZrAAoJENRtux+h35aGZ8gP/0sKZAOSjMLYZgD0pFy9vs5v > 54wUcP9/D+YEreM8hW67P1j0lNcRqFzEjPDvGX+dykdrZKOrfQ1xpFboiARusLSn > XbtoO4vlkwxwwMv9kcB6DyWtTsP7vEc9M9jJkHRNEERynk6DKBrtAX0RHXz4Qfyj > uHHovEG+a68vcbrY1C9GqRck/Qqhdn0JjoKwFXkZGEUaPVf6rLRfav/JY8wl5Mj2 > AKYhj/0LTUCknqkMFYkflAdLLVFjYLWX+zAeac18E2/RtRFFT5kedhYzHe3CpPY4 > x6BaT5hCS/fZkyYR2kzbar1F18RL4vixmg8HbjGceLLOobW2r5EVyNRxQMv8DIpi > XkjZiW0jqC6XFpoK2KVCaMzJwM46SWNoY6xYglV9/prdQ0Jmf5Isa/FVL+T24Mrq > uaI6AzlKMHk4NzfQNEvJYr22q/H9oT8waEPKDMtWgQsFkSwRFotCfkqu1L5T78MT > BlPek1RIZLTPjxt4kXNwdTC0Q52hiLKNNJakIEakHxSdlwmeT+1i3b+v+luFfdw6 > 6mGb0H8x0pUJKnU/QHFzPA/hPhg0LMOhdwTdvUm+O/7cbFhAakvhLMdUZlEmj70Y > 9DugBMLto6bHyMk4kXUyHzP4ProiFmTwNE5P5UFhtl60svAmkxYuQXFl6JeisxX/ > zTIgie+GRZPuGSTtcKPy > =pfvF > -----END PGP SIGNATURE----- -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en