Re: Pattern Syntax for Alternate Heads with Default Value

*To*: mathgroup at smc.vnet.net*Subject*: [mg125878] Re: Pattern Syntax for Alternate Heads with Default Value*From*: Christoph Lhotka <christoph.lhotka at fundp.ac.be>*Date*: Thu, 5 Apr 2012 05:56:53 -0400 (EDT)*Delivered-to*: l-mathgroup@mail-archive0.wolfram.com*References*: <201204040827.EAA29886@smc.vnet.net>

hi, to reproduce your example f[(x_Real | x_Integer) : 2.5] := x^2; where f[3] = 9 and f[1.5] = 2.25 and f[] = 6.25 I would separate the definitions like f[] := 6.25 f[x_Real] := x^2 f[x_Integer] := x^2 to get from {f[], f[3], f[2.25], f[x]} the results {6.25, 9, 5.0625, f[x]}. best, christoph On 04/04/2012 10:27 AM, Ben wrote: > I'm trying to build a unary function which accepts only arguments with > two possible heads and has a default value. That is, something like > the following, except that this doesn't work. Anyone know how to do > this correctly? > > f[(x_Real | x_Integer) : 2.5] := x^2; > where f[3] = 9 > and f[1.5] = 2.25 > and f[] = 6.25 > > >

**References**:**Pattern Syntax for Alternate Heads with Default Value***From:*Ben <benp84@gmail.com>