Beefy Boxes and Bandwidth Generously Provided by pair Networks
Welcome to the Monastery
 
PerlMonks  

comment on

( [id://3333]=superdoc: print w/replies, xml ) Need Help??
Before I started with perl I had a small intermezzo with Eiffel. In that fine programming language "design by contract" is one of the design philosophies. The "contracts" are assertions as described by ady, with the nice addition that assertions on methods are actually inherited.

So I miss assertions in perl a bit, but I am too lazy (and too concerned with not introducing dependencies) to use some dedicated modules for it.

My current usage of assertions is mostly limited to

use Carp qw(confess); ... confess "assertion description" unless $condition

It's a bit sad that Devel::Cover "punishes" the usage of assertions by default if you find no way to trigger it (and unless you tell Devel::Cover to ignore that line, which could also do).

So to me it seems that all the tools are in place, but either aren't easy accessible, or (more likely) I'm too lazy to use them properly.


In reply to Re: Your use of assertions in Perl ? by moritz
in thread Your use of assertions in Perl ? by ady

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post; it's "PerlMonks-approved HTML":



  • Are you posting in the right place? Check out Where do I post X? to know for sure.
  • Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
    <code> <a> <b> <big> <blockquote> <br /> <dd> <dl> <dt> <em> <font> <h1> <h2> <h3> <h4> <h5> <h6> <hr /> <i> <li> <nbsp> <ol> <p> <small> <strike> <strong> <sub> <sup> <table> <td> <th> <tr> <tt> <u> <ul>
  • Snippets of code should be wrapped in <code> tags not <pre> tags. In fact, <pre> tags should generally be avoided. If they must be used, extreme care should be taken to ensure that their contents do not have long lines (<70 chars), in order to prevent horizontal scrolling (and possible janitor intervention).
  • Want more info? How to link or How to display code and escape characters are good places to start.
Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others musing on the Monastery: (1)
As of 2024-04-19 18:30 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found