Deprecated: Assigning the return value of new by reference is deprecated in /home/eykd/webapps/net_eykd_newstalk__wp/wp-settings.php on line 472

Deprecated: Assigning the return value of new by reference is deprecated in /home/eykd/webapps/net_eykd_newstalk__wp/wp-settings.php on line 487

Deprecated: Assigning the return value of new by reference is deprecated in /home/eykd/webapps/net_eykd_newstalk__wp/wp-settings.php on line 494

Deprecated: Assigning the return value of new by reference is deprecated in /home/eykd/webapps/net_eykd_newstalk__wp/wp-settings.php on line 530

Strict Standards: Declaration of Walker_Page::start_lvl() should be compatible with Walker::start_lvl(&$output) in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/classes.php on line 594

Strict Standards: Declaration of Walker_Page::end_lvl() should be compatible with Walker::end_lvl(&$output) in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/classes.php on line 594

Strict Standards: Declaration of Walker_Page::start_el() should be compatible with Walker::start_el(&$output) in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/classes.php on line 594

Strict Standards: Declaration of Walker_Page::end_el() should be compatible with Walker::end_el(&$output) in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/classes.php on line 594

Strict Standards: Declaration of Walker_PageDropdown::start_el() should be compatible with Walker::start_el(&$output) in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/classes.php on line 611

Strict Standards: Declaration of Walker_Category::start_lvl() should be compatible with Walker::start_lvl(&$output) in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/classes.php on line 705

Strict Standards: Declaration of Walker_Category::end_lvl() should be compatible with Walker::end_lvl(&$output) in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/classes.php on line 705

Strict Standards: Declaration of Walker_Category::start_el() should be compatible with Walker::start_el(&$output) in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/classes.php on line 705

Strict Standards: Declaration of Walker_Category::end_el() should be compatible with Walker::end_el(&$output) in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/classes.php on line 705

Strict Standards: Declaration of Walker_CategoryDropdown::start_el() should be compatible with Walker::start_el(&$output) in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/classes.php on line 728

Strict Standards: Redefining already defined constructor for class wpdb in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/wp-db.php on line 306

Deprecated: Assigning the return value of new by reference is deprecated in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/cache.php on line 103

Strict Standards: Redefining already defined constructor for class WP_Object_Cache in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/cache.php on line 425

Deprecated: Assigning the return value of new by reference is deprecated in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/query.php on line 21

Deprecated: Assigning the return value of new by reference is deprecated in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/theme.php on line 623

Strict Standards: Redefining already defined constructor for class WP_Dependencies in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/class.wp-dependencies.php on line 15

Strict Standards: Non-static method HeadSpace2::get() should not be called statically in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/plugins/headspace2/models/headspace.php on line 331

Strict Standards: Declaration of HSM_PageTitle::load() should be compatible with HSM_Module::load($meta = '') in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/plugins/headspace2/modules/page/page_title.php on line 181

Strict Standards: Declaration of HSM_Description::load() should be compatible with HSM_Module::load($meta = '') in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/plugins/headspace2/modules/page/description.php on line 107

Strict Standards: Declaration of HSM_Tags::load() should be compatible with HSM_Module::load($meta = '') in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/plugins/headspace2/modules/page/tags.php on line 350

Strict Standards: Declaration of HSM_JavaScript::load() should be compatible with HSM_Module::load($meta = '') in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/plugins/headspace2/modules/page/javascript.php on line 94

Strict Standards: Declaration of HSM_Stylesheet::load() should be compatible with HSM_Module::load($meta = '') in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/plugins/headspace2/modules/page/stylesheet.php on line 123

Strict Standards: Declaration of HSM_Stylesheet::init() should be compatible with HSM_Module::init($args) in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/plugins/headspace2/modules/page/stylesheet.php on line 123

Strict Standards: Declaration of HSM_NoIndex::load() should be compatible with HSM_Module::load($meta = '') in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/plugins/headspace2/modules/page/noindex.php on line 113

Strict Standards: Declaration of HSS_PageCounts::load() should be compatible with HS_SiteModule::load($meta = '') in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/plugins/headspace2/modules/site/page_counts.php on line 144

Strict Standards: Non-static method InSeriesInternal::compat_hooks() should not be called statically in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/plugins/in-series/in-series-internal.php on line 944

Strict Standards: Redefining already defined constructor for class admin_subpages in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/plugins/post-plugin-library/admin-subpages.php on line 22

Deprecated: Assigning the return value of new by reference is deprecated in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/plugins/wp-widget-cache/widget-cache.php on line 491

