You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tapestry.apache.org by Michael Gentry <mg...@masslight.net> on 2009/06/01 19:01:07 UTC

Re: [Tapestry Central] Back from Training --- Next up, JavaOne

[objc retain];


On Sun, May 31, 2009 at 4:19 PM, Howard <hl...@gmail.com> wrote:
> It's been a rough week ... I still had my sore throat (noticeable
> during the webinar) when I arrived to do four days of accelerated
> Tapestry training in Michigan. Returning after midnight on Friday, I
> had morning and afternoon slots at Portland Code Camp on Saturday to
> talk about Clojure and Tapestry. I think it was a good little
> conference, and 75 minute time slots are just barely enough time to say
> something meaningful.
> I attended a nice introduction to jQuery (once again confirming that I
> backed the wrong horse when selecting Prototype over jQuery for
> Tapestry), and another session on coding for iPhone.
> The only other session I attended was iPhone Development from an ex
> Softie by Rory Blyth. It was entertaining in an unusual way, since Rory
> is very glib in a stream of consciousness kind of way, but he spent all
> but five minutes of his time ranting against Objective-C and iPhone
> toolkits. Literally he had five minutes for the core of his talk!
> I was one of a few people in the audience who knew Objective-C (though
> it's more than ten years since I coded in it) and found many of his
> objections quite unreasonable. Basically, he wants Objective-C to look
> like every other language derived from C, which is missing the point of
> what Objective-C actually is: a melding of concepts from C and
> Smalltalk designed to operate on the very constrained hardware
> available, even for desktops, in the late 80's. It obligates developers
> to do something unreasonable by today's standards (a cumbersome retain
> count mechanism, rather than garbage collection), and the (optional)
> type syntax (such as (NSString *)) reveals its C heritage (as Smalltalk
> doesn't deal with declared types).
> I even made this point to him; that Objective-C may be a natural fit
> for the constrained devices such as mobile platforms. His response to
> any challenge from any audience member was that we were afflicted
> with "Stockholm syndrome".
> Strangely, a few minutes after I pointed out the "constrained device"
> theory (which he dismissed, disjointedly citing Windows smart phones as
> a "success") he then talked about ... the constraints of the iPhone in
> terms of memory, battery and CPU utilization.
> Basically, Rory is unable to wrap his head around anything unfamiliar
> or to understand how a difference in philosophy can inform how a
> language syntax evolves, as well as the terminology (i.e.,
> Objective-C's "receivers", "messages" and "selectors") used to describe
> that language.
> There's a quote from the book Freakonomics, roughly (from memory):
> Morality is how we think we should live our lives. Economics reveals
> how we actually do.
> Rory has a kind of "language morality" that states the objects should
> be listed first, with periods separating member access, such as method
> invocation, and that languages that deviate from this are failed and
> broken. Unfortunately for that argument, the explosive success of the
> iPhone and the iPhone app market indicates that Objective-C is a
> tremendous development platform for the kind of intuitive, focused,
> responsive applications that dominate the market.
> It was a shame, because his style was entertaining, if very "slacker"
> styled, and if he organized his thoughts a bit and kept track of the
> clock, his valid criticisms of the iPhone development environment would
> hold a bit more weight and reach a wider, more receptive audience.
>
> --
> Posted By Howard to Tapestry Central at 5/31/2009 12:22:00 PM

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org


Re: [Tapestry Central] Back from Training --- Next up, JavaOne

Posted by Michael Gentry <mg...@masslight.net>.
I was always fond of the Objective-C messaging syntax with the colons
in the name.  (Yes, I know it drives some people nutty.)  It allowed
for messages with self-documenting names, though, like
NSMutableDictionary's setObject:forKey:.  Compared to the Java HashMap
put(Object, Object) -- which one is the key and which one is the
value?  I had to look it up repeatedly when learning Java.  My
favorite Objective-C method was in WebObject's Enterprise Objects
Framework: addObject:toBothSidesOfRelationshipWithKey: ... lots of
typing, but I knew what it did.

mrg

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org


Re: [Tapestry Central] Back from Training --- Next up, JavaOne

Posted by Howard Lewis Ship <hl...@gmail.com>.
Well, the whole [[MyClass alloc] init] autorelease] thing is kind of
offputting, and (on the Desktop) Obj-C now has garbage collection.

However, splitting construction into allocation (not always from the
heap, i.e., easy to add pooling or singletons) and initialization is
very cool.  And the ability to allocate into a Zone (i.e., a heap
associated with a related group of objects typically forming a
"document") is also a very nice concept.

Given my current fascination with Clojure (a Lisp), the bracket shaped
method invocations is very natural, i.e.

Java:

  new MyObject().doSomething(withParam).andDoSomethingElse()

Obj-C

  [[[[MyObject alloc] init] doSomething: withParam] andDoSomethingElse]

Clojure

  (.. (MyObject.) (doSomething withParam) andDoSomethingElse)

oops!  Clojure wins again!  Lets get this on an iPhone already!

On Mon, Jun 1, 2009 at 10:01 AM, Michael Gentry <mg...@masslight.net> wrote:
> [objc retain];
>
>
> On Sun, May 31, 2009 at 4:19 PM, Howard <hl...@gmail.com> wrote:
>> It's been a rough week ... I still had my sore throat (noticeable
>> during the webinar) when I arrived to do four days of accelerated
>> Tapestry training in Michigan. Returning after midnight on Friday, I
>> had morning and afternoon slots at Portland Code Camp on Saturday to
>> talk about Clojure and Tapestry. I think it was a good little
>> conference, and 75 minute time slots are just barely enough time to say
>> something meaningful.
>> I attended a nice introduction to jQuery (once again confirming that I
>> backed the wrong horse when selecting Prototype over jQuery for
>> Tapestry), and another session on coding for iPhone.
>> The only other session I attended was iPhone Development from an ex
>> Softie by Rory Blyth. It was entertaining in an unusual way, since Rory
>> is very glib in a stream of consciousness kind of way, but he spent all
>> but five minutes of his time ranting against Objective-C and iPhone
>> toolkits. Literally he had five minutes for the core of his talk!
>> I was one of a few people in the audience who knew Objective-C (though
>> it's more than ten years since I coded in it) and found many of his
>> objections quite unreasonable. Basically, he wants Objective-C to look
>> like every other language derived from C, which is missing the point of
>> what Objective-C actually is: a melding of concepts from C and
>> Smalltalk designed to operate on the very constrained hardware
>> available, even for desktops, in the late 80's. It obligates developers
>> to do something unreasonable by today's standards (a cumbersome retain
>> count mechanism, rather than garbage collection), and the (optional)
>> type syntax (such as (NSString *)) reveals its C heritage (as Smalltalk
>> doesn't deal with declared types).
>> I even made this point to him; that Objective-C may be a natural fit
>> for the constrained devices such as mobile platforms. His response to
>> any challenge from any audience member was that we were afflicted
>> with "Stockholm syndrome".
>> Strangely, a few minutes after I pointed out the "constrained device"
>> theory (which he dismissed, disjointedly citing Windows smart phones as
>> a "success") he then talked about ... the constraints of the iPhone in
>> terms of memory, battery and CPU utilization.
>> Basically, Rory is unable to wrap his head around anything unfamiliar
>> or to understand how a difference in philosophy can inform how a
>> language syntax evolves, as well as the terminology (i.e.,
>> Objective-C's "receivers", "messages" and "selectors") used to describe
>> that language.
>> There's a quote from the book Freakonomics, roughly (from memory):
>> Morality is how we think we should live our lives. Economics reveals
>> how we actually do.
>> Rory has a kind of "language morality" that states the objects should
>> be listed first, with periods separating member access, such as method
>> invocation, and that languages that deviate from this are failed and
>> broken. Unfortunately for that argument, the explosive success of the
>> iPhone and the iPhone app market indicates that Objective-C is a
>> tremendous development platform for the kind of intuitive, focused,
>> responsive applications that dominate the market.
>> It was a shame, because his style was entertaining, if very "slacker"
>> styled, and if he organized his thoughts a bit and kept track of the
>> clock, his valid criticisms of the iPhone development environment would
>> hold a bit more weight and reach a wider, more receptive audience.
>>
>> --
>> Posted By Howard to Tapestry Central at 5/31/2009 12:22:00 PM
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: users-help@tapestry.apache.org
>
>



-- 
Howard M. Lewis Ship

Creator of Apache Tapestry
Director of Open Source Technology at Formos

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org