Re: perl -e 'my $i = 0; $i = defined($i) ? (!!$i) : 0; print "i: $i\n";'

2017-08-03 Thread Chas. Owens
On Thu, Aug 3, 2017 at 3:29 PM hw wrote: > David Mertens wrote: > It is nonsense to logically negate a string, and it is nonsense to convert > undefined values into 'false'. Negating strings is a well defined operation in Perl 5. The following values in Perl 5 are false: undef, 0, 0.0, "", "0"

Re: perl -e 'my $i = 0; $i = defined($i) ? (!!$i) : 0; print "i: $i\n";'

2017-08-03 Thread Paul Johnson
they are true or > false > because they are undefined. > > When you convert undefined values to false, then you must also convert false > to undefined values. Logic dictates that otherwise undefined values are > not equal to undefined values. Yet perl claims that they are: >

Re: perl -e 'my $i = 0; $i = defined($i) ? (!!$i) : 0; print "i: $i\n";'

2017-08-03 Thread hw
also convert false to undefined values. Logic dictates that otherwise undefined values are not equal to undefined values. Yet perl claims that they are: perl -e 'print "true\n" if(undef == undef);' perl -e 'print "true\n" if(0 == undef);' Both is just wrong.

Re: perl -e 'my $i = 0; $i = defined($i) ? (!!$i) : 0; print "i: $i\n";'

2017-07-07 Thread David Mertens
On Thu, Jul 6, 2017 at 11:05 PM, wrote: > Perl is highly unusual in that the operator, not the operand, dictates the >> context. >> > > Good point - and one that I hadn't got around to noticing. > > Therefore, the '!' operator has to be set up to either: > a) operate always in numeric context; >

Re: perl -e 'my $i = 0; $i = defined($i) ? (!!$i) : 0; print "i: $i\n";'

2017-07-07 Thread Илья Рассадин
t: Friday, July 07, 2017 12:07 PM To: Sisyphus Cc: Chas. Owens ; hw ; Perl Beginners Subject: Re: perl -e 'my $i = 0; $i = defined($i) ? (!!$i) : 0; print "i: $i\n";' On Thu, Jul 6, 2017 at 9:12 PM, wrote: I find it a little surprising that use of the '!&#x

Re: perl -e 'my $i = 0; $i = defined($i) ? (!!$i) : 0; print "i: $i\n";'

2017-07-06 Thread sisyphus1
From: David Mertens Sent: Friday, July 07, 2017 12:07 PM To: Sisyphus Cc: Chas. Owens ; hw ; Perl Beginners Subject: Re: perl -e 'my $i = 0; $i = defined($i) ? (!!$i) : 0; print "i: $i\n";' On Thu, Jul 6, 2017 at 9:12 PM, wrote: I find it a little surprising that use of

Re: perl -e 'my $i = 0; $i = defined($i) ? (!!$i) : 0; print "i: $i\n";'

2017-07-06 Thread David Mertens
On Thu, Jul 6, 2017 at 9:12 PM, wrote: > I find it a little surprising that use of the '!' operator is all that's > needed to add the stringification stuff: > > ... > > If the '!' operator didn't do that, then I believe the OP would be seeing > precisely what he expects. > > So ... why should the

Re: perl -e 'my $i = 0; $i = defined($i) ? (!!$i) : 0; print "i: $i\n";'

2017-07-06 Thread sisyphus1
From: Chas. Owens Sent: Friday, July 07, 2017 12:34 AM To: hw ; beginners@perl.org Subject: Re: perl -e 'my $i = 0; $i = defined($i) ? (!!$i) : 0; print "i: $i\n";' On Thu, Jul 6, 2017 at 9:38 AM hw wrote: Chas. Owens wrote: $i started off as an IV, but gets promoted to

Re: perl -e 'my $i = 0; $i = defined($i) ? (!!$i) : 0; print "i: $i\n";'

2017-07-06 Thread Chas. Owens
On Thu, Jul 6, 2017 at 9:33 AM hw wrote: > False and true are genuinely numeric. You can´t say for a string > whether it is true or false; it is a string. > This is not a true statement in Perl. All values in Perl can be true or false. And the prototypical true and false values, PL_sv_yes and

Re: perl -e 'my $i = 0; $i = defined($i) ? (!!$i) : 0; print "i: $i\n";'