Strict Standards: call_user_func_array() expects parameter 1 to be a valid callback, non-static method WPPP::init() should not be called statically in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/plugin.php on line 311

Strict Standards: call_user_func_array() expects parameter 1 to be a valid callback, non-static method GoogleSitemapGeneratorLoader::Enable() should not be called statically in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/plugin.php on line 311

Strict Standards: call_user_func_array() expects parameter 1 to be a valid callback, non-static method cformsRSS::vars() should not be called statically in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/plugin.php on line 163

Strict Standards: call_user_func_array() expects parameter 1 to be a valid callback, non-static method cformsRSS::outputRSS() should not be called statically in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/plugin.php on line 311

Strict Standards: call_user_func_array() expects parameter 1 to be a valid callback, non-static method cformsRSS::vars() should not be called statically in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/plugin.php on line 163

Strict Standards: call_user_func_array() expects parameter 1 to be a valid callback, non-static method cformsRSS::vars() should not be called statically in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/plugin.php on line 163
newstalk <br /> <b>Deprecated</b>: Non-static method HeadSpace2::reload() should not be called statically, assuming $this from incompatible context in <b>/home/eykd/webapps/net_eykd_newstalk__wp/wp-content/plugins/headspace2/modules/page/page_title.php</b> on line <b>77</b><br /> <br /> <b>Deprecated</b>: Non-static method HeadSpace2::get() should not be called statically, assuming $this from incompatible context in <b>/home/eykd/webapps/net_eykd_newstalk__wp/wp-content/plugins/headspace2/models/headspace.php</b> on line <b>281</b><br /> » » The terrible secrets of dynamic Python.
Deprecated: Function eregi() is deprecated in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/themes/atahualpa/functions/bfa_rotating_header_images.php on line 32

Deprecated: Function eregi() is deprecated in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/themes/atahualpa/functions/bfa_rotating_header_images.php on line 32

Deprecated: Function eregi() is deprecated in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/themes/atahualpa/functions/bfa_rotating_header_images.php on line 32

Deprecated: Function eregi() is deprecated in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/themes/atahualpa/functions/bfa_rotating_header_images.php on line 32

Deprecated: Function eregi() is deprecated in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/themes/atahualpa/functions/bfa_rotating_header_images.php on line 32

Deprecated: Function eregi() is deprecated in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/themes/atahualpa/functions/bfa_rotating_header_images.php on line 32

Deprecated: Function eregi() is deprecated in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/themes/atahualpa/functions/bfa_rotating_header_images.php on line 32

Deprecated: Function eregi() is deprecated in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/themes/atahualpa/functions/bfa_rotating_header_images.php on line 32

Deprecated: Function eregi() is deprecated in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/themes/atahualpa/functions/bfa_rotating_header_images.php on line 32

Deprecated: Function eregi() is deprecated in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/themes/atahualpa/functions/bfa_rotating_header_images.php on line 32

Deprecated: Function eregi() is deprecated in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/themes/atahualpa/functions/bfa_rotating_header_images.php on line 32

Deprecated: Function eregi() is deprecated in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/themes/atahualpa/functions/bfa_rotating_header_images.php on line 32

Deprecated: Function eregi() is deprecated in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/themes/atahualpa/functions/bfa_rotating_header_images.php on line 32

Deprecated: Function eregi() is deprecated in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/themes/atahualpa/functions/bfa_rotating_header_images.php on line 32

Deprecated: Function eregi() is deprecated in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/themes/atahualpa/functions/bfa_rotating_header_images.php on line 32

Deprecated: Function eregi() is deprecated in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/themes/atahualpa/functions/bfa_rotating_header_images.php on line 32

Deprecated: Function eregi() is deprecated in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/themes/atahualpa/functions/bfa_rotating_header_images.php on line 32

Deprecated: Function eregi() is deprecated in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/themes/atahualpa/functions/bfa_rotating_header_images.php on line 32

Deprecated: Function eregi() is deprecated in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/themes/atahualpa/functions/bfa_rotating_header_images.php on line 32

Deprecated: Function eregi() is deprecated in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/themes/atahualpa/functions/bfa_rotating_header_images.php on line 32

Deprecated: Function eregi() is deprecated in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/themes/atahualpa/functions/bfa_rotating_header_images.php on line 32

Deprecated: Function eregi() is deprecated in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/themes/atahualpa/functions/bfa_rotating_header_images.php on line 32

Deprecated: Function eregi() is deprecated in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/themes/atahualpa/functions/bfa_rotating_header_images.php on line 32

