[28013] in Perl-Users-Digest
Perl-Users Digest, Issue: 9377 Volume: 10
daemon@ATHENA.MIT.EDU (Perl-Users Digest)
Sun Jun 25 18:05:54 2006
Date: Sun, 25 Jun 2006 15:05:06 -0700 (PDT)
From: Perl-Users Digest <Perl-Users-Request@ruby.OCE.ORST.EDU>
To: Perl-Users@ruby.OCE.ORST.EDU (Perl-Users Digest)
Perl-Users Digest Sun, 25 Jun 2006 Volume: 10 Number: 9377
Today's topics:
[OT] GUIs [was: "Re: Native language versions"] <bik.mido@tiscalinet.it>
[OT] mobiles [was: "Re: Native language versions"] <bik.mido@tiscalinet.it>
Code does work in different packages only <ferry.bolhar@chello.at>
Re: Code does work in different packages only (Anno Siegel)
Re: languages with full unicode support <mumia.w.18.spam+nospam.usenet@earthlink.net>
Re: languages with full unicode support <dnew@san.rr.com>
Re: Native language versions <bik.mido@tiscalinet.it>
Re: Need Search::Binary examples <nomail@sorry.com>
Re: Need Search::Binary examples <someone@example.com>
Re: Newbie precompile/PPM question mgarrish@gmail.com
Re: nl_langinfo - problem <tadmc@augustmail.com>
Re: nl_langinfo - problem <adamsmith@econ.com>
Re: nl_langinfo - problem <David.Squire@no.spam.from.here.au>
Re: Termination and type systems <marshall.spight@gmail.com>
Digest Administrivia (Last modified: 6 Apr 01) (Perl-Users-Digest Admin)
----------------------------------------------------------------------
Date: Sun, 25 Jun 2006 23:23:23 +0200
From: Michele Dondi <bik.mido@tiscalinet.it>
Subject: [OT] GUIs [was: "Re: Native language versions"]
Message-Id: <u3rt929u9rcph849caoc7aojiarjvsb5bs@4ax.com>
On Sat, 24 Jun 2006 12:24:45 +0200, "Peter J. Holzer"
<hjp-usenet2@hjp.at> wrote:
>And that's a good thing. I'm not pining for the "good old days". But I
>think that current GUIs (which haven't changed all that much since XEROX
>invented the mouse in the 1970s) aren't optimal either. I see all the
>time people doing repetitive tasks, for which on Linux I would write a
>five line shell script and be done with it. And I ask myself how the GUI
>user could be enabled to write that script. Or let's formulate this in a
Really, this comes out so often... having started with a cli, albeit a
very poor one just like the old command.com was, I have a natural
inclination for clis. Of course the discovery of *NIX shells with the
arrival of Linux was such a shift of perspective in terms of power at
hand!!
So we can see all the time how people, coming especially from the Win*
world, have a hard time trying to do something with two or three
buttons of a mouse that we can do with selected buttons out of 100 or
so on a keyboard. In a fraction of the time that it takes them to
reach for the mouse and move the cursor to the correct point...
Nevertheless this is *not* the cli side of a cli vs. gui flame. Indeed
guis are attracting, handy, respectable and there are jobs they're
better suited to. All in all they're complementary.
==> The key point of this reflection is: shells are a means to manage
programs. So is a window manager. Then there are text based commands
to do system administration. Some are shell commands and others
external programs. Their graphical counterparts are typically embedded
in a file manager. Most of the time I prefer the cmd line tools, but
in selected cases a file manager is better suited for some particular
job. OTOH I bet most of you often find it easier to type 'someprogram
&' in some terminal rather than searching someprogram in a menu or set
of icons or some such! So... I'm generally a big supporter of the
concept of separation (the right tool for the right job, and all
interacting nicely to give the possibility of building something more
complex together), but what I really miss is a beast that is at the
same time a window manager, a file manager, and a (text-like) shell.
End of the free-thought-session,
Michele
--
{$_=pack'B8'x25,unpack'A8'x32,$a^=sub{pop^pop}->(map substr
(($a||=join'',map--$|x$_,(unpack'w',unpack'u','G^<R<Y]*YB='
.'KYU;*EVH[.FHF2W+#"\Z*5TI/ER<Z`S(G.DZZ9OX0Z')=~/./g)x2,$_,
256),7,249);s/[^\w,]/ /g;$ \=/^J/?$/:"\r";print,redo}#JAPH,
------------------------------
Date: Sun, 25 Jun 2006 23:23:28 +0200
From: Michele Dondi <bik.mido@tiscalinet.it>
Subject: [OT] mobiles [was: "Re: Native language versions"]
Message-Id: <i6vt929f4aph4k3ov9k81hfujbfl9vmfje@4ax.com>
On Sat, 24 Jun 2006 12:24:45 +0200, "Peter J. Holzer"
<hjp-usenet2@hjp.at> wrote:
>network-accessible command/status interface would be useful for both). A
>modern mobile phone OTOH is almost a general purpose computer. There are
>a few things for which it is unsuitable due to its small size, but apart
>from that there isn't much difference to a desktop PC (and it's
>certainly more powerful than the first computers I used were).
Indeed mobiles are getting more and more complex and feature rich, and
now a Java VM is commonly found of them. But I'd rather prefer them to
be somewhat simpler and allow a programmable low-level system for the
daring, instead. Something in forth, say, or io
(<http://www.iolanguage.org>), maybe.
Michele
--
{$_=pack'B8'x25,unpack'A8'x32,$a^=sub{pop^pop}->(map substr
(($a||=join'',map--$|x$_,(unpack'w',unpack'u','G^<R<Y]*YB='
.'KYU;*EVH[.FHF2W+#"\Z*5TI/ER<Z`S(G.DZZ9OX0Z')=~/./g)x2,$_,
256),7,249);s/[^\w,]/ /g;$ \=/^J/?$/:"\r";print,redo}#JAPH,
------------------------------
Date: Sun, 25 Jun 2006 21:35:19 +0200
From: "Ferry Bolhar" <ferry.bolhar@chello.at>
Subject: Code does work in different packages only
Message-Id: <2cb06$449ee579$54718838$27709@news.chello.at>
Hi folks,
While looking at the code in vars.pm (the "use vars" pragma), I tried to
reproduce its behaviour:
use strict;
use vars $x;
$x = 3;
by writing:
use strict;
BEGIN {
*main::x = \$main::x;
}
$x = 3;
instead. However, this code doesnt work, I get the messages
Variable "$x" not imported at line 5
Global symbol "$x" requires explicit package name at line 5
(Line 5 contains the assignment to scalar $x)
However, when including a "package hugo;" in the BEGIN block (or even
outside, and a "package main;" thereafter), the code works as expected. It
also works when the BEGIN block runs in package "main" and the scalar
assignment in a different package. It fails, whenever both assignments
(typeglob and scalar) are executed in the same package.
Can someone explain why? The typeglob assignment occurs full-qualified, so
it shouldn't matter which package is currently active. However, it does.
Why?
Thanks for your answers and kind greetings from Vienna,
Ferry
------------------------------
Date: 25 Jun 2006 21:31:33 GMT
From: anno4000@radom.UUCP (Anno Siegel)
Subject: Re: Code does work in different packages only
Message-Id: <4g8dllF1m4r6nU1@news.dfncis.de>
Ferry Bolhar <ferry.bolhar@chello.at> wrote in comp.lang.perl.misc:
>Hi folks,
>
>While looking at the code in vars.pm (the "use vars" pragma), I tried to
>reproduce its behaviour:
>
>use strict;
>use vars $x;
>$x = 3;
>
>by writing:
>
>use strict;
>BEGIN {
> *main::x = \$main::x;
>}
>$x = 3;
>
>instead. However, this code doesnt work, I get the messages
>
>Variable "$x" not imported at line 5
>Global symbol "$x" requires explicit package name at line 5
>
>(Line 5 contains the assignment to scalar $x)
>
>However, when including a "package hugo;" in the BEGIN block (or even
>outside, and a "package main;" thereafter), the code works as expected. It
>also works when the BEGIN block runs in package "main" and the scalar
>assignment in a different package. It fails, whenever both assignments
>(typeglob and scalar) are executed in the same package.
>
>Can someone explain why? The typeglob assignment occurs full-qualified, so
>it shouldn't matter which package is currently active. However, it does.
>Why?
That's a documented fact. Unfortunately I forget where exactly it is
documented, but an assignment to a typeglob only counts as importation
when if happens in a package that is different from the typeglob's.
Anno
------------------------------
Date: Sun, 25 Jun 2006 19:27:35 GMT
From: "Mumia W." <mumia.w.18.spam+nospam.usenet@earthlink.net>
Subject: Re: languages with full unicode support
Message-Id: <HsBng.1164$NP4.480@newsread1.news.pas.earthlink.net>
Xah Lee wrote:
> Languages with Full Unicode Support
>
> As far as i know, Java and JavaScript are languages with full, complete
> unicode support. That is, they allow names to be defined using unicode.
> (the JavaScript engine used by FireFox support this)
>
> As far as i know, here's few other lang's status:
>
> C → No.
> Python → No.
> Perl → No.
Perl supports unicode in its core, and that include identifier names
using exotic characters.
> Haskell → Yes by the spec, but no on existing compilers.
Erm, isn't this an effective "No"?
> JavaScript → No in general. Firefox's engine do support it.
> Lisps → No.
> unix shells (bash) → No. (this probably applies to all unix shells)
> Java → Yes and probably beats all. However, there may be a bug in 1.5
> compiler.
>
> Also, there appears to be a bug with Java 1.5's unicode support. The
> following code compiles fine in 1.4, but under 1.5 the compiler
> complains about the name x1.str★.
>
> class 方 {
> String str北 =
> "北方有佳人,絕世而獨立。\n一顧傾人城,再顧傾人国。\n寧不知倾城与倾国。\n佳人難再得。";
> String str★="θπαβγλϕρκψ ≤≥≠≈⊂⊃⊆⊇∈
> ⅇⅈⅉ∞∆° ℵℜℂℝℚℙℤ ℓ∟∠∡ ∀∃ ∫∑∏
> ⊕⊗⊙⊚⊛∘∙ ★☆";
>
> }
>
> class UnicodeTest {
> public static void main(String[] arg) {
> 方 x1 = new 方();
> System.out.println( x1.str北 );
> System.out.println( x1.str★ );
> }
> }
>
> If you know a lang that does full unicode support, please let me know.
> Thanks.
>
> Xah
> xah@xahlee.org
> ∑ http://xahlee.org/
Perl is coming close to having full unicode support. '★' is not an
alphabetic or numeric character and has no place in an identifier. That
is why both Perl and Java reject it. Let's see what Perl can do:
#!/usr/bin/perl
use strict;
use warnings;
use utf8;
package 方;
our $str北="北方有佳人,絕世而獨立。\n一顧傾人城,再顧傾人国。"
. "\n寧不知倾城与倾国。\n佳人難再得。";
our $strβ = "θπαβγλϕρκψ ≤≥≠≈⊂⊃⊆⊇∈
ⅇⅈⅉ∞∆° ℵℜℂℝℚℙℤ ℓ∟∠∡ ∀∃ ∫∑∏
⊕⊗⊙⊚⊛∘∙ ★☆";
sub new {
my $class = shift;
my $self = {
str北 => \$str北,
'strβ' , \$strβ,
};
bless ($self, $class);
}
sub str北 {
${ (shift)->{str北} };
}
sub strβ {
${ (shift)->{strβ} };
};
package Test方;
sub do {
binmode STDOUT, 'utf8';
my $obj方 = 方->new();
$\ = "\n";
print $obj方->str北();
print '----------------';
print $obj方->strβ();
}
Test方->do();
------------------------------
Date: Sun, 25 Jun 2006 20:22:46 GMT
From: Darren New <dnew@san.rr.com>
Subject: Re: languages with full unicode support
Message-Id: <qgCng.16196$Z67.455@tornado.socal.rr.com>
Xah Lee wrote:
> If you know a lang that does full unicode support, please let me know.
Tcl. You may have to modify the "source" command to get it to default
to something other than the system encoding, but this is trivial in Tcl.
--
Darren New / San Diego, CA, USA (PST)
Native Americans used every part
of the buffalo, including the wings.
------------------------------
Date: Sun, 25 Jun 2006 23:23:29 +0200
From: Michele Dondi <bik.mido@tiscalinet.it>
Subject: Re: Native language versions
Message-Id: <3dvt92tqqr683n74emamsaan3du04qb57f@4ax.com>
On Sat, 24 Jun 2006 12:24:45 +0200, "Peter J. Holzer"
<hjp-usenet2@hjp.at> wrote:
>Right. Actually, it goes deeper. Some people have problems with the
>concept of a loop, or a variable. These people will probably never be
<joke>
They may just program in a functional language which has no notion of
variable or loop, and just use recursion.
</joke>
Michele
--
{$_=pack'B8'x25,unpack'A8'x32,$a^=sub{pop^pop}->(map substr
(($a||=join'',map--$|x$_,(unpack'w',unpack'u','G^<R<Y]*YB='
.'KYU;*EVH[.FHF2W+#"\Z*5TI/ER<Z`S(G.DZZ9OX0Z')=~/./g)x2,$_,
256),7,249);s/[^\w,]/ /g;$ \=/^J/?$/:"\r";print,redo}#JAPH,
------------------------------
Date: Sun, 25 Jun 2006 12:43:47 -0700
From: Arvin Portlock <nomail@sorry.com>
To: "Peter J. Holzer" <hjp-usenet2@hjp.at>
Subject: Re: Need Search::Binary examples
Message-Id: <449EE773.6000301@sorry.com>
Peter J. Holzer wrote:
> Search::Binary is obviously written to search files, not arrays. But it
> can be used to search arrays, too. Some of the generality for searching
> files isn't needed for searching arrays (for example, in a file not
> every possible position is the start of a record).
> I've changed your script to use Search::Binary, and included the
> relevant part of the documentation before each line. That's quite a lot
> of documentation per line of code, I hope it helps you to make sense
> both of the docs and the code.
Hey, it works! I can't thank you enough for the example. I'll
be interested to do some benchmarks with a real data set to see
how much time I saved over something like simply incrementing
the initial array index for each random number when possible.
Still, this is a technique I've wanted to add to my tool belt
for some time.
Some of the documentation makes a bit more sense now. $handle
was confusing to me despite the comments in the documentation.
I probably would have named it $param myself. I guarantee I
NEVER would have figured out what I was supposed to do in $read,
though I understood at least that it is a callback. I've never
familiarized myself with specific binary search algorithms so
that's probably why the documentation was so opaque to me. Though
I thought modern libraries were supposed to shield users from
having to know algorithms.
The program is for QA of one of the large book scanning
collaborations between commercial search engines and libraries.
The vendor returns batches of scanned image files of around
2.5 million files and a random sampling is taken from that
and looked at by a human being. My program will read the
vendor's tab-delimited data and grab the selected files from
a website. Partial program below, minus the web grabbing
stuff which I haven't implemented yet.
Thanks again for your help!
use Term::ReadKey;
use Search::Binary;
use strict 'vars';
my $percent = 12;
my $textfile = $ARGV[0];
if ($textfile) {
if (-e $textfile) {
open (STATFILE, $textfile);
my ($current_sum, %cumulative_page_counts, %page_counts,
@first_pages, @last_pages);
while (my $line = <STATFILE>) {
if ($line =~ /^([^\t]+)\t(\d+)\s*$/) {
my $filename = $1;
my $pagecount = $2;
$cumulative_page_counts{$current_sum + 1} = $filename;
$page_counts{$filename} = $pagecount;
push @first_pages, $current_sum + 1;
$current_sum += $pagecount;
push @last_pages, $current_sum;
}
}
close (STATFILE);
my $randcount = int (($current_sum * ($percent / 100)) + .5);
my @random_numbers;
until ($#random_numbers + 1 >= $randcount) {
my $r = int (rand ($current_sum)) + 1;
push @random_numbers, $r unless grep (/^$r$/, @random_numbers);
}
foreach my $r (sort {$a <=> $b} @random_numbers) {
my $lastpos;
my $pos = binary_search (0, $#last_pages, $r,
sub {
my ($handle, $val, $pos) = @_;
$pos = $lastpos + 1 unless defined ($pos);
$lastpos = $pos;
return ($val <=> $handle->[$pos], $pos);
},
\@last_pages);
my $bookpage = ($r - $first_pages[$pos]) + 1;
my $filename = $cumulative_page_counts{$first_pages[$pos]};
# Grab file from website here
print "Cumulative page $r is page $bookpage in $filename\n";
}
} else {
print STDERR "I can't seem to find a file named\n";
print STDERR "$textfile.\n\n";
print STDERR "Press any key to exit this window and try again.\n";
ReadMode('cbreak');
my $key = ReadKey(0);
ReadMode('normal');
}
} else {
print STDERR "Hi. Don't just click the desktop icon to run this
program. That doesn't work.\n";
print STDERR "You need to drag your statistics file onto the desktop
icon and release it\n";
print STDERR "to run the program.\n\n";
print STDERR "Press any key to exit this window and try again.\n";
ReadMode('cbreak');
my $key = ReadKey(0);
ReadMode('normal');
}
__END__
E.g.,
%cumulative_page_counts = (
1 => file1,
237 => file2,
365 => file3,
872 => file4,
1084 => file5,
1481 => file6,
);
%page_counts = (
file1 => 236,
file2 => 128,
file3 => 507,
file4 => 212,
file5 => 397,
file6 => 78,
);
@first_pages = (1, 237, 365, 872, 1084, 1481);
@last_pages = (236, 364, 871, 1083, 1480, 1558);
------------------------------
Date: Sun, 25 Jun 2006 21:46:27 GMT
From: "John W. Krahn" <someone@example.com>
Subject: Re: Need Search::Binary examples
Message-Id: <TuDng.106361$771.95693@edtnps89>
Arvin Portlock wrote:
>
> The program is for QA of one of the large book scanning
> collaborations between commercial search engines and libraries.
> The vendor returns batches of scanned image files of around
> 2.5 million files and a random sampling is taken from that
> and looked at by a human being. My program will read the
> vendor's tab-delimited data and grab the selected files from
> a website. Partial program below, minus the web grabbing
> stuff which I haven't implemented yet.
>
> Thanks again for your help!
>
> use Term::ReadKey;
> use Search::Binary;
> use strict 'vars';
>
> my $percent = 12;
>
> my $textfile = $ARGV[0];
> if ($textfile) {
> if (-e $textfile) {
> open (STATFILE, $textfile);
>
> [snip]
>
> } else {
> print STDERR "I can't seem to find a file named\n";
> print STDERR "$textfile.\n\n";
> print STDERR "Press any key to exit this window and try again.\n";
> ReadMode('cbreak');
> my $key = ReadKey(0);
> ReadMode('normal');
> }
> } else {
You should *ALWAYS* verify that the file opened correctly. Even though the
stat() showed that the file exists that does not mean that you would be able
to open it. You should also include the $! and/or $^E variables to indicate
exactly why the file could not be opened.
Also, the string '0' is false so if you had a file named '0' you would not
find it. Use the defined() function to properly test whether a variable
contains a value.
if ( defined $textfile ) {
if ( open STATFILE, '<', $textfile ) {
[snip]
} else {
warn "Cannot open '$textfile' ", $! || $^E;
warn "Press any key to exit this window and try again.\n";
...
John
--
use Perl;
program
fulfillment
------------------------------
Date: 25 Jun 2006 14:24:30 -0700
From: mgarrish@gmail.com
Subject: Re: Newbie precompile/PPM question
Message-Id: <1151270670.869616.305680@y41g2000cwy.googlegroups.com>
Bart Lateur wrote:
> Jockser wrote:
>
> >ppm> install http://theoryx5.uwinnipeg.ca/ppms/appconfig.ppd
> >Error: Failed to download URL
> >http://theoryx5.uwinnipeg.ca/ppms/appconfig.ppd: 404 Not Found
>
> It would help if you used the proper case - internet URLs are case
> sensitive.
>
> <http://theoryx5.uwinnipeg.ca/ppms/AppConfig.ppd>
>
That depends on the underlying server/OS, and isn't even true in the
strictest of senses as domains are never case sensitive.
Matt
------------------------------
Date: Sun, 25 Jun 2006 13:02:26 -0500
From: Tad McClellan <tadmc@augustmail.com>
Subject: Re: nl_langinfo - problem
Message-Id: <slrne9tjti.fka.tadmc@magna.augustmail.com>
Adam Smith <adamsmith@econ.com> wrote:
> Well, I have always had issues with some of the proverbial "netiquette"
> concepts that appear out of the ether ad infinitum.
So long then.
> At the same time
> I'll be the first to admit ignorance and am receptive to education on
> the rationale behind some of the edicts.
You will only display good manners if the underlying reason for
good manners is _first_ explained to your satisfaction?
A more productive approach would be to use good manners even if you
don't see why, because many folks tire of explaining it over and
over, and will simply ignore you forevermore as the path of least
resistance.
> I would hope that there is some
> mirroring rationale for these as in the social world,
If by "social world" you mean apart from Usenet, then what happens
in other societies is irrelevant to what happens in the Usenet society.
> even though
> idiosyncratic and esoteric.
The rules of netiquette are not arbitrary, same as the rules of
etiquette in the "social world".
They become "rules" via a Darwinian "survival of the fittest".
Rules that avoid problems or make newsgroups run more smoothly live
long enough to become widely adopted. Those that don't deliver an
appropriate payoff die off.
> Ben Morrow wrote:
>
>> [newsgroups truncated and f'ups set]
>>
> What is "truncated and f'ups set" and how is this set?
By modifying the Newsgroups and Followup-To headers.
> And from the "multitude" of responses received I have not been very
> successful either. You were the only one responding so far after many days.
By your followup that I am now replying to, you have very likely
increased the odds of that unfavorable outcome for both this thread
and all of your future threads.
Hope the venting was worth it.
> Is there a "netiquette newsgroup or list" somewhere?
news.announce.newusers
news.newusers
news.newusers.questions
There are some further links in the Posting Guidelines that are
posted here frequently.
>> Please don't post to comp.lang.perl: it doesn't exist.
> Odd, it still comes in on my ISP Newsfeed, with several thousands
> messages, the last excluding mine => 6/21/06 9:31 AM
Having an ISP that doesn't properly maintain their news server is
not odd at all, it is all too common.
comp.lang.perl was rmgroup'd 10 years ago, your ISP has not gotten
that update yet, it would appear. I wonder what other changes over
the last 10 years you are missing out on?
You are being ill-served by their continuing to carry it, because you
think it is a valid place to ask, but the reality is that nobody with
clue (ie. the people that you *want* to be answering your question)
reads it anymore.
--
Tad McClellan SGML consulting
tadmc@augustmail.com Perl programming
Fort Worth, Texas
------------------------------
Date: Sun, 25 Jun 2006 11:13:12 -0700
From: Adam Smith <adamsmith@econ.com>
Subject: Re: nl_langinfo - problem
Message-Id: <UcCdnS1MU_8iTAPZnZ2dnUVZ_tSdnZ2d@speakeasy.net>
This is my last response to this issue: I have no intent to develop a
'tight pants' sitting on the pinnacle of nonsense and squirming with
tortured delight.
Ben Morrow wrote:
> Quoth Adam Smith <adamsmith@econ.com>:
>
>>Ben Morrow wrote:
>>
>>
>>>[newsgroups truncated and f'ups set]
>>>
>>
>>What is "truncated and f'ups set" and how is this set?
>
>
> I truncated the list of newsgroups in your article to clpmisc. I also
> set the 'Followup-To:' header: how you do this depends on your client.
>
>
>>>Quoth Adam Smith <adamsmith@econ.com>:
>>>
>>>
>>>>UNIX FreeBSD -V 4.9 O/S, i386 arch, Perl -V 5.8.2 Installation
>>>
>>>Please don't start a new thread with the same question: continue with
>>>the one you had.
>>>
>>
>>Well, I was adding a significantly new perspective to the question,
>>person who may have bypassed it previously may have an input based on
>>the new realization.
>
>
> No, you weren't. What you posted was a direct answer to my question.
> IIRC you actually posted the same article twice, once as a reply and
> once as a new thread: anyone who's going to ignore your reply is also
> going to ignore your new thread, they'll just think your trying to force
> them to take notice of you. This is not very polite.
>
Subject to debate, unless of course yours is the only valid one
My first post rel to a script debugging problem ==>
grep'ing seems to localize the problem in the libperl.so library
My second post rel to a systemwide Perl problem rather than a simple
script debugging problem Of course, it included previous posting
extracts as it addresses possible wider issues ==>
Actually discovered that this is an Installation Problem apparently.
Merely, launching Perl produces the Undefined symbol condition.
Suggestions sought
My THIRD POST WILL include an O/S cross posting and exploration of
possibly clues there
>
>>Is there a cuttoff period for this, is it arbitrarily set?
>
>
> No. Use your common sense.
>
Apparently, I am severely compromised, challenged or perhaps totally
lacking in this Department
>
>>Do you recall, 'gopher' and 'veronica' etc?
>
>
> No, I'm not that old.
>
Bless your soul, a newbie with solutions to all the world's problems.
Apparently, the universe centers on the newly discovered netiquette and
appropriate postings
>
>>>Please don't cross-post to so many groups: pick one that's most relevant
>>>(clpm in this case).
>>>
>>
>>ONE! Sounds like a 'religious' mantra, I did not use all perl groups. I
>>choose those that appeared applicable and would have attracted responses
>>from persons with likely know how.
>
>
> Such as... comp.lang.perl.modules? perl.beginners.cgi? How are those in
> any way more relevant than clpmisc?
>
So only clpmisc is relevant actually it is THE MOST RELEVANT! I shall
forever remember where homage is to be paid in the future.
> Since it's likely a system question rather than a perl one (though you
> may not have known that), comp.unix.bsd.freebsd.misc or some such may
> have been appropriate.
>
> Also, crossposting to alt.* is generally unwelcome here.
>
How am I to know where and with whom you et al. may have had 'fights',
philosophical and otherwise. Even assuming that knowledge is infused
universally why should I make 'your fight my fight', all I am seeking is
an answer to a problem that I have been addressing for over a week, >
1/52nd of a yr, still a significant fraction of my life
>
>>And from the "multitude" of responses received I have not been very
>>successful either. You were the only one responding so far after many days.
>
>
> Well, a lot of people here simply killfile large cross-posts. They are
> almost always trolls like Xah Lee.
>
Who is Xah Lee
>
>>>If you have a valid reason for cross-posting, please set followups.
>>>
>>
>>I hope the reasons cited above are actual reasons first and then valid
>>reasons too
>>I addressed the set followups issue earlier
>
>
> No, you said you didn't know how to do it. Ignorance is no excuse, when
> answers are so easy to find.
>
Que lastima, as said earlier I do intend to continue developing a normal
persona, a 'tight pants' and endless wanking about netiquette is not one
of my options
>
>>Is there a "netiquette newsgroup or list" somewhere?
>
>
> Google for it.
>
Yes I did, following your advice, didn't see any newsgroup per se, but
did find a reference to use of Followups with crossposting, of course
hoping that the responder's ISP provides a NewsFeed to that feed ? They
did not say it was a no! no!
This was probably the only significant benefit of this prolong diatribe
Perhaps you may see the need to set up an Institute of Netequette and
standardize the Rules & Regulations. I'll call you Mr. Chairman.
> Ben
>
------------------------------
Date: Sun, 25 Jun 2006 22:57:43 +0100
From: David Squire <David.Squire@no.spam.from.here.au>
Subject: Re: nl_langinfo - problem
Message-Id: <e7n0sn$n1i$1@news.ox.ac.uk>
Adam Smith wrote:
> This is my last response to this issue: I have no intent to develop a
> 'tight pants' sitting on the pinnacle of nonsense and squirming with
> tortured delight.
Bye Bye Adam.
That distant sound you can hear is your name hitting the killfiles of
many, many helpful people.
------------------------------
Date: 25 Jun 2006 13:02:45 -0700
From: "Marshall" <marshall.spight@gmail.com>
Subject: Re: Termination and type systems
Message-Id: <1151265765.438798.203480@r2g2000cwb.googlegroups.com>
David Hopwood wrote:
> Marshall wrote:
> > David Hopwood wrote:
> >
> >>A type system that required an annotation on all subprograms that do not
> >>provably terminate, OTOH, would not impact expressiveness at all, and would
> >>be very useful.
> >
> > Interesting. I have always imagined doing this by allowing an
> > annotation on all subprograms that *do* provably terminate. If
> > you go the other way, you have to annotate every function that
> > uses general recursion (or iteration if you swing that way) and that
> > seems like it might be burdensome.
>
> Not at all. Almost all subprograms provably terminate (with a fairly
> easy proof), even if they use general recursion or iteration.
Well, um, hmmm. If a subprogram uses recursion, and it is not
structural recursion, then I don't know how to go about proving
it terminates. Are the proof-termination techniques I don't
know about?
If we can specify a total order on the domain or some
subcomponents of the domain, and show that recursive
calls are always invoked with arguments less than (by
the order) those of the parent call, (and the domain is
well founded) then we have a termination proof.
(If we don't use recursion at all, and we only invoke
proven-terminating functions, same thing; actually
this is a degenerate case of the above.)
For iteration? Okay, a bounded for-loop is probably easy,
but a while loop? What about a function that calculates
the next prime number larger than its argument? Do we
have to embed a proof of an infinity of primes somehow?
That seems burdensome.
> If it were not the case that almost all functions provably terminate,
> then the whole idea would be hopeless.
I agree!
> If a subprogram F calls G, then
> in order to prove that F terminates, we probably have to prove that G
> terminates. Consider a program where only half of all subprograms are
> annotated as provably terminating. In that case, we would be faced with
> very many cases where the proof cannot be discharged, because an
> annotated subprogram calls an unannotated one.
Right, and you'd have to be applying the non-terminating annotation
all over the place.
> If, on the other hand, more than, say, 95% of subprograms provably
> terminate, then it is much more likely that we (or the inference
> mechanism) can easily discharge any particular proof involving more
> than one subprogram. So provably terminating should be the default,
> and other cases should be annotated.
Well, I can still imagine that the programmer doesn't care to have
non-termination examined for every part of his code. In which case,
he would still be required to add annotations even when he doesn't
care about a particular subprograms lack of a termination proof.
The pay-for-it-only-if-you-want-it approach has some benefits.
On the other hand, if it really is as common and easy as you
propose, then annotating only when no proof is available is
perhaps feasible.
I'm still a bit sceptical, though.
> I do not know how well such a type system would work in practice; it may
> be that typical programs would involve too many non-trivial proofs. This
> is something that would have to be tried out in a research language.
Yeah.
Marshall
------------------------------
Date: 6 Apr 2001 21:33:47 GMT (Last modified)
From: Perl-Users-Request@ruby.oce.orst.edu (Perl-Users-Digest Admin)
Subject: Digest Administrivia (Last modified: 6 Apr 01)
Message-Id: <null>
Administrivia:
#The Perl-Users Digest is a retransmission of the USENET newsgroup
#comp.lang.perl.misc. For subscription or unsubscription requests, send
#the single line:
#
# subscribe perl-users
#or:
# unsubscribe perl-users
#
#to almanac@ruby.oce.orst.edu.
NOTE: due to the current flood of worm email banging on ruby, the smtp
server on ruby has been shut off until further notice.
To submit articles to comp.lang.perl.announce, send your article to
clpa@perl.com.
#To request back copies (available for a week or so), send your request
#to almanac@ruby.oce.orst.edu with the command "send perl-users x.y",
#where x is the volume number and y is the issue number.
#For other requests pertaining to the digest, send mail to
#perl-users-request@ruby.oce.orst.edu. Do not waste your time or mine
#sending perl questions to the -request address, I don't have time to
#answer them even if I did know the answer.
------------------------------
End of Perl-Users Digest V10 Issue 9377
***************************************