I wasn't trying to replace langsmiths in any way. I apologize if it came across that way. If you look at the information on the link I provide it might...
Le Fri, 19 Jun 2009 18:38:37 -0000, ... Certainly not! I would personly love to take part to such a project; there are 2 issues for me: * not enough time next...
spir
denis.spir@...
Jun 19, 2009 8:46 pm
2719
... Believe me, I don't exactly have oodles of time to spare, either. I work for a start-up, and I have a 1 year old son. But this is something that keeps my...
... I use Python which is also a duck typing language. In my experience the missing type check at the beginning of a function/method poses no big problems. You...
... The other realm where lack of type chcking becomes problematic is where an instance variable gets populated with a object of the wrong type in the...
Hi all I don't think I have posted to this list, but I have some comments about Duck Typing and errors in Python code in particular. For background, I have a...
... I'll take this a step further and assert that: 1) If they're problems, they should be fixed even if they're not technically "bugs"- things are that...
... If type inference is done on the basis of messages that an object can receive, what happens when via message forwarding* every object can validly receive...
This is certainly true -- dynamic typing's strengths are more than just duck typing. Programatically extending types at runtime (a la Rails's ActiveRecord) and...
Robert Fischer
robert.fischer@...
Jun 23, 2009 12:23 pm
2726
... Define "validly receive every message". The only thing you can validly do for *every* message is just throw an exception. Otherwise you have to either...
Examples of things I can do if I accept any message: navigate an XML document, build a JSON object. ...
Robert Fischer
robert.fischer@...
Jun 23, 2009 3:31 pm
2728
... I think I'm going to argue that. Dynamic typing's main strengths are 1. Algol-68 type systems are exceeding limited and broken (and this was known in...
... Static typing is inherently more restrictive than dynamic typing. That is, there are well-typed programs that any decidable static type system will reject....
... By definition, yes. ... Not just performance. Actually, the performance advantage is minor at best- and can be offset by other things. For example, it's...
This is an obvious case for polymorphism, so an object would provide its own to_sql implementation. If you didn't want to do that, the Groovy code could look...
Robert Fischer
robert.fischer@...
Jun 23, 2009 5:43 pm
2732
... So the question then becomes why did ActiveRecord go with monkey patching instead of this route? Note that this exact same solution also works nicely for...
... That's a big advantage for supporting static typing, but not a big advantage for requiring it. Nor is it an advantage particular to static typing as...
You misunderstand what's going on. An ActiveRecord class starts out life looking like this: class Foo < ActiveRecord::Base end That's it. It delegates the...
Robert Fischer
robert.fischer@...
Jun 23, 2009 9:29 pm
2735
... The advantage to requiring it I've dealt with in another email. ... Any system of checked metadata about code is a type system. ... What's the advantage of...
... I think I actually disagree here. The top one is shorter, granted- but I don't think it's more readable. Or rather, I don't think it's more readable *in...
This is a key culture difference between dynamic and static type communities -- static type communities want any tiny snippet of code to be obvious without...
Robert Fischer
robert.fischer@...
Jun 23, 2009 11:59 pm
2738
... Without looking it up, can you tell me what the functions 'bind' and 'return' do? How about 'cata' or 'hylo'? Or 'appEndo'? Or 'runKleisli'? The...
John Nowak
john@...
Jun 24, 2009 12:00 am
2739
... How is that more "static-friendly"? Why not just offer a selection function that takes a list of items to use to descend the tree: select : List String ->...
John Nowak
john@...
Jun 24, 2009 12:19 am
2740
... The obvious point to make here being that the former is always better than the latter provided that all other things are equal. - John...
John Nowak
john@...
Jun 24, 2009 12:24 am
2741
... Suppose I have a object which can proxy any message across a network. At compile time, the compiler has no way of knowing what the object on the other side...
Not in direct reply, but I thought I'd chime in... I've been using MiniD for the last few months, which has a few features that languages like Python and Ruby...
That's the way Groovy works, too, and I'm a fan of that optional static typing. ~~ Robert. ... -- ~~ Robert Fischer, Smokejumper IT Consulting. Enfranchised...
Robert Fischer
robert.fischer@...
Jun 24, 2009 2:06 am
2744
... Objective-C does this as well. Personally, I would prefer protocol checking to type checking as any notion of type as it refers to a implementation (as it...
Has anyone on the list checked out this one? http://en.wikipedia.org/wiki/Claire_(programming_language) The first class sets sound interesting including the...
From what I can tell, it sounds like an interesting language, but neither the wikipedia nor the other documentation linked there, yield a lot of information...