2017-07-06 Thread Chas. Owens
e). It is a dualvar that > contains the empty string, the int 0 and the double 0.0. depending on the > context the value is used in, it will be one of those values. > > > > Many people think it is an empty string because the print function > forces string context. > > >

Re: perl -e 'my $i = 0; $i = defined($i) ? (!!$i) : 0; print "i: $i\n";'

2017-07-06 Thread hw
X Dungeness wrote: It's about what unary ! (bang operator) does to the operand Here's the dissonance: perl -E '$x=0; say "x=$x"; $x = !!$x; say "x=$x"' x=0 x= It behaves as you expect until you "bang" it twice. I found a good explanation

Re: perl -e 'my $i = 0; $i = defined($i) ? (!!$i) : 0; print "i: $i\n";'

2017-07-06 Thread hw
string because the print function forces string context. perl -e 'my $i =0; $i = defined($i) ? (!!$i) : 0; use Data::Dumper; print Dumper($i);' A printing function should not force a context but use the context it is operating in. How do you print something without having a stri

Re: perl -e 'my $i = 0; $i = defined($i) ? (!!$i) : 0; print "i: $i\n";'

2017-07-06 Thread hw
wrote: Hi, can someone please explain this: perl -e 'my $i = 0; $i = defined($i) ? (!!$i) : 0; print "i: $i\n";' i: Particularly: + Why doesn´t it print 1? Because !!$i is zero + How is this not a bug? Nope, no bug. + What is being printed here? !!$i which

Re: perl -e 'my $i = 0; $i = defined($i) ? (!!$i) : 0; print "i: $i\n";'

2017-07-01 Thread X Dungeness
It's about what unary ! (bang operator) does to the operand Here's the dissonance: perl -E '$x=0; say "x=$x"; $x = !!$x; say "x=$x"' x=0 x= It behaves as you expect until you "bang" it twice. I found a good explanation in the Camel: "Unar

Re: perl -e 'my $i = 0; $i = defined($i) ? (!!$i) : 0; print "i: $i\n";'

2017-07-01 Thread John Harris
What are these emails really about? On Jul 1, 2017 2:42 PM, "Chas. Owens" wrote: > > > On Sat, Jul 1, 2017, 12:44 Shlomi Fish wrote: > >> Hi Shawn! >> >> On Sat, 1 Jul 2017 11:32:30 -0400 >> Shawn H Corey wrote: >> >> > !!$i which is !(!(0)) which is !(1) which is 0 >> > >> >> I suspect !1 ret

Re: perl -e 'my $i = 0; $i = defined($i) ? (!!$i) : 0; print "i: $i\n";'

2017-07-01 Thread Chas. Owens
On Sat, Jul 1, 2017, 12:44 Shlomi Fish wrote: > Hi Shawn! > > On Sat, 1 Jul 2017 11:32:30 -0400 > Shawn H Corey wrote: > > > !!$i which is !(!(0)) which is !(1) which is 0 > > > > I suspect !1 returns an empty string in scalar context. > !1 returns PL_sv_no (an internal scalar variable). It is

Re: perl -e 'my $i = 0; $i = defined($i) ? (!!$i) : 0; print "i: $i\n";'

2017-07-01 Thread Shlomi Fish
>> On Sat, 1 Jul 2017 17:27:02 +0200 > >> hw wrote: > >> > >>> > >>> Hi, > >>> > >>> can someone please explain this: > >>> > >>> > >>> perl -e 'my $i = 0; $i = defined($i)

Re: perl -e 'my $i = 0; $i = defined($i) ? (!!$i) : 0; print "i: $i\n";'

2017-07-01 Thread Shlomi Fish
Hi Shawn! On Sat, 1 Jul 2017 11:32:30 -0400 Shawn H Corey wrote: > On Sat, 1 Jul 2017 17:27:02 +0200 > hw wrote: > > > > > Hi, > > > > can someone please explain this: > > > > > > perl -e 'my $i = 0; $i = defined($i) ? (!!$i)

Re: perl -e 'my $i = 0; $i = defined($i) ? (!!$i) : 0; print "i: $i\n";'