Deprecated: Function eregi() is deprecated in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/themes/atahualpa/functions/bfa_rotating_header_images.php on line 32

Strict Standards: call_user_func_array() expects parameter 1 to be a valid callback, non-static method InSeriesInternal::insert_doc_rel_links() should not be called statically in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/plugin.php on line 311

Strict Standards: Non-static method InSeries::adv_CurrentSeries() should not be called statically in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/plugins/in-series/in-series-internal.php on line 858

Strict Standards: Non-static method InSeriesInternal::get_current_series_id() should not be called statically in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/plugins/in-series/in-series.php on line 131

Strict Standards: Non-static method InSeriesInternal::get_series_hint() should not be called statically in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/plugins/in-series/in-series-internal.php on line 142

Strict Standards: Non-static method InSeriesInternal::make_int() should not be called statically in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/plugins/in-series/in-series-internal.php on line 134

Strict Standards: Non-static method InSeriesInternal::get_the_ID() should not be called statically in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/plugins/in-series/in-series-internal.php on line 147

Strict Standards: Non-static method InSeriesInternal::make_int() should not be called statically in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/plugins/in-series/in-series-internal.php on line 147

Strict Standards: Non-static method InSeriesInternal::PostToSeries() should not be called statically in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/plugins/in-series/in-series-internal.php on line 152

Strict Standards: Non-static method InSeriesInternal::GetPostSeriesCachedResults() should not be called statically in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/plugins/in-series/in-series-internal.php on line 323

Strict Standards: Non-static method InSeriesInternal::make_int() should not be called statically in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/plugins/in-series/in-series-internal.php on line 325

Strict Standards: Non-static method InSeriesInternal::get_entry_table_name() should not be called statically in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/plugins/in-series/in-series-internal.php on line 330

Strict Standards: Non-static method InSeriesInternal::get_table_name() should not be called statically in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/plugins/in-series/in-series-internal.php on line 117
newstalk

newstalk

:: like newspeak, minus the ungood bits. ::

newstalk RSS Feed
 
 
 
 

The terrible secrets of dynamic Python.


Strict Standards: call_user_func_array() expects parameter 1 to be a valid callback, non-static method SimilarPosts::execute() should not be called statically in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/plugins/post-plugin-library/common_functions.php on line 601

Strict Standards: Non-static method SimilarPosts::check_post_plugin_library() should not be called statically in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/plugins/similar-posts/similar-posts.php on line 57

Strict Standards: call_user_func_array() expects parameter 1 to be a valid callback, non-static method InSeriesInternal::in_series_linker_content_filter() should not be called statically in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/plugin.php on line 163

Strict Standards: Non-static method InSeriesInternal::get_the_ID() should not be called statically in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/plugins/in-series/in-series-internal.php on line 881

Strict Standards: Non-static method InSeries::adv_PostToSeries() should not be called statically in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/plugins/in-series/in-series-internal.php on line 881

Strict Standards: Non-static method InSeriesInternal::make_int() should not be called statically in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/plugins/in-series/in-series.php on line 486

Strict Standards: Non-static method InSeriesInternal::PostToSeries() should not be called statically in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/plugins/in-series/in-series.php on line 490

Strict Standards: Non-static method InSeriesInternal::GetPostSeriesCachedResults() should not be called statically in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/plugins/in-series/in-series-internal.php on line 323

Strict Standards: Non-static method InSeriesInternal::make_int() should not be called statically in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/plugins/in-series/in-series-internal.php on line 325

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-content/plugins/wp-slimbox-reloaded/wp-slimbox-reloaded.php on line 84

In honor of the new “geeky” category, I’d like to skim over the joys and terrors of dynamic Python.

The Problem

In my current programming project, I have in-game characters that need a set of personal attributes defined–you know, things like “strength” and “intelligence”. However, I haven’t settled on a stat system yet, so I wanted to make a flexible architecture which would do all the heavy lifting, and later down the road when I have my system figured out, it would be trivial to implement.

Enter the CharGen class, which is a generic sort of class that keeps track of four different kinds of stats–physical/mental/social “attributes”, “skills”, “meta” attributes, for string-values like names, etc., and “persona”, mainly for numeric values which defy classification. These naturally implemented themselves as dictionaries, so if you want to look at the strength attribute, you just do

chargen.attr['strength']

If you want to check a character’s skill at driving, you look at

chargen.skill['drive']

This also makes it easy later to iterate over, say, all the attributes, or over all the skills. Easy, right?

But, what if you want to write a method that needs to check or set an arbitrary stat? Well, first you have to check the stat’s type. Then you have to go to that dictionary and look up the attribute itself. The code looks like this:

