Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl Monk, Perl Meditation

Re^4: Tiny Frameworks

by Ovid (Cardinal)
on Sep 30, 2007 at 17:34 UTC ( #641791=note: print w/replies, xml ) Need Help??

in reply to Re^3: Tiny Frameworks
in thread Tiny Frameworks

In making the distinction between application framework and library framework, I can see the best counter-argument to what I've put forward. However, I still don't particularly see when something "flips the framework bit" from library to application. Had I merely posted something like HTML::TokeParser::Simple and claimed this was an "HTML parsing framework", people would have rightfully laughed at me. That would definitely be something I would call into.

With what I posted, it's clearly a "frame" which constrains code. It seems to me, though, (correct me if I'm wrong) that the key thing you two suggest for what makes a framework is that there is a particular target application type the framework is designed to support. As a result, since my code is designed to usefully constrain Perl 5's somewhat simplistic OO model in predetermined manner, are you saying that someone unlimited scope of the code is what makes it not a framework? I would think that flexible constraints are what is desirable in a framework. After all, how many times do people complain that their framework of choice limits them too much?

Mine (again, being a toy example), satisfies BrowserUK's definition "that it provides the structure of an application and leaves the application programmer to fill in the details of the specific application." I'm just stepping back and a bit and widening the class (no pun intended) of applications for this this structure is provided. As I asked elsewhere, if someone else adds integrated exception handling, someone else adds multi-method dispatch, someone else adds persistence, at what point can we call it a "framework"?

(I see where this is going, though. Most people seem to think that if I don't have a specific target application type in mind, I'm not allowed to use the word "framework".)

Update: And no worries. I didn't take the "idiot" comment as a personal attack :)


New address of my CGI Course.

Replies are listed 'Best First'.
Re^5: Tiny Frameworks
by Anonymous Monk on Sep 30, 2007 at 17:50 UTC
    Like others have said, this is not about definition, it is about commen sense and your willingness to back down after a bad mistake.

      Oddly the entire discussion is about what the definition of a frame work is. I've yet to see you provide one. For his definition of a framework, which he provided up front, his code fits. It obviously doesn't fit yours, but I have no idea what yours is?

      To me I would think that an application framework is a set of classes, utilities and documentation that provides a general outline for an application. However that is an application framework, and he didn't mention application. So maybe his would be considered an OO framework or some other type of framework. If we extend my definition substituting OO for application we get: A general set of classes, utilities and documentation that provides a general outline for creating objects. He has classes and documentation and I would think we can all agree that even in application frameworks the utilities are optional not required to make it a framework at all.

      So in your mind, what is required to make something into a framework (just a generalized frame work, or you can talk about application frameworks if that is more comfortable). But when you do so, please stop using words like stupid and idiot, they only detract from your point.

      Eric Hodges

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://641791]
and the rats come out to play...

How do I use this? | Other CB clients
Other Users?
Others contemplating the Monastery: (6)
As of 2018-04-26 11:15 GMT
Find Nodes?
    Voting Booth?