On Sun, Apr 6, 2008 at 4:52 PM, Kelly Jones <[EMAIL PROTECTED]> wrote:
> Many programming languages (including Perl, Ruby, and PHP) support hashes:
>
> $color['apple'] = 'red';
> $color['ruby'] = 'red';
>
> $type['apple'] = 'fruit';
> $type['ruby'] = 'gem';
>
> This quickly lets me find the color or type of a given item.
>
> In this sense, color() and type() are like mathematical functions.
>
> However, I can't easily find all items whose $color is 'red', nor all
> items whose $type is 'fruit'. In other words, color() and type()
> aren't full mathematical relations.
>
> Of course, I could create the inverse function as I go along:
>
> $inverse_color['red'] = ['apple', 'ruby']; # uglyish, assigning list to value
>
> and there are many other ways to do this, but they all seem kludgey.
>
> Is there a clean way to add 'relation' support to Perl, Ruby, or PHP?
>
> Is there a language that handles mathematical relations naturally/natively?
>
> I realize SQL does all this and more, but that seems like overkill for
> something this simple?
>
> --
> We're just a Bunch Of Regular Guys, a collective group that's trying
> to understand and assimilate technology. We feel that resistance to
> new ideas and technology is unwise and ultimately futile.
>
Something like this?
<?php
$objects = array(
'apple' => array(
'type' => 'fruit',
'color' => 'red'
),
'ruby' => array(
'type' => 'gem',
'color' => 'red'
)
);
// Search for all red objects.
$red = array();
foreach ($objects as $name => $object) {
if ($object['type'] == 'red')
$red[] = $name;
}
?>
--
-Casey
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php