attr = 'strength'
attrtype = self.all[attr]['type']
getattr(self, attrtype)[attr]

Seems like a lot of work just to check a lousy variable, eh? And, it’s UgLy. I tried stuffing it into a method you could call, and that was going to work okay. But then I thought, “what about when I want to set a stat?” The code is almost the same, using setattr instead of getattr. But it doesn’t allow for any sanity-checking–for instance, if I were using a stat system where strength couldn’t be any higher than 20, I could still set chargen.attr['strength'] = 50, and nobody would complain. A generic method wouldn’t work either, because the CharGen method is meant to be subclassed, and I had no idea what my future self might need as far as checks and balances.

What to do? What to do?

A Half-Answer

At the same time, I thought, “boy, it sure would be convenient, and nicer to look at, if I could just say

chargen.strength

instead of

chargen.attr["strength"]

Well, Python has this unassuming little feature called managed properties, where you store the actual data anywhere you want (like in a dictionary, or a private variable, or whatever), then you define a getter and a setter method for that data, and then you just assign chargen.strength to a special property object that knows about the getter and setter, and, voila,

chargen.strength

works just like

chargen.attr['strength']

Cool, huh? And even better, you could set up any sort of rules you want in the setter method, so you can rest assured that nobody will ever be able to set chargen.strength to 50 if you don’t want them to. (They could always use chargen.attr['strength'] to commit whatever foul crimes they like, but I just have to trust my future self not to be so nefarious.)

But I immediately hit another snag: where do the getters and setters come from, if I won’t know the stats and constraints until subclassing time?

The Terrible Secret

Here’s where we start delving into the dark arts of a dynamic language like Python. In a static language, I would be stuck having to do some of the work at subclassing time. Define a stat, then manually define a getter and a setter for it. It’s all very simple code, and it’s very boring to type over and over again. I code because it’s fun, and I avoid coding stuff that’s not fun. This would not be fun.

Then I discovered a recipe for a function factory that makes instance methods. If that didn’t make sense to you, that’s okay, because it’s pretty abstract, and I still don’t quite get it either. In fact, part of me is surprised every time I run the unit test and it passes. Stuff like this shouldn’t work–it’s too subtle, too sleight of hand. And whatever else it may be, it sure ain’t obvious. If I’d read about this two years ago, when I was first learning Python’s syntax, I would only have been able to muster a blank stare. I’ve come a long way.

Now, all my future self has to do is subclass CharGen, define a dictionary of stats with type and constraints, then call CharGen’s init method, and it all happens, dictionaries, properties, getters, setters, everything as if by magic. It’s so cool, it’s creepy.

Possibly related:

    None Found

Like what you see?

Don't forget to subscribe via RSS or email to receive updates when I post new material. Thanks!

Comments are closed.

Feedback: I'd love to hear what you have to say!
  1. I don't have time to manage or moderate a live comments forum, but I'd love to hear from you.
  2. (required)
  3. (valid email required)
 

cforms contact form by delicious:days


subscribe



Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948

eykd.net

newstalk

categories

now reading

Planned:

None

Current:

  • The Sparrow

    The Sparrow by Mary Doria Russell

Recent:

View full Library

oldspeak


    Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

    Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948
  • February 2009

  • Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

    Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948
  • December 2008

  • Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

    Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948
  • November 2008

  • Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

    Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948
  • October 2008

  • Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

    Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948
  • June 2006

  • Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

    Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948
  • December 2005

  • Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

    Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948
  • November 2005

  • Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

    Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948
  • October 2005

  • Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

    Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948
  • September 2005

  • Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

    Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948
  • August 2005

  • Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

    Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948
  • July 2005

  • Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

    Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948
  • June 2005

  • Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

    Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948
  • May 2005

  • Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

    Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948
  • April 2005

  • Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

    Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948
  • March 2005

  • Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

    Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948
  • February 2005

  • Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

    Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948
  • January 2005

  • Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

    Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948
  • December 2004

  • Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

    Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948
  • November 2004

  • Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

    Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948
  • October 2004

  • Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

    Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948
  • September 2004

  • Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

    Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948
  • August 2004

  • Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

    Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948
  • June 2004

  • Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

    Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948
  • May 2004

  • Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

    Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948
  • March 2004

  • Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

    Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948
  • February 2004

  • Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

    Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948
  • January 2004

  • Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

    Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948
  • December 2003

  • Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

    Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948
  • October 2003

  • Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

    Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948
  • September 2003

  • Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

    Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948
  • August 2003

  • Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

    Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948
  • July 2003

  • Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

    Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948
  • May 2003

  • Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 947

    Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/eykd/webapps/net_eykd_newstalk__wp/wp-includes/kses.php on line 948
  • April 2003