2017-07-01 Thread Shawn H Corey
On Sat, 1 Jul 2017 17:27:02 +0200 hw wrote: > > Hi, > > can someone please explain this: > > > perl -e 'my $i = 0; $i = defined($i) ? (!!$i) : 0; print "i: $i\n";' > i: > > > Particularly: > > > + Why doesn´t it print 1? Bec

perl -e 'my $i = 0; $i = defined($i) ? (!!$i) : 0; print "i: $i\n";'

2017-07-01 Thread hw
Hi, can someone please explain this: perl -e 'my $i = 0; $i = defined($i) ? (!!$i) : 0; print "i: $i\n";' i: Particularly: + Why doesn´t it print 1? + How is this not a bug? + What is being printed here? + How do you do what I intended in perl? -- To unsubscrib

Re: perl -E

2012-02-24 Thread Brandon McCaig
On 2012-02-24 10:32:37 -0500, Steve Bertrand wrote: > Hi all, Hello: > Lately, I have seen many command-line one-liners floating around > with the -E argument: > > perl -E '#do stuff' > > Could somebody kindly remind me which perldoc I need to review to > find

Re: perl -E

2012-02-24 Thread Alvin Ramos
perl --help Will explain what the switches do... Regards... On Feb 24, 2012, at 10:32 AM, Steve Bertrand wrote: > Hi all, > > Lately, I have seen many command-line one-liners floating around with the -E > argument: > > perl -E '#do stuff' > > Could someb

Re: perl -E

2012-02-24 Thread Shawn H Corey
On 12-02-24 10:32 AM, Steve Bertrand wrote: Hi all, Lately, I have seen many command-line one-liners floating around with the -E argument: perl -E '#do stuff' Could somebody kindly remind me which perldoc I need to review to find out about the differences between -e and -E? Steve

perl -E

2012-02-24 Thread Steve Bertrand
Hi all, Lately, I have seen many command-line one-liners floating around with the -E argument: perl -E '#do stuff' Could somebody kindly remind me which perldoc I need to review to find out about the differences between -e and -E? Steve -- To unsubscribe, e-mail: beginner

Re: [Meta] Big examples as perl -e lines with single quotes [was Re: being smart about script structure]

2010-02-23 Thread Mike McClain
On Tue, Dec 22, 2009 at 02:29:53PM +0200, Shlomi Fish wrote: > Hi Dr. Ruud! (and all). > > See below for my response. > > On Monday 21 Dec 2009 22:03:07 Dr.Ruud wrote: > > > > perl -wle' > > my @x = 0 .. 3; > > print "@x"; > > ++$_ for grep $_, @x; > > print "@x"; > > +

[Meta] Big examples as perl -e lines with single quotes [was Re: being smart about script structure]

2009-12-22 Thread Shlomi Fish
Hi Dr. Ruud! (and all). See below for my response. On Monday 21 Dec 2009 22:03:07 Dr.Ruud wrote: > Bryan R Harris wrote: > >> perl -wle ' > >> > >> sub inc{ ++$_ for @_ } > >> > >> my @x = 1 .. 5; > >> > >> inc @x; > >> > >> print "@x"; > >> ' > >> 2 3 4 5 6 > > > > FYI, the r

Re: use module on perl -e

2009-11-10 Thread Shawn H Corey
Orchid Fairy (兰花仙子) wrote: > Hello John & list, > > We could use a module in one-liner perl command as: > > perl -MPOSIX -e ''; > > But if I want to use something like: > > use POSIX qw/strftime/; > > how to do it with perl command line? > > Thanks. > perl -MPOSIX=strftime -e 'print strftim

use module on perl -e

2009-11-10 Thread 兰花仙子
Hello John & list, We could use a module in one-liner perl command as: perl -MPOSIX -e ''; But if I want to use something like: use POSIX qw/strftime/; how to do it with perl command line? Thanks. -- To unsubscribe, e-mail: beginners-unsubscr...@perl.org For additional commands, e-mail: beg

Re: Input from bash shell to perl -e

2009-03-30 Thread D. Crouse
Thanks :) On Mon, Mar 30, 2009 at 12:02 PM, John W. Krahn wrote: > D. Crouse wrote: >> >> I have a perl -e function in my .bashrc file. >> This sources in the perl -e function so I can run it by just the command >> name. >> I'm having trouble with the su

Re: Input from bash shell to perl -e

