Which is better, foo[n_Integer] or foo[n_?IntegerQ] ?
- To: mathgroup at smc.vnet.net
- Subject: [mg103770] Which is better, foo[n_Integer] or foo[n_?IntegerQ] ?
- From: "Nasser Abbasi" <nma at 12000.org>
- Date: Mon, 5 Oct 2009 13:16:12 -0400 (EDT)
- Reply-to: "Nasser Abbasi" <nma at 12000.org>
I am trying to improve some code I wrote by making the function definition more clear by setting restriction on the parameters. I noticed that I could write the following foo[n_Integer] := n^2 boo[n_?IntegerQ] := n^2 Both the above mean the same thing to me. i.e. the function is defined to take only integer argument. Is one better to use? or any one is just as good? (the first uses 2 less characters!) thank you, --Nasser
- Follow-Ups:
- Re: Which is better, foo[n_Integer] or foo[n_?IntegerQ] ?
- From: DrMajorBob <btreat1@austin.rr.com>
- Re: Which is better, foo[n_Integer] or foo[n_?IntegerQ] ?
- From: Andrzej Kozlowski <akoz@mimuw.edu.pl>
- Re: Which is better, foo[n_Integer] or foo[n_?IntegerQ] ?