Beefy Boxes and Bandwidth Generously Provided by pair Networks
Pathologically Eclectic Rubbish Lister
 
PerlMonks  

Re: Perl Moose, basics

by jeffa (Bishop)
on Dec 10, 2015 at 23:10 UTC ( #1149968=note: print w/replies, xml ) Need Help??


in reply to Perl Moose, basics

You give the Party class a method that looks for a red table:

sub has_red_table { my $self = shift; for (@{ $self->tables }) { return 1 if $_->color eq 'red'; } return 0; }
Homework: implement this method using grep

Also, note that you have a serious typo: "table" is not "tables" ... but Moose should catch that for you. Here is the client that i used to help you as well:

use strict; use warnings; my $table1 = Table->new(size => 'big', color => 'red'); my $table2 = Table->new(size => 'small', color => 'blue'); my $party1 = Party->new( tables => [$table1,$table2] ); my $party2 = Party->new( tables => [$table2,$table2] ); print $party1->has_red_table, $/; print $party2->has_red_table, $/;

jeffa

L-LL-L--L-LL-L--L-LL-L--
-R--R-RR-R--R-RR-R--R-RR
B--B--B--B--B--B--B--B--
H---H---H---H---H---H---
(the triplet paradiddle with high-hat)

Replies are listed 'Best First'.
Re^2: Perl Moose, basics
by Cow1337killr (Monk) on Jun 29, 2016 at 18:47 UTC

    Thank you for your contributions to this thread.

    However, I referred back to the original post and reread the specifications:

    1.) Add the small blue table to the party once the party has started.

    2.) Once all the tables are at the party, how do I see if I have a red table?

    Now, if I were to substitute the word “pizza” for the phrase “small blue table” in the first specification, that sentence would indicate to me that the party had started, but there was no pizza, but the pizza arrived soon after the start of the party.

    So, I assume  my $party1 = Party->new( tables => [$table1,$table2] ); models the start of a party.

    Hence, the design of the Party object-oriented programming (OOP) application program interface (API) seems to lack a way to add a table or tables to a party after the party has started.

    So, our model of a party on a computer is incomplete. I think this falls under the category of abstraction, for those readers that are students of OOP.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1149968]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others examining the Monastery: (5)
As of 2019-05-25 13:06 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    Do you enjoy 3D movies?



    Results (152 votes). Check out past polls.

    Notices?
    • (Sep 10, 2018 at 22:53 UTC) Welcome new users!