2009-03-30 Thread John W. Krahn
D. Crouse wrote: I have a perl -e function in my .bashrc file. This sources in the perl -e function so I can run it by just the command name. I'm having trouble with the substitution of my $1 bash variable into the perl -e function. Here is what I have so far. grepi () { perl -ne &

Re: Input from bash shell to perl -e

2009-03-30 Thread D. Crouse
, D. Crouse wrote: > I have a perl -e function in my .bashrc file. > This sources in the perl -e function so I can run it by just the command name. > I'm having trouble with the substitution of my $1 bash variable into > the perl -e function. > > Here is what I have so far.

Input from bash shell to perl -e

2009-03-30 Thread D. Crouse
I have a perl -e function in my .bashrc file. This sources in the perl -e function so I can run it by just the command name. I'm having trouble with the substitution of my $1 bash variable into the perl -e function. Here is what I have so far. grepi () { perl -ne 'BEGIN {$/ = "

Re: Why doesn't this work: perl -e "@s=([1,2],[3,4]); print $s[0][0];"

2008-10-31 Thread John W. Krahn
Zembower, Kevin wrote: (This should probably be an easy one for someone.} Why doesn't this work: [EMAIL PROTECTED]:/usr/local/src/rrd$ perl -e "@s=(["a","b"],["c","d"]);print $s[0][0];" syntax error at -e line 1, near "][&quo

RE: Why doesn't this work: perl -e "@s=([1,2],[3,4]); print $s[0][0];"

2008-10-31 Thread Zembower, Kevin
Oh, it was that simple. Thanks so much, Paul. -Kevin -Original Message- From: Paul Johnson [mailto:[EMAIL PROTECTED] Sent: Friday, October 31, 2008 1:42 PM To: Zembower, Kevin Cc: 'beginners@perl.org' Subject: Re: Why doesn't this work: perl -e "@s=([1,2],[3,4]); prin

Re: Why doesn't this work: perl -e "@s=([1,2],[3,4]); print $s[0][0];"

2008-10-31 Thread Paul Johnson
On Fri, Oct 31, 2008 at 01:34:05PM -0400, Zembower, Kevin wrote: > (This should probably be an easy one for someone.} > > Why doesn't this work: > [EMAIL PROTECTED]:/usr/local/src/rrd$ perl -e "@s=(["a","b"],["c","d"]);print > $s

Why doesn't this work: perl -e "@s=([1,2],[3,4]); print $s[0][0];"

2008-10-31 Thread Zembower, Kevin
(This should probably be an easy one for someone.} Why doesn't this work: [EMAIL PROTECTED]:/usr/local/src/rrd$ perl -e "@s=(["a","b"],["c","d"]);print $s[0][0];" syntax error at -e line 1, near "][" Execution of -e aborted due to

Re: perl -e equivalent of short script...

2007-03-22 Thread Chas Owens
On 3/22/07, Alan Campbell <[EMAIL PROTECTED]> wrote: >> sounds like advice is to not bother w/ perl -e. Seems a pity. Looked like a perfect job for perl -e but perhaps its pushing it a bit. I think the advice is not so much not to use perl -e, but rather that you should be using

Re: perl -e equivalent of short script...

2007-03-22 Thread Tom Phoenix
On 3/22/07, Alan Campbell <[EMAIL PROTECTED]> wrote: >> true, but I'm tweaking the orig array in-place. So how to modify a given element if I dont have some index? With foreach, you don't need an index. The control variable of a foreach isn't a copy of the array element; it *is* the element of

Re: perl -e equivalent of short script...

2007-03-22 Thread Alan Campbell
hello, Good questions. > I'm trying to use cmd line perl -e to do some fairly basic sed-style > find/replace. Why don't you just use sed for that, if you're not doing the main program in Perl? Maybe I'm misunderstanding you, but it sounds like you're saying th

Re: perl -e equivalent of short script...

2007-03-21 Thread Tom Phoenix
On 3/21/07, Alan Campbell <[EMAIL PROTECTED]> wrote: I'm trying to use cmd line perl -e to do some fairly basic sed-style find/replace. Why don't you just use sed for that, if you're not doing the main program in Perl? Maybe I'm misunderstanding you, but it soun

perl -e equivalent of short script...

2007-03-21 Thread Alan Campbell
hello folks, I'm trying to use cmd line perl -e to do some fairly basic sed-style find/replace. Was able to get first few things working but stumbled when I wanted to do the following - given an i/p (piped o/p from a previous perl -e cmd on DOS) of... dtor_list.obj: newnothro

Re: Simplify perl -e '$a = [1,2,3,4,7]; print $a->[$#{@$a}]'

2005-03-14 Thread marcos rebelo
TED]> wrote: > > -Original Message- > > From: Wiggins d'Anconia [mailto:[EMAIL PROTECTED] > > Sent: Thursday, March 10, 2005 8:55 AM > > To: Marcos Rebelo > > Cc: Perl Beginners > > Subject: Re: Simplify perl -e '$a = [1,2,3,4,7]; print $a->

Re: Simplify perl -e '$a = [1,2,3,4,7]; print $a->[$#{@$a}]'

2005-03-12 Thread Hendrik Maryns
Jonathan Paton schreef: You should not fiddle with $[ though. Unless you are creating an entry into the obfuscated code contest or a YAPH. Thanks for the idea :) @words = ("another ", "hacker\n", "Just ", "Perl "); eval '$[=' . $_ . ';print $words[3]' for 1, 3, 0, 2; The eval is required because y

Re: Simplify perl -e '$a = [1,2,3,4,7]; print $a->[$#{@$a}]'

2005-03-12 Thread Jonathan Paton
> You should not fiddle with $[ though. Unless you are creating an > entry into the obfuscated code contest or a YAPH. Thanks for the idea :) @words = ("another ", "hacker\n", "Just ", "Perl "); eval '$[=' . $_ . ';print $words[3]' for 1, 3, 0, 2; The eval is required because you can only set $_

Re: Simplify perl -e '$a = [1,2,3,4,7]; print $a->[$#{@$a}]'

2005-03-11 Thread Gerhard Meier
On Thu, Mar 10, 2005 at 11:10:06AM -0500, Wiggins d'Anconia wrote: > >Btw ... What perldoc can I read to read about '$#'? > > Not sure, a quick glance at perldata discusses the -1 index usage, but > didn't turn up $# that I could see. Its in the books :-). wiggim$ perldoc perldata | fgrep -c '$#

RE: Simplify perl -e '$a = [1,2,3,4,7]; print $a->[$#{@$a}]'

2005-03-10 Thread Jenda Krynicky
From: "Larsen, Errin M HMMA/IT" <[EMAIL PROTECTED]> > # [EMAIL PROTECTED] will be the number of elements in the array referenced > by > $a, minus one (or, '4', in this example) Well, yes most likely it will be, but it doesn't have to ;-) $#array is defined as the highest index in the array. Th

Fwd: Simplify perl -e '$a = [1,2,3,4,7]; print $a->[$#{@$a}]'

2005-03-10 Thread Platzhappyd
In a message dated 3/10/2005 8:00:12 AM Pacific Standard Time, [EMAIL PROTECTED] writes: beginners@perl.org Isn't this a classic example of LIFO in action? Brilliant little snippet! One could say "Less Is More", sometimes :-) Rich Platz --- Begin Message --- <> > > # or, since [EMAIL PROTECT

Re: Simplify perl -e '$a = [1,2,3,4,7]; print $a->[$#{@$a}]'

2005-03-10 Thread Wiggins d'Anconia
Larsen, Errin M HMMA/IT wrote: <> # or, since [EMAIL PROTECTED] will always be the index of the last element of the array: print $a->[-1] Did I get it right? That looks like homework to me ... Why would you ever do that in a practical script? --Errin I think you got it. Ever want the last

RE: Simplify perl -e '$a = [1,2,3,4,7]; print $a->[$#{@$a}]'

2005-03-10 Thread Larsen, Errin M HMMA/IT
<> > > # or, since [EMAIL PROTECTED] will always be the index of the last > element of > > the > > array: > > print $a->[-1] > > > > > > Did I get it right? That looks like homework to me ... Why > would you > > ever do that in a practical script? > > > > --Errin > > > > I think you

Re: Simplify perl -e '$a = [1,2,3,4,7]; print $a->[$#{@$a}]'

2005-03-10 Thread Wiggins d'Anconia
Larsen, Errin M HMMA/IT wrote: -Original Message- From: Wiggins d'Anconia [mailto:[EMAIL PROTECTED] Sent: Thursday, March 10, 2005 8:55 AM To: Marcos Rebelo Cc: Perl Beginners Subject: Re: Simplify perl -e '$a = [1,2,3,4,7]; print $a->[EMAIL PROTECTED]' Marcos Reb

RE: Simplify perl -e '$a = [1,2,3,4,7]; print $a->[$#{@$a}]'

2005-03-10 Thread Larsen, Errin M HMMA/IT
> -Original Message- > From: Wiggins d'Anconia [mailto:[EMAIL PROTECTED] > Sent: Thursday, March 10, 2005 8:55 AM > To: Marcos Rebelo > Cc: Perl Beginners > Subject: Re: Simplify perl -e '$a = [1,2,3,4,7]; print $a->[EMAIL PROTECTED]' > > &g

RE: Simplify perl -e '$a = [1,2,3,4,7]; print $a->[$#{@$a}]'

2005-03-10 Thread Marcos Rebelo
This really works, I didn't now that. Thanks Marcos Rebelo -Original Message- From: Wiggins d'Anconia [mailto:[EMAIL PROTECTED] Sent: quinta-feira, 10 de Março de 2005 14:55 To: Marcos Rebelo Cc: Perl Beginners Subject: Re: Simplify perl -e '$a = [1,2,3,4,7]; print $a-&g

RE: Simplify perl -e '$a = [1,2,3,4,7]; print $a->[$#{@$a}]'

2005-03-10 Thread Manav Mathur
array an easier method(if you think so) might be perl -e '$a=[1,2,3,4,76]; print $a->[EMAIL PROTECTED]' -Original Message- From: Marcos Rebelo [mailto:[EMAIL PROTECTED] Sent: Thursday, March 10, 2005 8:23 PM To: Perl Beginners Subject: Simplify perl -e '$a = [1,2,

Re: Simplify perl -e '$a = [1,2,3,4,7]; print $a->[$#{@$a}]'

2005-03-10 Thread Harald Ashburner
On Thu, 10 Mar 2005 14:52:36 -, Marcos Rebelo <[EMAIL PROTECTED]> wrote: > This is correctly printing '7' but '$a->[EMAIL PROTECTED]' seems to be > encripted > code. > > Can I write this in a cleaner way? > perl -e '$a = [1,2,3,4,7]; print

Re: Simplify perl -e '$a = [1,2,3,4,7]; print $a->[$#{@$a}]'

2005-03-10 Thread Wiggins d'Anconia
Marcos Rebelo wrote: This is correctly printing '7' but '$a->[EMAIL PROTECTED]' seems to be encripted code. Can I write this in a cleaner way? $a->[-1]; ??? http://danconia.org -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]

Simplify perl -e '$a = [1,2,3,4,7]; print $a->[$#{@$a}]'

2005-03-10 Thread Marcos Rebelo
This is correctly printing '7' but '$a->[EMAIL PROTECTED]' seems to be encripted code. Can I write this in a cleaner way? -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]

RE: using script vars and routines when doing backtick execution of perl -e from within the script

2002-12-18 Thread Dan Muey
TED]] Sent: Tuesday, December 17, 2002 1:26 PM To: Dan Muey Cc: [EMAIL PROTECTED] Subject: Re: using script vars and routines when doing backtick execution of perl -e from within the script eval may be what you want. Check out: perldoc -f eval Or you might have to pass a -M or a 'require' s

Re: using script vars and routines when doing backtick execution of perl -e from within the script

2002-12-17 Thread Wiggins d'Anconia
eval may be what you want. Check out: perldoc -f eval Or you might have to pass a -M or a 'require' statement to your perl -e line, if I am understanding at all correctly. http://danconia.org Dan Muey wrote: I have a need to get perl code from a database into a variabole and then

using script vars and routines when doing backtick execution of perl -e from within the script

2002-12-17 Thread Dan Muey
_db; $var = 1; sub do { print "Monkey"; } print `/usr/bin/perl -e '$input'`; # if $input just has : print "HI \n"; OUTPUT : HI if $input has : print "Number $var \n"; OUTPUT : Number if $input has &do; OUTPUT : Undefi