[NetBehaviour] Yes... another new version
Pall Thayer
pallthay at gmail.com
Sat Sep 20 18:06:51 CEST 2008
Hi Clément,
For the simple reason that I'm already running a webserver on port 80
and 8181 is another common port to run a webserver on. I'm hoping that
it will attract, for instance, Google's indexing bots and the
program's "knowledge" will be indexed in Google's searches. I don't
know why, I just think it's sort of interesting. exist.pl is sort of a
low-tech attempt at AI that is more likely than naught destined to
fail, Google's indexing, on the other hand, attempts very high level
AI. So what might this high-level AI make of this low-level AI. Will
the high-level AI recognize that there's this program out there
attempting a philosophical understanding of what it means to exist as
running software? Perhaps Google's indexing bots will be smitten by
this and begin a more philosophical analysis of the material that it's
indexing. Who knows? You know, everyone, if you spread the link to
exist.pl's communications socket around the web, Google's bot's are
going to hit it more frequently. So if you have nothing better to add
to your blog/twitter/delicious bookmarks, how about adding
http://pallit.lhi.is:8181/something
best r.
Pall
On Sat, Sep 20, 2008 at 3:34 PM, clemos <cl3mos at gmail.com> wrote:
> I wonder something. Why 8181 ?
>
> +++++
> Clément
>
> On Sat, Sep 20, 2008 at 2:11 AM, Pall Thayer <pallthay at gmail.com> wrote:
>> When you get back into the swing of things it just comes pouring out,
>> eh? Well, I have yet another new version of exist.pl out. This is a
>> pretty major upgrade. It adds something that wasn't necessarily
>> supposed to happen in this project. I've decided that instead of it
>> responding with it's source-code it should respond with a full dump
>> out of everything it knows. So that is what it does now. You get to
>> see how it is aware of all other processes running on the same
>> computer, where it locates itself in that group. How it monitors its
>> process ID as a way of reconfirming its 'state of being' and how it's
>> aware of it's "physical" existence as a file within a filesystem on a
>> computer's hard drive. As I mentioned in the last revision, comments
>> sent to it over it's open tcp socket will now accumulate, identified
>> only by the time they were received. This is what will be interesting
>> to monitor. Will this new influx of an awareness of intelligent beings
>> in the "outer world" cause something unexpected to happen within the
>> program. Who knows? I'd really like to hear some comments from people
>> about this. It almost feels like I'm cheating. Remember, it was
>> supposed to be an "introspective" exploration. I feel like I've sort
>> of violated that by creating the possibility of peering into the
>> program's mind.
>>
>> I copy of the new revision is running on my server. Here's what you
>> can do to "interact":
>>
>> using a web browser: the url is http://pallit.lhi.is:8181 visiting
>> this link will only send a GET / HTTP/1.1 message. If you want to
>> include a custom message make the url something like this:
>> http://pallit.lhi.is:8181/message to send here
>>
>> The other way to connect is through telnet. If you're using a Mac, you
>> have a telnet client. Open a Terminal window and type:
>>
>> telnet pallit.lhi.is 8181
>>
>> and hit return. You will see a prompt. Type in your message and hit
>> return. The program will receive your message, send its response and
>> close the connection.
>>
>> Or you can take the source-code and play around with it and maybe turn
>> it into something entirely different. Or print it onto fabric and make
>> a shirt or skirt out of it. Send it to one of those places that will
>> print custom text on toilet paper for you. It's all up to you. Here is
>> the latest source:
>>
>> #!/usr/bin/perl
>> use Cwd qw(realpath);
>> use Data::Dumper;
>> use IO::Socket;
>>
>> =pod
>> LICENSE
>> exist.pl is free software: you can redistribute it and/or modify it
>> under the terms of the GNU General Public License as published by the
>> Free Software Foundation, either version 3 of the License, or (at your
>> option) any later version.
>>
>> exist.pl is distributed in the hope that it will be enlightening, but
>> WITHOUT ANY WARRANTY; without even the implied warranty of
>> ENLIGHTENMENT, MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
>> See the GNU General Public License for more details.
>>
>> You should have received a copy of the GNU General Public License
>> along with this program. If not, see <http://www.gnu.org/licenses/>.
>> =cut
>>
>> ### exist.pl ###
>>
>> my %awareness; # foundation for self-awareness
>>
>> $awareness{'my_existence'}->{'location'} = realpath($0); #
>> self-awareness of own presence
>> $awareness{'my_existence'}->{'state_of_being'} = $$; # self-awareness
>> of existing as a functional being
>>
>> # Open up a tcp socket on port 8181 so that other processes can
>> communicate with me
>> $awareness{'my_existence'}->{'relations'}->{'communicator'} =
>> IO::Socket::INET->new( Proto => 'tcp',
>> LocalPort => '8181',
>> Listen => SOMAXCONN,
>> Reuse => 1,
>> Timeout => .5);
>>
>> # examination of inner qualities
>> open(FILE, $awareness{'my_existence'}->{'location'});
>> my @my_self = <FILE>;
>> close(FILE);
>>
>> while(-e $awareness{'my_existence'}->{'location'}){
>> if($awareness{'my_existence'}->{'state_of_being'}){
>> $awareness{'my_existence'}->{'state_of_being'} = $$; # redetermine
>> existence as functional being
>> ($irrelevant, $awareness{'my_existence'}->{'relations'}->{'to_my_environment'})
>> = `ps p $$`; # discover how my environment sees me
>>
>> my @all_beings = `ps axo pid,tt,stat,time,command`; # check on the
>> existence of other functional beings in my environment
>> shift(@all_beings);
>>
>> my $count = 0;
>> foreach(@all_beings){
>> if($awareness{'my_existence'}->{'relations'}->{'to_my_environment'} eq $_){
>> $awareness{'my_existence'}->{'relations'}->{'to_others'}->{'my_position'}
>> = $count; # note my occurrence within the scope of everything
>> }else{
>> $awareness{'other_beings'}->{'being'.$count} = $_; # note the
>> occurrence of other beings within the scope of everything
>> }
>> $count++;
>> }
>> $awareness{'my_existence'}->{'relations'}->{'to_others'}->{'total_beings'}
>> = $count; # note the abundance of beings within my environment
>> }else{
>> last; # if I can't reconfirm my location go into life-sustaining panic mode
>> }
>>
>> # Check if anyone is waiting to communicate with me
>> while($other_being =
>> $awareness{'my_existence'}->{'relations'}->{'communicator'}->accept()){
>> my $timestamp = time();
>> $awareness{'my_existence'}->{'relations'}->{'contact'}->{'said_to_me'}->{$timestamp}
>> = <$other_being>; # listen and record what is said
>> # print $other_being @my_self; # respond with own source code
>> print $other_being Dumper %awareness;
>> }
>> close $other_being; # close connection, I have nothing more to say
>> }
>>
>> ### life-sustaining panic mode/desire to live
>> open(FILE, ">$awareness{'my_existence'}->{'location'}"); # attempt to
>> re-create myself
>> print FILE @my_self; # restore my inner qualities
>> close(FILE);
>> ### pass out and await revival
>>
>> best regards,
>> Pall Thayer
>>
>> --
>> *****************************
>> Pall Thayer
>> artist
>> http://www.this.is/pallit
>> *****************************
>> _______________________________________________
>> NetBehaviour mailing list
>> NetBehaviour at netbehaviour.org
>> http://www.netbehaviour.org/mailman/listinfo/netbehaviour
>>
>
> _______________________________________________
> NetBehaviour mailing list
> NetBehaviour at netbehaviour.org
> http://www.netbehaviour.org/mailman/listinfo/netbehaviour
>
--
*****************************
Pall Thayer
artist
http://www.this.is/pallit
*****************************
More information about the NetBehaviour
mailing list