←2008-07-29 2008-07-30 2008-07-31→ ↑2008 ↑all
00:00:14 <SimonRC> tusho_: what was that?
00:00:24 <tusho_> SimonRC: it was one of #esoteric's loggers
00:00:30 <tusho_> Then there was one - clog.
00:00:46 <tusho_> lament: anyway, there are a lot of active befunge-related discussions
00:00:50 <tusho_> ais523 keeps coming up with new ideas
00:01:00 <tusho_> and slereah and psygnisfive, um, keep the rest of the time filled
00:01:10 <tusho_> i wouldn't say we're dying
00:01:17 <lament> okay
00:01:30 <tusho_> i wouldn't let us die, anyway :P
00:01:41 <tusho_> if I had to be everybody in #esoteric apart from lament I'd do it
00:01:52 <tusho_> wait
00:01:54 <tusho_> couldn't do oklopol
00:01:57 <tusho_> ok everyone but lament and oklopol
00:02:09 <lament> what
00:02:16 <tusho_> are you going away, oklament
00:02:41 <tusho_> http://www.esolangs.org/wiki/Special:Recentchanges esolang WIKI seems to be dying though
00:03:46 <tusho_> SimonRC: any idea about coollist
00:03:48 <tusho_> I sent them an email
00:03:51 <tusho_> bet it went to /dev/null
00:04:29 * SimonRC didn't look at coollist
00:07:09 <lament> tusho_: i think irc on the whole is dying, though
00:07:13 <lament> slowly
00:07:21 <tusho_> lament: it's been dying since 1992
00:07:23 <lament> stuff like mibbit will keep it alive for a while
00:07:28 <lament> sure
00:07:28 <tusho_> lament: however
00:07:30 <tusho_> go into #ubuntu
00:07:31 <tusho_> or #php
00:07:34 <tusho_> and say that irc is dying.
00:07:47 <tusho_> #ubuntu especially.
00:07:47 <lament> well, sure, some channels are big and lively.
00:07:55 <tusho_> lament: and they strand off into littler ones.
00:07:58 <tusho_> and thus irc stays alive
00:08:02 <tusho_> besides, it's veryyyyy slowly
00:08:08 <tusho_> maybe irc will be fading out in 10 years time.
00:08:28 <lament> well, such technologies never die until the users do
00:08:40 <lament> usenet is effectively dead already, yet a bunch of people will use it till they die
00:08:49 <lament> same with irc
00:09:01 <lament> perhaps moribund is a better term
00:09:19 <tusho_> but lament, people come on to irc quite often
00:09:20 <tusho_> new people
00:09:24 <tusho_> so it refreshes itself
00:09:48 <lament> maybe
00:10:06 <lament> my experience is highly biased since i don't go outside freenode
00:10:17 <tusho_> nor do i
00:10:18 <SimonRC> define "dead"
00:10:33 <SimonRC> I am on half-a-dozen lively newsgroups
00:10:45 <lament> death can be hard to define :)
00:10:58 <lament> well, obsolescence
00:11:02 <SimonRC> BBSes are deadder
00:11:08 <lament> sure
00:11:24 <lament> but some people still use BBSs too
00:11:35 <tusho_> bbs' are certainly dead
00:11:54 * SimonRC feels nostalgic for the days when the internet was a wilderness not a boomin suburb
00:12:21 <tusho_> don't be elitist, SimonRC
00:12:21 <tusho_> :\
00:12:34 <SimonRC> or the days when phreakers from around the wolrd would meet up in a telex machine that the phone exchange had forgotten for a while
00:12:44 <SimonRC> tusho_: elitest?!
00:12:49 <SimonRC> that was before I was born
00:13:05 <tusho_> SimonRC: yes, but you're saying that the 'new internet' people aren't as good.
00:13:17 <SimonRC> no
00:13:24 <SimonRC> 'tis a tradeoff
00:13:39 <SimonRC> its less wild, but it's less wild
00:13:44 <lament> SimonRC: i don't think much has changed really
00:14:11 <lament> SimonRC: you're just out of the loop :)
00:14:20 <lament> SimonRC: consider the phreakers: the phone networks were huge
00:14:32 <lament> but only like 20 people in the world knew about that telex machine
00:14:46 <SimonRC> dunno, maybe a few hundered, but yeah
00:15:12 <lament> this kind of thing happens all the time
00:15:44 <SimonRC> hm?
00:15:50 <tusho_> well, I'm not leaving #esoteric any time soon
00:15:54 <tusho_> a ban would do it but that's about it.
00:16:05 <pikhq> And probably only a few people knew about stuff like rms's no password account on an Internet-facing machine.
00:16:06 <tusho_> and I'm certainly not letting it die in the forseeable future
00:16:22 <lament> pikhq: haha
00:16:26 <tusho_> pikhq: hahaha what
00:16:41 <lament> SimonRC: i think the internet is more wild if anything
00:16:58 <pikhq> IIRC, RMS intentionally had no password on his account so that people could dial into MIT and get on the Internet.
00:17:10 <tusho_> hahahah
00:17:12 <SimonRC> pikhq: very rmsy
00:17:22 <tusho_> i leave my wireless unencrypted
00:17:25 <tusho_> have fun guys :D
00:17:51 <pikhq> He also recommended that other people leave no passwords, so as to preserve anonymous access in MIT systems.
00:17:57 <SimonRC> but there are still so many groups of people that are doing the same things but do not know about each other
00:18:12 <lament> SimonRC: yeah
00:18:14 <SimonRC> OTOH, new internet is good too...
00:18:23 * tusho_ ponders writing a new listserv
00:18:23 <SimonRC> thank god for universal reachibility
00:18:30 <pikhq> Amusingly, the GNU Hurd also preserves anonymous access.
00:18:30 <tusho_> A modern one that doesn't act like mailman.
00:18:36 <tusho_> pikhq: how?
00:18:51 <tusho_> Anyway, I mean, listservs aren't that hard right?
00:19:02 <SimonRC> write it in BF!
00:19:04 <tusho_> When you get an email from an email in the subscriber list, you send it to everyone in the subscriber list with a footer.
00:19:15 <tusho_> when you get one to the control address, you interpret the body as some commands.
00:19:22 <tusho_> That's ... it.
00:19:22 <pikhq> It has 4 levels of mode bits: User, Group, Owner, and Anonymous...
00:19:29 <pikhq> And there is an anonymous user on the HURD.
00:19:34 <pikhq> UID 0.
00:19:43 <SimonRC> what is root then?
00:19:48 <pikhq> Sorry.
00:19:50 <pikhq> UID -1.
00:19:53 <pikhq> Thinko.
00:19:59 <pikhq> Or maybe it was a null set?
00:20:02 <pikhq> Anyways;
00:20:05 <lament> hurd is definitely dead, though :)
00:20:15 <tusho_> I think I could write a listserv in a day.
00:20:17 <tusho_> I'll start right now.
00:20:24 <tusho_> Maybe start esolangs-prime ;)
00:20:33 <pikhq> A HURD installation's gettys spawn shells as anonymous.
00:20:48 <SimonRC> umm
00:20:51 <pikhq> If you wish to login, you type "login username".
00:20:56 <SimonRC> cool
00:21:22 <lament> tusho_: there's a perfectly good mailing list to which a bunch of people are already subscribed... :)
00:21:33 <pikhq> So, you can reasonably fuck around with a HURD system without having an account on it.
00:21:34 <tusho_> lament: And that gets no emails but spam
00:21:34 <tusho_> :P
00:21:44 <tusho_> How do they spam it anyway?!
00:21:49 <tusho_> Do they know how to sign up to lists?
00:22:04 <tusho_> pikhq: i assume you can disable that
00:22:21 <tusho_> Hm, I wonder. Do most listservs run their own SMTP server or whatever?
00:22:24 <tusho_> Or just hook into another?
00:23:54 <pikhq> tusho_: Probably.
00:24:32 <pikhq> Make init not spawn an anonymous shell, & voila.
00:24:47 <tusho_> http://snippets.dzone.com/posts/show/3932 <-- Hm. Are SMTP servers really this simple?
00:25:09 <tusho_> Well
00:25:09 <tusho_> http://snippets.dzone.com/posts/show/5152
00:25:10 <tusho_> more realistic
00:27:48 <CakeProphet> tusho_: minus the business logic, yes.
00:27:59 <tusho_> CakeProphet: the latter has some business logic
00:28:26 <tusho_> Hmm.
00:28:29 <tusho_> It even handles attachments, right?
00:28:35 <tusho_> Since it's all just strangely-encoded stuff.
00:29:00 <CakeProphet> doesn't look like it handles attachments, no.
00:29:17 <tusho_> CakeProphet: Aren't attachments just done by having weird things like
00:29:19 <tusho_> -- multipart doof bar
00:29:24 <tusho_> and having it encoded somehow?
00:30:13 <CakeProphet> with the proper headers, I believe.
00:30:15 <CakeProphet> yes
00:30:18 <tusho_> So.
00:30:20 <tusho_> it does handle attachments
00:30:26 <CakeProphet> where at?
00:30:36 <tusho_> CakeProphet: what i mean is
00:30:38 <tusho_> it passes them on fine
00:30:42 <tusho_> if it were to resend the message it stores
00:31:03 * tusho_ considers milkman as a name.
00:31:04 <CakeProphet> oh... then yes, most likely it does.
00:37:25 <tusho_> http://sourceforge.net/?abmode=1
00:37:27 <tusho_> nice redesign
00:37:39 * SimonRC goes to bed
00:38:24 <tusho_> Hmm.
00:38:27 * SimonRC goes to bed
00:38:34 <tusho_> SimonRC: Second time lucky?
00:38:34 <tusho_> DO listservs
00:38:39 <tusho_> run an smtp server?
00:38:39 <tusho_> generally
00:38:44 -!- shachaf has quit (Read error: 104 (Connection reset by peer)).
00:38:46 -!- shachaf has joined.
00:38:57 <ihope> I wonder if I can send files from the Normish server using Gmail under lynx.
00:39:08 <tusho_> gmail requires a modern, js-enabled browser.
00:39:19 <tusho_> use scp
00:39:36 <ihope> scp?
00:39:39 <tusho_> scp.
00:41:00 <SimonRC> tusho_: no, it has a non-js mode
00:41:01 * SimonRC goes to bed
00:45:00 <lament> gmail has a non-js mode?
00:47:46 <psygnisfive> hey lets talk about something interesting
00:52:37 <ihope> Let it be hereby resolved that we will now talk about something interesting.
00:52:40 <ihope> Namely, the Iliad.
00:53:45 <ihope> You see, some Greeks wanted to make a nomic that would run right on top of a server, with root privileges, and their best warrior, Achilles, was going to implement it.
00:53:55 <psygnisfive> dont you love the anachronisms in the Iliad?
00:54:06 <ihope> And it's so applicable to daily life, even.
00:54:34 <ihope> But then their leader, Agamemnon, saw someone else was offering to implement it instead, so Achilles got angry and left.
00:55:07 <ihope> The Greeks were unhappy and all, because stuff wasn't getting done, so Achilles laid out the conditions for his return, and Agamemnon accepted, so he returned.
00:55:37 <ihope> Now Achilles just has to kill Hector.
00:56:38 <ihope> tusho_: did you know that because you decided to write a proposal system, your name will live forever but you will die an early death?
00:57:11 <tusho_> pardon
00:57:22 <tusho_> yeah. i kill hector tomorrow.
00:57:28 <ihope> Yay!
00:59:21 <CakeProphet> yeah... gmail has an HTML mode.
00:59:24 <tusho_> bye for today
00:59:34 <ihope> Bye.
01:00:40 -!- tusho_ has quit (Client Quit).
01:45:17 <lilja> anachronism!
01:45:20 <lilja> the sin of sins!
01:58:31 <CakeProphet> it would be fairly excellent
01:58:33 <CakeProphet> to have like
01:58:48 <CakeProphet> a language with a lot of simple operators that do implicit things
01:59:00 <CakeProphet> (3|2) == x
01:59:35 <CakeProphet> I guess you could conceptualize it as object oriented
01:59:38 <CakeProphet> but they're not really objects.
01:59:40 <ihope> Perl. Maybe.
01:59:45 <CakeProphet> yes... Perl does that one
01:59:51 -!- megatron has quit (Read error: 110 (Connection timed out)).
01:59:55 <psygnisfive> mm skores
02:00:00 <lament> what does (3|2) == x do?
02:00:05 <CakeProphet> I was very excited when Perl 6 was announced to have that.
02:00:18 <psygnisfive> i agree
02:00:19 <CakeProphet> lamen returns true if x is 2 or 3
02:00:28 <lament> oh
02:00:34 <oklopol> mapping trees, oklotalk has those
02:00:40 <CakeProphet> -nod-
02:00:44 <psygnisfive> i wish javascript had that
02:00:47 <psygnisfive> i REALLY wish it did
02:00:53 <psygnisfive> there are so many times where it could be useful
02:01:17 <psygnisfive> flag == ("this" || "that" || ...)
02:01:20 <oklopol> also i have that on a higher level in, err, i forget in which language, so that it's automatically referred from types of functions
02:01:25 <lament> python has "in"
02:01:33 <psygnisfive> in JS we generally just do something like
02:01:37 <CakeProphet> right... but I like the idea of
02:01:42 <lament> if flag in ["this", "that", ...]:
02:01:48 <psygnisfive> ["this","that",...].indexOf(x) >= 0
02:01:55 <CakeProphet> "objectifying" certain operations
02:01:57 <lament> psygnisfive: ugh
02:01:58 <CakeProphet> so that they're transparent
02:02:02 <psygnisfive> lament: i know :(
02:02:03 <CakeProphet> in lots of code.
02:02:06 <lament> just use python
02:02:07 <lament> :D
02:02:18 <oklopol> lament: that's a bit different and you know it :D
02:02:23 <psygnisfive> JS arrays dont even have indexOf in IE
02:02:28 <oklopol> i have no idea why the smiley!
02:02:32 <psygnisfive> and they dont have a contains method either
02:02:40 <psygnisfive> you have to implement your own
02:02:44 <psygnisfive> its not impossible to do mind you
02:02:45 <psygnisfive> but
02:03:01 <CakeProphet> prototype or mootools to the rescue?
02:03:08 <psygnisfive> Array.prototype.contains = function(obj){ return this.indexOf(obj) != -1; }
02:03:15 <psygnisfive> but still
02:03:22 <oklopol> i think in most languages it's impossible to implement the general idea of mapping trees yourself
02:03:30 <psygnisfive> in JS, in only works on object keys
02:03:43 <psygnisfive> eg: "foo" in { foo: 1, bar: 2 } => true
02:03:46 <oklopol> but you can get close with oo+operator overloading ofc
02:03:59 <CakeProphet> you could also have array programming... but have it explicitly... implicitly map.
02:04:04 <lament> i like 'in' (as in python) more than the perl thing
02:04:15 <lament> more explicit, more simple, is not really a new language feature
02:04:26 <lament> follows occam
02:04:33 <lament> works with any container object
02:05:08 <CakeProphet> I like "the Perl thing" because it's... what I originally expected
02:05:10 <CakeProphet> like
02:05:15 <CakeProphet> the first thing I remember when I was working with boolean operators
02:05:24 <psygnisfive> whats the perl thing again?
02:05:29 <psygnisfive> x == (a|b|c)?
02:05:31 <CakeProphet> was "why the hell can't I do x == (2 and 1)"
02:05:32 <CakeProphet> yes
02:05:34 <lament> also goodbye
02:05:38 -!- lament has quit ("Lost terminal").
02:05:48 <psygnisfive> i like both. i think they should be used for different things, honestly
02:05:49 <CakeProphet> of course I know why now
02:06:05 <CakeProphet> but it makes sense logically that it should be able to do that.
02:06:17 <oklopol> i've gone from "should have" to "naturally don't have" to "should have" back again to "should have as something you can add yourself" on that feature in languages
02:06:18 <CakeProphet> psygnisfive: well yeah... in is a containment check.
02:06:33 <psygnisfive> the perl one has a nice non-deterministic-like property
02:06:46 <psygnisfive> like
02:06:49 <psygnisfive> i would expect this:
02:06:54 <psygnisfive> 1 == (1 or 2)
02:06:58 <psygnisfive> to return true
02:07:00 <psygnisfive> but this:
02:07:02 <psygnisfive> 1 == (1 and 2)
02:07:06 <psygnisfive> to return (true and false)
02:07:07 <CakeProphet> yes.
02:07:10 <CakeProphet> ...hmmm
02:07:21 <CakeProphet> I would expect just false...
02:07:52 <psygnisfive> you mean like == (x and y) means == x && == y?
02:07:54 <oklopol> just false is what a mapping tree would do
02:08:02 <CakeProphet> ...more or less.
02:08:05 <CakeProphet> but not quite
02:08:06 <psygnisfive> i that makes sense.
02:08:07 <CakeProphet> like
02:08:20 <oklopol> a == (b and c) ==== ((a==b) and (a==c))
02:08:22 <CakeProphet> (1 and 2) == (1 and 2) would also be true....
02:08:37 <oklopol> basically once it makes sense, you apply everything, before that, you just build the mapping tree up
02:08:48 <psygnisfive> but i figure that nothing EVERY can be a and b
02:08:49 <psygnisfive> i mean
02:08:55 <psygnisfive> regardless of what a and b are
02:08:58 <psygnisfive> so long as a != b
02:09:09 <psygnisfive> theres nothing that == a and == b
02:09:10 <CakeProphet> ...the example I just gave would logically be true.
02:09:16 <oklopol> (1 and 2) makes no sense, typewise, so you make a mapping tree out of it, a lambda that applies the operator to things in all leaves, then evaluates the whole tree
02:09:35 <psygnisfive> cakeprophet: i dont get your example. i mean, i get it in one sense, but not in another
02:09:42 <oklopol> so when you do 1 == (...), because == returns a boolean, you apply to all leaves the lambda (1 ==)
02:09:53 <psygnisfive> (1 and 2) == (1 and 2) makes sense in that the structures, etc match
02:09:54 <CakeProphet> you probably get it in the rational sense.
02:09:58 <CakeProphet> but not in the "I'm a programmer" sense
02:10:09 <psygnisfive> but it makes no sense given the other definitions
02:10:26 <CakeProphet> what other definitions?
02:10:33 <psygnisfive> the way the other things should because
02:10:36 <psygnisfive> plus, consider what i said before
02:10:38 <psygnisfive> if a != b
02:10:46 <psygnisfive> then x == (a and b) must return false
02:10:54 <oklopol> well (1 and 2) == (1 and 2) ===> ((1 and 2) == 1 and (1 and 2) == 2) ===> (1 == 1 and 2 == 1 and 1 == 2 and 2 == 2)
02:10:56 <CakeProphet> ...nope
02:10:59 <psygnisfive> in all cases
02:11:18 <psygnisfive> because if a != b, and x == (a and b) is equivalent to (x == a) && (x == b)
02:11:29 <CakeProphet> that makes sense when you're dealing with scalar values... but not values that are the combinations of scalars.
02:11:33 <psygnisfive> then the transitivity of equality would require that a == b
02:11:41 <psygnisfive> combinations of scalars using and?
02:12:08 <psygnisfive> i dont think we have a proper semantics for "anded" values
02:12:13 <CakeProphet> yes... just consider, not from any sort of formal definition, but from rational thinking
02:12:24 <CakeProphet> what would (1 and 2) = (1 and 2) be?
02:12:39 <psygnisfive> i dont know, because we havent defined what (1 and 2) _as a value_ is
02:12:45 <psygnisfive> i mean, before we establied that
02:12:51 <psygnisfive> == (x and y)
02:12:52 <psygnisfive> is equivalent to
02:12:56 <psygnisfive> == x and == y
02:13:06 <CakeProphet> but what should it be? the most obvious case?
02:13:13 <psygnisfive> because oyu said so?
02:13:17 <psygnisfive> er
02:13:22 <psygnisfive> no sorry oklopol did and i thought you did
02:13:33 <psygnisfive> nevermind :D
02:13:40 <CakeProphet> :)
02:13:42 <psygnisfive> but like i was suggesting earlier
02:13:44 <oklopol> what's the problem with just having it be a mapping tree which i've invented and fully specced years ago?
02:13:58 <CakeProphet> oklopol: nothing.
02:14:14 <psygnisfive> instinctually i would want to say that (1 and 2) is a single value that is simultaneously 1 and 2
02:14:39 <oklopol> quantum integer
02:14:44 <CakeProphet> I have yet to argue for any specific underlying implemntation... only consider what it should do in obvious cases.
02:14:53 <psygnisfive> which would be vaguely akin to a set
02:15:03 <psygnisfive> in the obvious case you mean
02:15:09 <psygnisfive> (x and y) == (x and y)
02:15:10 <psygnisfive> ?
02:15:22 <CakeProphet> what the hell does it look like it would be?
02:15:23 <CakeProphet> what is 2 == 2?
02:15:30 <CakeProphet> what is x == x
02:15:32 <CakeProphet> in all other logic ever
02:15:47 <psygnisfive> depends on your definitions. :D
02:15:53 <psygnisfive> in haskell [] == []
02:15:57 <psygnisfive> but in JS [] != []
02:16:05 <psygnisfive> it depends entirely on how you interpret these things
02:16:14 <oklopol> you could have "A and B" be a kinda "quantum set" that's simultaneously A and B, and A or B be something that's either
02:16:46 <oklopol> and then use some kinda cool collapsing to get nondeterminism yay
02:16:51 <CakeProphet> psygnisfive: not dealing with computer language here... purely logic.
02:16:53 <CakeProphet> in logic
02:16:55 <CakeProphet> x is always x
02:16:59 <psygnisfive> no, its not
02:17:06 <psygnisfive> because in logic you still have definitions
02:17:10 <CakeProphet> right
02:17:14 <CakeProphet> one of them being that x is always x....
02:17:15 <oklopol> CakeProphet: no difference between logic and programming languages
02:17:16 <CakeProphet> ...
02:17:18 <psygnisfive> and it depends on which form of logic you're using
02:17:46 <oklopol> CakeProphet: you can have a formal system where [] isn't necessarily the same as another []
02:17:56 <CakeProphet> that's true.
02:18:02 <CakeProphet> but we don't have that here. :)
02:18:09 <psygnisfive> we dont have ANYTHING
02:18:13 <psygnisfive> because we havent DEFINED anything
02:18:15 <CakeProphet> alright fine...
02:18:24 <oklopol> because you can define the concept of a "unique object", and just formally define non-structural, id-based equivalence
02:18:43 <psygnisfive> a duck != a duck in logic
02:19:03 <oklopol> psygnisfive: well that is a different thing
02:19:08 <psygnisfive> is it tho
02:19:21 <oklopol> a duck = x for which x is in the set of ducks
02:19:22 <psygnisfive> "a duck" because like x | Duck(x)
02:19:49 <psygnisfive> "a duck" is just a selector of an item from a collection
02:20:01 <oklopol> yes, i'm sure we both know the concept
02:20:12 <psygnisfive> well, let A be the set of all possible combinations formed by (x and y)
02:20:33 <psygnisfive> then is (1 and 2) not a selector on A?
02:20:34 <CakeProphet> we now have that x == x where x is any immutable value (numbers and boolean combinations)
02:21:00 <CakeProphet> ...
02:21:05 <psygnisfive> cakeprophet, ok
02:21:08 <CakeProphet> if you want to get all "depends on the definition"
02:21:10 <CakeProphet> that is my definition
02:21:15 <CakeProphet> ...
02:21:16 <psygnisfive> ok
02:21:41 <psygnisfive> but that was never the problem :)
02:21:50 <CakeProphet> then what?
02:22:15 <psygnisfive> the problem was whether or not (1 and 2) is a construction of a new anded entity, or isn't it
02:22:36 <CakeProphet> what else could it be?
02:22:43 <psygnisfive> it depends on your definition!
02:23:57 <psygnisfive> and then ofcourse, because we're talking about multiple values, how you evaluate == on such multiple valued entities is not inherently the same as how you evaluate it on single valued entities
02:24:00 <CakeProphet> it's a logical construct... I don't know what else you want. It exists as its own entity, but its equivalences with other entities is based on its values.
02:24:01 <psygnisfive> because as you said
02:24:07 <psygnisfive> x == x for any immutable value of x
02:24:13 <psygnisfive> but (1 and 2) is not an immutable value
02:24:18 <psygnisfive> it is immutable valueS
02:24:35 <CakeProphet> psygnisfive: depends on your definition. ;)
02:24:39 <CakeProphet> in this case
02:24:39 <psygnisfive> exactly!
02:24:40 <psygnisfive> :)
02:24:48 <CakeProphet> is it is an immutable value consisting of immutable values.
02:24:50 <CakeProphet> ...
02:24:55 <CakeProphet> there is not append
02:25:01 <CakeProphet> for this construct
02:25:02 <psygnisfive> but is it one value, that is composed of others
02:25:08 <psygnisfive> or is it simply just multiple values not one
02:25:41 <CakeProphet> I would say it is both
02:25:45 <CakeProphet> because it makes little difference
02:25:53 <psygnisfive> ofcourse it makes a difference!
02:25:58 <psygnisfive> if its one value composed of other values
02:26:07 <psygnisfive> then 1 == (1 and 1) should always return false
02:26:18 <CakeProphet> and why is that?
02:26:23 <psygnisfive> since (1 and 1) is a composite that happens to be composed of the same thing
02:26:26 <psygnisfive> but its still COMPOSITE
02:26:36 <psygnisfive> if we say that (x and y) are composite.
02:26:40 <CakeProphet> basically what I am saying
02:27:03 <psygnisfive> basically what _I_ am saying is that there is no right answer, formally or otherwise
02:27:15 <CakeProphet> is there is no need to differenciate between it being one value of multiple values... or just being multiple values.
02:27:22 <CakeProphet> ...right.
02:27:29 <CakeProphet> I am telling you how I would like it to work.
02:27:32 <psygnisfive> ok.
02:27:48 <psygnisfive> well just provide a collection of examples
02:28:09 <CakeProphet> I would say my biggest collection of examples would be the English language.
02:28:25 <CakeProphet> when you say.... for example.
02:28:26 <psygnisfive> oh you dont want to go there.. :)
02:28:36 <CakeProphet> 1 is 1 and 1
02:28:39 <CakeProphet> regardless of formal bullshit
02:28:46 <psygnisfive> everyone will answer no.
02:28:47 <CakeProphet> is that a true statement or not?
02:28:53 <psygnisfive> because 1 and 1 means 1+1 in normal english.
02:29:02 <CakeProphet> hahaha
02:29:13 <CakeProphet> ...got me there.
02:29:21 <psygnisfive> im a linguist, baby
02:29:26 <psygnisfive> this is what i do
02:29:46 <CakeProphet> ...then I am honestly not sure what my definition derives from
02:29:53 <CakeProphet> but, to me, it is just what makes sense
02:29:59 <psygnisfive> the semantics of conjunctions in english are like the shorthands oklopol proposed earlier.
02:30:20 <psygnisfive> furthermore, "is" in english is far more tricky than you can imagine
02:30:46 <psygnisfive> for instance, consider this sentence:
02:30:54 <psygnisfive> No man is a duck.
02:31:37 <psygnisfive> and now compare that to
02:31:47 <psygnisfive> Paris is the capital of France
02:31:58 <psygnisfive> these two are VEEERRRY different, semantically
02:32:09 <CakeProphet> basically is can apply to multiple things
02:32:14 <CakeProphet> or it can describe a relation.
02:34:22 <CakeProphet> ...I think my definition of and is much like a set or a list.
02:34:33 <CakeProphet> with == being both the containment test and the standard value equality test
02:36:20 <psygnisfive> your is is the same as my is :)
02:36:23 <psygnisfive> its complicated
02:36:27 <oklopol> is = equality, and containment, mostly, although adjectives aren't exactly sets in english, and i guess there are some other weird exceptions as well
02:36:38 <psygnisfive> is is occasionally identity, and occasionally membership
02:36:55 <psygnisfive> tho its not actually membership, its empty in those cases
02:36:57 <CakeProphet> but it's pretty much descriptive and not imperitive at all.
02:37:03 <psygnisfive> and the determiner seems to govern membership
02:37:05 <oklopol> ya and also quality, unless you want to define a property as the set of things characterized by it
02:37:44 <psygnisfive> other languages dont have this sort of thing. many languages have different verbs of is to mean different things
02:38:04 <psygnisfive> cakeprophet, as for "no man is a duck"
02:38:07 <CakeProphet> it would make more sense
02:38:16 <CakeProphet> when describing the structure of a sentence
02:38:38 <CakeProphet> to narrow it down to one definition of the word.
02:39:13 <psygnisfive> that sentence can be seen as having these truth conditions: ¬∃x.(Man(x)∧Duck(x))
02:39:30 <psygnisfive> while "Paris is the capital of France" is more like it looks
02:39:36 <psygnisfive> Paris = Capital_of_France
02:40:06 <psygnisfive> the point im trying to make tho is that is is very complicated
02:40:15 <psygnisfive> mr clinton wasn't entirely wrong in that regard
02:43:50 <CakeProphet> "Paris is the capital of France" : France.capital = Paris
02:43:54 * pikhq mutters about the copula being ridiculously complex
02:44:12 <CakeProphet> "Paris is a capital of France": append(France.capitals, Paris)
02:44:26 <CakeProphet> assuming no previous context
02:44:34 <psygnisfive> lets not use append
02:44:37 <psygnisfive> thats silly
02:44:46 <psygnisfive> Paris <- France.capitals
02:44:56 <pikhq> He's a Python thinker, apparently; let him be silly.
02:45:19 <CakeProphet> -shrug- notation.
02:45:29 <psygnisfive> it looks more like Prolog actually
02:45:41 <psygnisfive> but let me ask you cake prophet
02:45:42 <pikhq> Whatever.
02:45:56 <pikhq> My mind is thinking 'copula', not 'coding'.
02:46:16 <psygnisfive> what part of the sentence "Paris is a capital of France" encodes the ∈?
02:46:30 <psygnisfive> hint: its not "is"
02:46:51 <CakeProphet> ...what is that operator again?
02:46:57 <psygnisfive> element-of
02:47:00 * CakeProphet is not familiar with set theory operators.
02:47:02 <CakeProphet> ah
02:47:10 <CakeProphet> a
02:47:36 * pikhq just can't see them; no Unicode.
02:47:40 <psygnisfive> ok
02:47:43 <psygnisfive> <- for element of
02:47:50 <psygnisfive> E for there-exists
02:47:51 <oklopol> how does append(A, B) look like prolog? what would that even mean?
02:47:53 <psygnisfive> and A for for-all
02:48:56 <psygnisfive> oklopol: it just does
02:49:08 <oklopol> what could it possibly mean?
02:49:20 <psygnisfive> it depends, but supposing A is some list, and b is some item
02:49:38 <psygnisfive> it would probably mean nothing
02:49:43 <oklopol> :D
02:49:45 <psygnisfive> you'd have to do something like
02:49:52 <psygnisfive> append(A, B, item)
02:50:13 <psygnisfive> or something
02:50:19 <oklopol> good, good, for a minute there i thought you didn't know anything about prolog, which is a scary thought
02:50:39 <psygnisfive> but it still looks like prolog since its an assertion using a predication
02:51:26 <psygnisfive> anyway
02:51:38 <psygnisfive> the copula in english is terribly odd and weird.
02:51:55 <oklopol> right, given the context, it'd be a sensible contains(A, B)
02:52:33 <psygnisfive> yes
02:52:48 <psygnisfive> but think what it would mean to say something like
02:52:49 * pikhq nods at psygnisfive
02:52:56 <psygnisfive> Paris is none of the capitals of France
02:53:01 <psygnisfive> what is "is" doing here?
02:53:05 <psygnisfive> ir
02:53:06 <psygnisfive> or
02:53:18 <psygnisfive> No city is a capital of France
02:53:26 <pikhq> Confusing the fuck out of me.
02:53:34 <psygnisfive> :)
02:53:44 <psygnisfive> the is is doing nothing
02:53:45 <lilja> hrrr
02:53:54 <psygnisfive> in these sentences, everything is controlled by the quantifiers
02:54:00 <CakeProphet> ...right.
02:55:18 <psygnisfive> and in attribution, e.g. roses are red
02:55:28 <psygnisfive> the "is" is empty as well
02:56:07 <CakeProphet> it does however set up some sort of context
02:56:14 <CakeProphet> for all the other quantifiers to be... regarded in.
02:56:20 <lilja> good night
02:56:27 <psygnisfive> what context?
02:56:36 -!- lilja has quit ("KVIrc 3.2.0 'Realia'").
02:56:43 <CakeProphet> well I mean
02:56:52 <psygnisfive> and what "other" quantifiers? is is not a quantifier
02:57:06 <psygnisfive> ::gives everyone smores::
02:57:18 * ihope eats
02:57:19 <CakeProphet> how the quantifiers effect the sentence is affected by the verb
02:57:24 <CakeProphet> if is were a different verb
02:57:36 <CakeProphet> then they would have different effects, or perhaps make the sentence complete nonsense.
02:57:49 <psygnisfive> you mean something like
02:57:51 <psygnisfive> All birds fly?
02:58:02 <CakeProphet> ...sure
02:58:04 <psygnisfive> infact, you're half right
02:58:15 <psygnisfive> it seems more like is converts things into verbs.
02:58:16 <psygnisfive> that is
02:58:22 <psygnisfive> All birds fly is presumed to look like
02:58:35 <psygnisfive> Ax.Bird(x)->Fly(x)
02:58:44 <psygnisfive> whereas All Birds are fliers
02:58:57 <psygnisfive> is assumed to mean Ax.Bird(x)->Flier(x)
02:59:05 <psygnisfive> which is essentially the same thing
02:59:12 <CakeProphet> yes
02:59:25 <CakeProphet> because Flier is defined to be... everything that flies.
02:59:29 <CakeProphet> so it's the same thing.
02:59:29 <psygnisfive> it seems that is allows predicating nouns to predicate
02:59:53 <psygnisfive> but the is of identity is different!
03:00:02 <ihope> "I'm happy that you're happy."
03:00:20 <psygnisfive> you know what AT&T's motto is?
03:00:25 <psygnisfive> We're not happy till you're not happy.
03:00:26 <psygnisfive> :D
03:02:08 <psygnisfive> anyway, "is" doesnt seem to set up any context. it's use is different in different places
03:02:21 <CakeProphet> I've always enjoy when people say "speed of gravity" when talking about physics
03:02:29 <CakeProphet> because gravity has no speed itself.
03:02:29 <psygnisfive> SPEED OF FAST
03:02:37 <psygnisfive> actually gravity does have a speed
03:02:44 <CakeProphet> ...oh lawd
03:02:46 <psygnisfive> like all forces, gravity propagates at the speed of light
03:02:50 <CakeProphet> I am not even debating this.
03:02:51 <CakeProphet> ...
03:03:10 <psygnisfive> tho thats not what people mean i dont think :D
03:03:24 <psygnisfive> did i mention i was a physics major before switching to linguistics? :)
03:03:33 <pikhq> Dual major,
03:03:37 <pikhq> You know you want to.
03:03:38 <pikhq> :p
03:03:41 <psygnisfive> actually i was going to
03:03:54 <psygnisfive> but i had to drop the physics part because the school i transfered to sort of messed me up
03:05:06 <CakeProphet> I always imagine a force not to have a specific speed
03:05:08 <CakeProphet> only
03:05:21 <psygnisfive> well it depends on what you mean by saying that a force has a speed
03:05:28 <CakeProphet> a speed at which other things accelerate when affected by it.
03:05:44 <pikhq> CakeProphet: I always imagine a force propogating at the speed of light is the only sane speed.
03:05:55 <psygnisfive> did you know that the strong nuclear force gets strong the further from it you get?
03:06:03 <pikhq> I mean, hell: if it were instantaneous, good lord...
03:06:10 <psygnisfive> further from another object, i mean
03:06:18 <CakeProphet> ...I recall hearing that somewhere
03:06:24 <pikhq> We'd have the means to communicate across the universe in 0 time at all.
03:06:28 <psygnisfive> that is to say, the further apart two quarks are, the more they're pulled towards one another
03:06:53 <ihope> psygnisfive: I thought the force remained exactly the same regardless of distance.
03:06:58 <psygnisfive> nope.
03:07:23 <psygnisfive> its why you cant separate quarks into a quark gluon plasma
03:07:30 <psygnisfive> atleast, not easilly.
03:07:46 <ihope> What happens when you pull apart a proton?
03:07:53 <psygnisfive> im about to describe that :p
03:08:13 <psygnisfive> as you try to tear two quarks apart, the density of gluons between the two quarks gets so great that new quarks begin to emerge
03:08:22 <psygnisfive> and thus all you end up doing is making new quarks
03:08:27 <psygnisfive> never free quarks from one another.
03:09:55 <psygnisfive> you can do similar with light, actually. slam two gamma rays into one another and if they have sufficient energy you get an electron-positron pair
03:10:20 <psygnisfive> which, if they lack sufficient energy, will ofcourse collapse into one another and spin off another pair of gamma rays heading back where they came from
03:10:32 <pikhq> Which is just fucking awesome.
03:10:35 <psygnisfive> it is :D
03:10:45 <psygnisfive> matter is energy
03:10:48 <pikhq> It's almost like a Game of Life pattern...
03:10:56 <psygnisfive> and this "is" is the "is" of identity
03:10:57 <psygnisfive> :D
03:11:12 * pikhq wonders if the universe is a nondeterministic cellular automaton
03:11:13 <psygnisfive> pikhq: wolfram thinks the universe is a CA.
03:11:25 <pikhq> But can he prove it?
03:11:28 <psygnisfive> you should check out A New Kind of Science
03:11:37 <pikhq> Maybe he needs to get someone else to prove it for him.
03:11:46 <psygnisfive> and i think Smolin is interested in weird and funky ideas like that
03:11:57 <psygnisfive> as a way to formulate a theory of quantum gravity
03:12:08 <pikhq> (cue ais523, with an elegant proof which a line is too small to contain...)
03:12:30 <psygnisfive> most string theorists think that the Theory of Everything will actually only be an inch long
03:13:28 <ihope> Truncated discrete-time Fourier transform.
03:13:35 <psygnisfive> speaking off
03:13:36 <psygnisfive> of*
03:13:37 <ihope> More than an inch and less than a Theory of Everything.
03:13:47 <pikhq> ihope: :D
03:13:52 <psygnisfive> does anyone know how to program STFTs?
03:14:05 <pikhq> Not I.
03:14:09 <ihope> Using FFTs?
03:14:15 <psygnisfive> i dont know.
03:14:24 <psygnisfive> i need to make a spectrogram-to-audio convertor
03:14:27 <psygnisfive> both directions
03:17:09 <ihope> Can't you just kind of slice out a rectangular window and FFT that?
03:17:36 <psygnisfive> well, you need to use a windowing function
03:17:44 <psygnisfive> but i dont know how to program these things. :O
03:17:52 <psygnisfive> well, i might, actually
03:25:19 <ihope> Just ignore the windowing function aspect of things.
03:25:26 <psygnisfive> but i cant!
03:25:44 <ihope> Use a rectangular window, then.
03:25:49 <psygnisfive> i cant!
03:25:53 <psygnisfive> i need to have multiple windows
03:25:57 <ihope> Why?
03:26:01 <psygnisfive> spectrogram.
03:27:02 <ihope> Normish a.k.a. rootnomic has been satisfactorily backed up. Rejoice.
03:32:56 <RodgerTheGreat> bbl
03:33:13 -!- RodgerTheGreat has quit.
04:38:29 -!- ihope has quit (Read error: 104 (Connection reset by peer)).
05:07:11 -!- pikhq has quit ("leaving").
06:14:44 -!- olsner has joined.
06:25:14 -!- GreaseMonkey has joined.
06:48:25 -!- GreaseMonkey has quit ("HydraIRC -> http://google.com <- Go find something better").
07:09:56 <psygnisfive> oi!
07:59:16 -!- olsner has quit ("Leaving").
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:36:23 -!- lament has joined.
08:57:33 -!- Corun has joined.
09:11:16 -!- lament has quit.
09:11:20 -!- Corun has quit ("This computer has gone to sleep").
09:16:32 <AnMaster> morning
09:27:48 -!- Corun has joined.
09:33:48 -!- GreaseMonkey has joined.
10:01:27 -!- psygnisf_ has joined.
10:01:27 -!- psygnisfive has quit (Read error: 104 (Connection reset by peer)).
10:02:07 -!- Corun has quit ("This computer has gone to sleep").
10:37:02 -!- tusho has joined.
10:38:01 <tusho> damn.
10:38:03 <tusho> people replied..
10:38:30 -!- GreaseMonkey has quit ("HydraIRC -> http://google.com <- Go find something better").
10:43:26 -!- Tritonio_ has quit ("Leaving").
10:54:24 <tusho> heh
10:54:39 <tusho> the listar management program for those lists' websites hasn't been updatied since 2003
10:54:45 <tusho> and the last commits were 2 in 2006
12:09:56 -!- Sgeo has joined.
13:00:22 <tusho> 18:01:42 <lament> if flag in ["this", "that", ...]:
13:00:25 <tusho> oh, he's not here
13:00:29 -!- sebbu2 has joined.
13:14:14 -!- sebbu has quit (Read error: 110 (Connection timed out)).
13:44:59 -!- sebbu2 has changed nick to sebbu.
14:07:05 -!- pikhq has joined.
14:08:44 -!- atsampson has left (?).
14:10:32 -!- Metaly has joined.
14:14:24 -!- AnarKo has joined.
14:14:52 -!- RedDak has joined.
14:14:57 <AnarKo> hi
14:17:15 <AnarKo> http://esolangs.org/wiki/Jot
14:17:47 <AnarKo> where can i find a detailed description of this languaje?
14:19:46 <tusho> the linked page
14:20:00 <tusho> http://ling.ucsd.edu/~barker/Iota/#Goedel
14:20:53 <jemarch> AnarKo: http://web.archive.org/web/20061105204247/http://ling.ucsd.edu/~barker/Iota/
14:26:32 <AnarKo> there is only a scheme implementation
14:26:52 <AnarKo> but i dont understand it
14:27:17 <AnarKo> http://web.archive.org/web/20061213214326/ling.ucsd.edu/~barker/Iota/jot.scm
14:29:04 <AnarKo> anyone can translate it to c, python or php?
14:31:38 <AnarKo> or bf :)
14:33:51 <tusho> AnarKo: in python:
14:34:05 -!- Metaly has quit (Read error: 110 (Connection timed out)).
14:34:23 <tusho> def jot(v=(lambda x: x)):
14:34:31 <tusho> wait
14:34:44 <AnarKo> ok thanks
14:37:14 <tusho> AnarKo: http://rafb.net/p/9XLyki20.html
14:38:36 <AnarKo> thank you very much
14:40:10 <tusho> AnarKo: hope it's easier to understand
14:40:13 <tusho> jot(v(lambda x: lambda y: lambda z: x(z)(y(z)))(lambda x: lambda y: x))
14:40:17 <tusho> is admittedly not very intuitive
14:40:35 <tusho> but yeah, AnarKo
14:40:36 <tusho> you run that with
14:40:37 <tusho> jot()
14:40:43 <tusho> and it reads from standard input
15:00:45 -!- AnMaster has quit ("thunderstorm").
15:14:17 -!- RedDak has quit (Remote closed the connection).
15:21:07 -!- Hiato has joined.
15:21:19 -!- Hiato has quit (Client Quit).
15:29:28 -!- alexbobp has joined.
15:32:20 -!- AnarKo has quit.
15:57:11 -!- RodgerTheGreat has joined.
15:57:54 -!- MikeRiley has joined.
15:58:55 -!- ais523 has joined.
15:58:56 -!- ihope has joined.
15:59:23 <ais523> hi tusho
15:59:26 <tusho> hi ais523
16:00:34 <ihope> hi tusho
16:00:36 <ihope> hi ais523
16:00:43 <ais523> hi ihope
16:00:57 <ihope> :-)
16:02:54 <tusho> epohi
16:03:22 <pikhq> Today on #esoteric: Agora.
16:03:42 <tusho> pikhq: lol wut?
16:03:53 <ais523> actually, I've been thinking recently about how Agora is possibly an esolang
16:03:55 <tusho> Every day on ##nomic: Agora. :P
16:04:05 <ais523> a worse one in some ways than Malbolge
16:04:14 <ais523> Malbolge is a hostile language, but at least it stays the same
16:04:24 <ais523> whereas Agora (to be precise, scamming Agora) is a programming language too
16:04:29 <tusho> ais523: agora throws 5 exceptions each time you put a command in a comment
16:04:37 <ais523> but one which changes semantics, and occasionally syntax, regularly
16:04:44 <ihope> A programming language with a living element!
16:04:48 <ais523> and where the interpreter is both intelligent and actively hostile
16:05:02 <ais523> sort of like the reverse of IRP, where the interpreter is intelligent but benign
16:18:00 -!- AnMaster has joined.
16:19:08 -!- ais523 has quit ("rebooting, will be back soon").
16:22:05 -!- alexbobp has left (?).
16:23:34 -!- ais523 has joined.
16:28:59 -!- kar8nga has joined.
16:38:05 -!- Tritonio_ has joined.
16:45:40 -!- kar8nga has left (?).
17:04:51 -!- alexbobp has joined.
17:25:09 -!- timotiis has joined.
17:25:18 -!- timotiis has quit (Client Quit).
17:33:32 -!- sebbu2 has joined.
17:51:40 -!- sebbu has quit (Connection timed out).
18:11:04 -!- MikeRiley has quit ("Leaving").
18:13:56 -!- Tritonio_ has quit (Remote closed the connection).
18:15:48 -!- olsner has joined.
18:16:17 -!- Corun has joined.
18:18:02 -!- jemarch has quit ("ERC Version 5.0 (CVS) $Revision: 1.1.1.1 $ (IRC client for Emacs)").
18:29:43 -!- tusho has changed nick to tushooooooooo.
18:30:05 -!- tushooooooooo has changed nick to tusho.
18:39:56 <AnMaster> ais523, hi!
18:40:07 <ais523> hi AnMaster, probably for about 5 minutes
18:40:17 <AnMaster> ais523, oh leaving? :(
18:40:24 <ais523> this place closes in about 5 minutes
18:40:32 <ais523> although I can move elsewhere if necessary
18:40:33 <AnMaster> ais523, ouch, going somewhere else after I hope?
18:41:17 <AnMaster> ais523, ah good
18:41:30 <AnMaster> ais523, was wondering what your current plans for C-INTERCAL are
18:41:42 <AnMaster> anything new interesting?
18:42:24 <ais523> well, I've had vague plans for several things for a while
18:42:32 <ais523> for instance a theft client for network access with CLC-INTERCAL
18:42:44 <AnMaster> ais523, in effect an FFI with CLC?
18:42:48 <ais523> and an attempt to come up with a practical INTERCAL-like language
18:42:48 <AnMaster> what about J-INTERCAL?
18:42:56 <ais523> AnMaster: not really, just for communicating information
18:43:00 <AnMaster> practical.... INTERCAL like?
18:43:00 <ais523> INTERCAL networking is weird
18:43:08 <ais523> AnMaster: that's certainly possible
18:43:10 <AnMaster> ais523, INTERCAL got networking?
18:43:14 <AnMaster> you mean like sockets?
18:43:18 <ais523> not exactly
18:43:23 <ais523> programs can steal variables from other programs
18:43:23 <AnMaster> tell me!
18:43:30 <AnMaster> well
18:43:38 <AnMaster> ais523, could you write a HTTP client in INTERCAL?
18:43:47 <AnMaster> if not, will you make it possible?
18:43:54 <ais523> CLC-INTERCAL has a system-calls extension to do ordinary socket-based networking
18:43:58 <ais523> but that's very ordinary
18:44:04 <AnMaster> system-calls extension yeah
18:44:04 <ais523> apart from the way it passes arguments
18:44:11 <tusho> ais523: uhm
18:44:12 <tusho> INTERNET
18:44:16 <AnMaster> it would be like C-FFI really kind of
18:44:17 <ais523> and I could code something like that up easily as a C-INTERCAL expansion library
18:44:23 <ais523> tusho: INTERNET's the variable-stealing thing
18:44:28 <tusho> ah
18:44:33 <ais523> the system-calls extension is the ordinary socket-based networking thing
18:45:02 <AnMaster> ais523, got a better idea how to do it in an INTERCAL way then?
18:45:22 <ais523> not really, it's just an ordinary language feature
18:45:30 <ais523> so should probably be done by FFIing or not at all
18:45:33 <ais523> I have to go, anyway
18:45:42 <AnMaster> ais523, come back!
18:45:47 <ais523> ok
18:45:48 <AnMaster> elsewhere
18:45:48 -!- ais523 has quit ("(1) DO COME FROM ".2~.2"~#1 WHILE :1 <- "'?.1$.2'~'"':1/.1$.2'~#0"$#65535'"$"'"'&.1$.2'~'#0$#65535'"$#0'~#32767$#1"").
18:45:49 <AnMaster> :)
18:56:43 <AnMaster> oh well
19:00:58 -!- ais523 has joined.
19:01:26 <ais523> hi tusho
19:02:48 -!- Sgeo has quit ("Ex-Chat").
19:11:18 <psygnisf_> lalala
19:12:13 -!- psygnisf_ has changed nick to psygnisfive.
19:19:31 <AnMaster> ah there you are ais523
19:19:39 <ais523> yes
19:25:12 <tusho> bacj
19:25:56 <AnMaster> ais523, so I'd love to see the steal client thing
19:26:16 <ais523> you can have great fun just netcatting to an INTERCAL theft server
19:26:35 <ais523> but I'd probably write a client first as a perfectly good server comes with CLC-INTERCAL
19:37:40 -!- CakeProphet has quit (Read error: 60 (Operation timed out)).
19:40:30 <AnMaster> hm
19:40:38 <AnMaster> ais523, ah....
19:42:21 -!- Santa_wii has joined.
19:43:48 <Santa_wii> hi?
19:43:53 <ais523> hello
19:44:26 <Santa_wii> for a moment I thought this was empty ^^U
19:44:36 <ais523> no, it just has dead spells now and again
19:45:38 <Santa_wii> oh ^^U
19:46:08 <ais523> AnMaster: anyway, what do you want to talk about? Presumably you called me back here for a reason
19:46:36 <AnMaster> ais523, yes about C-INTERCAL future
19:46:50 <ais523> well I'm not doing much on it atm
19:47:00 <AnMaster> ais523, what are you working on then?
19:47:03 <ais523> although I did test it on Cygwin recently and it worked fine, so that's another platform it's tested on
19:47:10 <ais523> AnMaster: getting back to normal sleep patterns mostly
19:47:15 <AnMaster> ais523, ouch :(
19:47:17 <ais523> also planning other esolangs
19:47:48 <AnMaster> ais523, like what?
19:48:02 <ais523> well there's that Shove thing that I'd like to code at some point
19:50:32 <tusho> what is ^^U meant to be
19:50:36 <tusho> honestly
20:03:10 <AnMaster> ais523, tell me about shove
20:03:21 <ais523> well I explained it earlier
20:03:27 <ais523> Befunge+Underload
20:03:32 <ais523> with a stack of strings
20:03:39 <ais523> INTERCAL-like quoting on stringmode
20:03:56 <ais523> and the only commands are ' " < > v ^ and the other four which I don't really have good symbols for
20:04:02 <ais523> the other 4 are also directional
20:05:27 -!- kar8nga has joined.
20:11:38 <tusho> ais523: use unicode
20:11:45 <ais523> I thought of that
20:11:55 <ais523> but unicode in Funges has always been a bad idea for various reasons
20:12:05 <ais523> I'm thinking of maybe A V ( ) or something like that
20:12:35 -!- Santa_wii has left (?).
20:12:37 <AnMaster> ah
20:12:44 <AnMaster> that one
20:13:16 <AnMaster> ais523, you'd want IO too
20:13:28 <ais523> yes, but there's no obvious way to do it
20:15:19 -!- MikeRiley has joined.
20:18:52 <psygnisfive> ive heard that fortran is blazingly fast, is this true?
20:19:17 <ais523> I've heard that it's very good for what it does, but don't have much experience
20:19:26 <ais523> it's certainly blazingly short for maths compared to COBOL
20:19:35 <psygnisfive> :p
20:19:45 <MikeRiley> fortran is relatively quick...
20:19:57 <psygnisfive> quicker than c?
20:20:05 <MikeRiley> depends on the compiler, but i would say yes
20:20:14 <psygnisfive> ew.
20:20:20 <psygnisfive> i hate c but i'd prefer to code in c than fortran
20:20:32 <MikeRiley> been a long time since i have coded in fortran
20:20:37 <MikeRiley> much prefer c,,,,much easier...
20:20:38 <ais523> it's still slower than properly written asm though
20:20:49 <MikeRiley> agreed, cannot beat assembly...
20:21:04 <ais523> when writing for extreme speed normally I write in C but have the asm output open in another window
20:21:07 <psygnisfive> well duh :P
20:21:12 <ais523> and keep tweaking the C until it produces the asm I want
20:21:33 <ais523> finally inlining the asm if I can't find any way to get the compiler to write it
20:21:38 <psygnisfive> i wonder if its possible to design a CPU that runs a high level language natively
20:21:41 <ais523> I prefer to have a portable program though
20:21:44 <MikeRiley> a lot depends on what you are doing as what languages would be quicker...
20:21:50 <psygnisfive> ie the high level language IS assembly for that CPY
20:21:52 <psygnisfive> CPU*
20:21:53 <ais523> psygnisfive: several computers were built that ran Lisp natively
20:22:05 <MikeRiley> sure,,,i have seen a cpu once that ran forth natively
20:22:06 <psygnisfive> yeah but i think they decomposed them to something lower, didnt they?
20:22:14 <psygnisfive> forth i can definitely see
20:22:16 <olsner> forth, java, lisp cpus have all existed
20:22:30 <psygnisfive> i'd like to see a forth and lisp cpu
20:22:33 <MikeRiley> i have heard of lisp ones as well..
20:22:39 <olsner> java ones iirc usually based on a forth one, but rebranded and equipped with a small interpreter :D
20:22:46 <AnMaster> psygnisfive, C can be faster at some stuff
20:22:52 <AnMaster> like general purpose programming
20:23:06 <MikeRiley> for most things c has more than enough performance...
20:23:08 <AnMaster> FORTRAN is likely faster at math
20:23:26 <MikeRiley> yep,,,fortran is faster for math
20:23:32 <psygnisfive> why?
20:23:49 <MikeRiley> less complicated code, less instructions to execute....fewer instructions,,,faster run...
20:24:04 <AnMaster> there has been a brainfuck CPU too
20:24:08 <psygnisfive> why is that the case tho??
20:24:15 <ais523> C has to rely on procedure calls for much maths stuff
20:24:16 <MikeRiley> really???? although that one should not be too hard to do....
20:24:16 <olsner> but what does fortran actually have besides like vector operations and compilers built from a culture of compiling math programs?
20:24:23 <MikeRiley> i would like to see a befunge one!!!
20:24:24 <ais523> and compilers can't inline it as well as the Fortran ones can
20:24:34 <alexbobp> argh, trying to understand lambda calculus is making me so confused
20:24:39 <ais523> MikeRiley: yes, so would I
20:24:41 -!- atrapado has joined.
20:24:54 <psygnisfive> oh, it has vector operations? i can see that being useful then
20:25:05 <alexbobp> Is there a good introduction to unlambda?
20:25:39 <ais523> the official unlambda website is quite good
20:25:51 <ais523> but it's a lot easier if you learn ordinary lambda calculus before you learn unlambda
20:26:05 <alexbobp> okay, how do I learn lambda calculus?
20:26:18 <alexbobp> The page about it on the esolang wiki made my head hurt
20:26:46 <psygnisfive> alexbobp: read the normal wiki page
20:26:58 <alexbobp> psygnisfive: on wikipedia? okay.
20:28:32 <MikeRiley> anmaster: changed my FING fingerprint to just two commands...so now no weirdness about dealing the semantic stacks...
20:28:45 <AnMaster> err
20:28:45 <ais523> what's the new FING fingerprint?
20:28:48 <AnMaster> FNGR?
20:28:51 <AnMaster> or FING?
20:28:54 <MikeRiley> FING
20:28:54 <MikeRiley> Y (sem -- ) Drop semantic
20:28:54 <MikeRiley> Z (src dst -- ) Push source semantic onto dst
20:29:01 <MikeRiley> FING,,,,,FNGR stays as it is...
20:29:14 <AnMaster> MikeRiley, and what exactly does that do? you mean drop a char like Z or whatever
20:29:16 <ais523> where do you get semantics from?
20:29:18 <AnMaster> to push/pull one char?
20:29:33 <AnMaster> MikeRiley, isn't this like IMAP really?
20:29:36 <MikeRiley> Z will copy a semantic from the top of one semantic stack to another
20:29:37 <Deewiant> MikeRiley: heh, that's some simplification :-)
20:29:40 <MikeRiley> not the same as IMAP
20:29:52 <MikeRiley> Y will drop the semantic off the top of a single semantic stack
20:30:07 <ais523> ah, ok, so you can mess around with what letter means what
20:30:22 <MikeRiley> IMAP maps at the high level....FING maps at the semantic level...so can make one semantic act like another...
20:30:27 <MikeRiley> yes...
20:30:39 <ais523> MikeRiley: it should work for non-fingerprints too IMO
20:30:44 <MikeRiley> yes...
20:30:55 <Deewiant> MikeRiley: but what if another fingerprint defines Y and Z
20:31:07 <ais523> Deewiant: well, normal fingerprint rules apply, surely?
20:31:11 <Deewiant> or is this still acting as though FING weren't there
20:31:21 <Deewiant> ais523: yes, but you can't easily mess with what Y and Z do
20:31:28 <ais523> yes you can
20:31:35 <Deewiant> you can, but not easily
20:31:36 <ais523> Y and Z just have meanings like any other fingerprint
20:31:42 <ais523> and you can just manipulate them with FING
20:31:47 <Deewiant> yes
20:31:54 <Deewiant> but if you push something onto Y
20:32:01 <Deewiant> you have to push Y somewhere else first, so that you can use it again
20:32:07 <ais523> yes, but that isn't really a problem
20:32:22 <Deewiant> it was a problem with the earlier iteration of FING which defined around 20 commands :-)
20:32:33 <ais523> docs?
20:32:46 <Deewiant> probably not, except in my and others' irc logs
20:32:50 <MikeRiley> Y and Z could not re remapped with FING loaded
20:32:58 <MikeRiley> aceept to put something on top of them,,,
20:33:46 <Deewiant> ais523: http://tunes.org/~nef/logs/esoteric/08.07.27 has 'em
20:33:54 <MikeRiley> yeah, i think the new FING will work better...
20:33:59 <ais523> ok, for an even more interesting way to do FING... have an X command which swaps a fingerprint stack with a data stack
20:34:20 <ais523> ofc you then need numbers to represent semantics but that isn't too hard
20:34:42 <Deewiant> hmm, if it swapped with the SOSS that would work nicely
20:34:45 <MikeRiley> X may not work depending on how the interpreter is writtne....would work for Rc/Funge,,,,may not for others...
20:35:42 <MikeRiley> Rc/Funge-98 uses function numbers on the semantic stacks...so esily can be put onto a data stack...
20:35:44 <ais523> even better, let X swap two stacks
20:35:52 <MikeRiley> but those interpreters that use function references,,,would be more difficult...
20:36:00 <MikeRiley> i like the swap 2 stacks idea...
20:36:03 <ais523> instead or as well
20:36:38 <MikeRiley> including FING,,,,Rc/Funge-98 defines 8 new fingerprints....
20:37:11 <MikeRiley> in version 1.10
20:37:47 <ais523> MikeRiley: have you done IFFI?
20:38:00 <MikeRiley> no,,,since i do not have a compatable intercal to connect it to...
20:38:28 <ais523> well it's designed so it doesn't need to be connected to an intercal interp, you can just use the FFI within a Befunge program if you like
20:38:39 <ais523> to make calls to itself with COME FROM and suchlike
20:38:46 <ais523> but it's more useful if there's an INTERCAL program there too
20:39:28 <MikeRiley> been too long since i have done anything with intercal...
20:39:40 <ais523> what language is RC/Funge written in?
20:39:43 <MikeRiley> c
20:39:55 <ais523> hmm... maybe I should see if I can modify it to work with C-INTERCAL too
20:40:04 <ais523> then there would be two different ways to generate libick_ecto_b98.a
20:41:10 <MikeRiley> Rc/Funge-98 was written back when my programming habits were not terribly good,,,as a result,,,a lot of odd code in it...
20:42:19 <ais523> well all that really needs doing is modifying the main loop and having a load of fingerprints that just set flags
20:42:50 <MikeRiley> main loop is the worst of all!!!! ehehehehehe it has been modifed a bit to handle some of my feral fingerprints...
20:43:15 <ais523> oh dear
20:43:19 <ais523> but presumably it is just a simple loop?
20:43:30 <ais523> all that's needed is some extra things that happen every iteration
20:43:39 <MikeRiley> it is a simple loop...
20:44:50 <AnMaster> MikeRiley, why not remap Y and Z
20:44:54 <MikeRiley> part of my current work on the thing is to clean up the code a bit...
20:44:57 <AnMaster> the way cfunge does it you would
20:44:59 <AnMaster> could*
20:45:02 <AnMaster> it would be easy even
20:45:10 <AnMaster> and you could unload those semantics
20:45:14 <MikeRiley> you could remap Y and Z
20:45:22 <AnMaster> using unload and load
20:45:26 <AnMaster> like for other fingerprints
20:45:38 <AnMaster> it is just pushing function pointers around
20:45:41 <AnMaster> not hard at all
20:46:02 <AnMaster> A-Z are already stacks of function pointers in cfunge
20:46:03 <AnMaster> :D
20:46:10 <AnMaster> push/pop/peek
20:47:53 <MikeRiley> FING Y and Z now function in Rc/Funge-98....
20:48:02 <MikeRiley> still like the idea of X for a stack swap....
20:50:28 <AnMaster> MikeRiley, um you mean swap top entries between two stacks?
20:50:33 <AnMaster> well that could work
20:50:39 <AnMaster> it is just messing with function pointers
20:50:45 <AnMaster> perfectly valid
20:50:59 <MikeRiley> yep....should be easy impliment...
20:51:09 <ais523> swapping entire stacks could work too, and could also be quite easy
20:51:23 <ais523> I'm not sure which would be more useful, probably top entries
20:51:27 <MikeRiley> trying to decide which is most useful, swap whole stacks, or just tops.
20:53:39 <MikeRiley> brb
20:53:40 <AnMaster> MikeRiley, swap whole stacks would be a bit more work
20:53:41 <AnMaster> the way it is done in cfunge
20:53:51 <AnMaster> damn I'm timing out
20:54:40 <ais523> AnMaster: are they linked lists?
20:54:49 <ais523> if so they're easy to swap
20:55:02 <ais523> as you only have to swap the pointers to the top and bottom
20:55:02 <AnMaster> ais523, they are stacks, as in malloced blocks
20:55:03 <AnMaster> simply
20:55:09 <ais523> oh, array-based stacks
20:55:14 <ais523> yes, that could be harder
20:55:14 <AnMaster> but you need to copy over top pointers and such too
21:00:03 <MikeRiley> back
21:00:11 -!- pikhq has quit (Remote closed the connection).
21:01:24 <MikeRiley> am using either the 0-25 or the 'A - 'Z as valid parameters
21:03:02 <MikeRiley> an invalid parameter reflects
21:03:13 <MikeRiley> decided on X swapping top entries...
21:03:28 -!- KingOfKarlsruhe has joined.
21:11:08 <AnMaster> A-Z
21:11:11 <AnMaster> seems better
21:11:17 <AnMaster> MikeRiley, 0-25 is just silly
21:11:43 <MikeRiley> why?
21:12:14 <ais523> if Befunge had the same attitude of INTERCAL, you could swap a letter and newline and it would shuffle all the lines on the playfield around to match
21:12:19 <ais523> s/of/as/
21:12:47 -!- Judofyr has joined.
21:13:55 <AnMaster> ais523, err no...
21:13:59 <AnMaster> that I would never implement
21:14:10 <ais523> because it would break your efficiency stuff?
21:14:20 <AnMaster> ais523, because it would be hard to implement
21:14:23 <ais523> It does have a bit of a ring to it, though, and that sort of thing is par for the course in INTERCAL
21:14:28 <AnMaster> I would simply not implement that fingerprint
21:14:35 <AnMaster> and Befunge isn't INTERCAL
21:15:26 <MikeRiley> would not be the first fingerprint nobody implemented....
21:23:53 <AnMaster> MikeRiley, I'll implement FING the way you would do it
21:24:07 <AnMaster> next weekend after figuring out the thread bug
21:24:13 <AnMaster> err this weekend
21:24:27 <MikeRiley> thread bug??
21:25:14 <MikeRiley> here is what i implemented:
21:25:17 <MikeRiley> "FING" 0x46494e47
21:25:17 <MikeRiley> X (sem sem -- ) Swap two semantics
21:25:17 <MikeRiley> Y (sem -- ) Drop semantic
21:25:17 <MikeRiley> Z (src dst -- ) Push source semantic onto dst
21:25:17 <MikeRiley> sem can be 0-25 or 'A through 'Z. Any other value is an error and
21:25:18 <MikeRiley> will reflect
21:26:54 <MikeRiley> X works only on top of stack...
21:35:42 -!- olsner has quit ("Leaving").
21:40:21 -!- oerjan has joined.
21:57:32 -!- RedDak has joined.
21:59:50 -!- atrapado has quit ("Abandonando").
22:09:41 -!- Corun has quit ("This computer has gone to sleep").
22:14:20 -!- pikhq has joined.
22:25:56 -!- kar8nga has quit (Read error: 110 (Connection timed out)).
22:29:55 -!- MikeRiley has quit ("Leaving").
23:11:11 -!- fizzie has quit (clarke.freenode.net irc.freenode.net).
23:11:11 -!- pikhq has quit (clarke.freenode.net irc.freenode.net).
23:11:11 -!- lifthras1ir has quit (clarke.freenode.net irc.freenode.net).
23:13:44 -!- pikhq has joined.
23:13:44 -!- lifthras1ir has joined.
23:13:44 -!- fizzie has joined.
23:14:47 -!- Corun has joined.
23:16:16 -!- ais523 has quit (Remote closed the connection).
23:31:55 -!- cherez has left (?).
23:35:38 -!- oerjan has quit ("Good night").
23:39:47 -!- kar8nga has joined.
23:40:14 -!- KingOfKarlsruhe has quit (Remote closed the connection).
23:40:35 -!- Corun has quit ("This computer has gone to sleep").
23:40:58 -!- kar8nga has left (?).
←2008-07-29 2008-07-30 2008-07-31→ ↑2008 ↑all