Das eez kaput! Sometime around 2002 I spaced the entire database table that mapped individual entries to categories. Such is life. What follows is a random sampling of entries that were associated with the category. Over time, the entries will be updated and then it will be even more confusing. Wander around, though, it's still a fun way to find stuff.
If DSSSL is XSLT's parent, that makes Scheme its grandparent and LISP its great-grandparent. Between XSLT's xsl:function element and its idea of node sequences, I realized that I could implement the classic car and cdr functions that return either the first item or the remainder of a list, respectively. LISP does stand for "LISt Processing," after all, and not "Lots of Irritating Silly Parentheses".
The reason that Class::DBI and the Template Toolkit work so well together is simple. Template Toolkit templates can call methods on objects passed to them--so there's no need to explicitly pull every column out of the database before you process the template--and Class::DBI saves you the bother of writing methods to retrieve database columns. You're essentially going straight from the database to HTML with only a very small amount of Perl in the middle.
can call methods on objects passed to themshe means both an object's accessors and it's mutators. This is not necessarily a problem if you are running your web application in a read-only situation and the web server, for example, doesn't have permissions to alter the contents of the database. But as soon as the program that processes templates has authority to muck with the database you had better have confidence in your TT kung-fu and/or the designers who are mucking with the templates. Not only could you do this :
[% some_obj.foo("bar") %] [% some_obj.update() %]You could also do this :
[% FOREACH this_obj = some_obj.retrieve_all() %] [% this_obj.foo("you lose, sucka") %] [% END %](Note that
retrieve_all
is actually a package method but there's not much to prevent the object
from calling it too.) All this with the both the
EVAL_PERL
and
LOAD_PERL
config flags explictly set to false. You can get around this, sort of,
if your object doesn't have any circular relationships (e.g.
A->has_a(B->has_many(A))
) by adding a
read_onlymethod that sets a trigger to die before an object is updated or deleted. But there isn't really any way to cascade setting those triggers so there is always the possibility of mucking with the original object in a round-about fashion:
# this syntax may not be quite right [% (foo.bars)[0].fooid.delete() %]I've spent a little bit of time investigating ( 1 , 2 ) how to make cascading readonly objects but it's still an ugly hack that requires mucking with private functions in Class::DBI. The proper thing to do would be to abstract all of this stuff into a CDBI::ReadOnly package but that might be a while in coming yet. Know you know. via paranoidfish
mt
API methods. This is probably it for version 0.86 but I don't have the
time to finish debugging right this moment so I throw it out for the
brave and reckless. see also
changes
; note that the
HTML
docs
have not been updated yet.Party (or other gathering) with lots of potentially nice girls who aren't old enough to date but will be soon. You can "invest" in those girls already, hence Stock Exchange.
ex. The place was packed with 16-year-olds, quite a stock exchange.
Stasis \Sta"sis\, n. [NL., fr. Gr. ? a standing still.] (Physiol.) A slackening or arrest of the blood current in the vessels, due not to a lessening of the heart's beat, but presumably to some abnormal resistance of the capillary walls. It is one of the phenomena observed in the capillaries in inflammation. web1913
stasis n 1: an abnormal state in which the normal flow of a liquid (such as blood) is slowed or stopped 2: inactivity resulting from a static balance between opposing forces wn
Someone who steals disposable lighters, usually without knowing it--or claiming not to know it.
ex. My boyfriend is a pyrokleptomanic, is yours?
response
method for the search widget.
I'll see you there.
I'm sure there is a graduate student working hard to explain why we do
these things but I'm also pretty sure that anything they say will read
like a Mark Dery book so we'll just ignore that part of it for now. But
it did get me thinking about using a weblogging system as an email
application, rather than just using the latter to transit the former.
That is each message is
intercepted
by a filtering agent and "posted" to a private weblog (if you're into
hacking sendmail or postfix or whatever, I think you're insane but
that's your business.) The most immediate win is that your email can
suddenly take advantage of the work that's been done on assigning
multiple categories in the blog world. Suddenly you never have wonder
whether it makes more sense whether to file an email by topic/project
or by sender. I'm told that much of this has already been done, largely
by individuals for personal use. One person has widgets to
automatically post certain emails to the web using the Message-Id as
permalink / primary key. Which got me thinking about
types
again. Specifically, if you wanted to have multiple routing/archiving
destinations -- the public web, the private web for group "foo", etc.
-- could you use an existing category framework or would a "route" have
to be it's own type? Of course, the next logical step would be to
render and then read your email as
VRML
....
"a tourist (from the "Vacation" movies, said dismissively by native Floridians)"
ex. Could those griswalds wear any more cameras?
onclick
event away from categories as rss as html as
sidebar
widget.
Whiz! Bang! Crash! Splat!
via
scottandrew
print sightly( { Shape => 'camel', SourceFile =>
'helloworld.pl', Regex => 1 } );
"
# Publish $node and any children as an RSS file $node->publish->register(type=>"rss",version=>"1.0"); print $cgi->header(-type=>"text/xml"), $node->publish->write; # Publish $node and any children as an # IE (Win) bookmarks collection $node->publish->register(type=>"fav"); $node->publish->write("C:/WINDOWS/Favorites/".$node->title); # Publish $node and any children (?) to # a manila/blogger/... site $node->publish->register(type=>"manila"); $node->publish->write( url =>"http://foo.com", user=>"asc", pass=>"*****");Anyone who's been watching the links and various bits and pieces of code around here lately, will surely see the thread. And for those who've asked in the past, when the new code is done (?!) it will be available to all.
dude, where's my car
This document uses CSS kung-fu and a small amount of JavaScript for rendering its contents. Efforts have been made to separate the form from the content so if you are viewing this in a text-based browser it shouldn't be an issue.
On the other hand it may look funny if you are viewing it in a browser with incomplete CSS and/or JavaScript implementations. Internet Explorer 6 comes to mind.
It's not that I don't love you. However, my time is limited and I no longer feel very good about spending it working around any one browser's inconsistencies with little, or no, confidence that they will ever be fixed or otherwise made more inconsistent at some later date.
On the other hand, if something is down-right unreadable please let me know and I will endeavour to fix it.
yes, we have no bananas
This page may not validate. It's not that I don't care, it's just that I'm not aware of it yet. Part of the reason that I rewrote the entire back-end for managing this site is that the old stuff made it too easy for these kinds of mistakes to slip through the cracks.
See also : W3C::LogValidator.pm
it's the software, stupid