←2008-03-05 2008-03-06 2008-03-07→ ↑2008 ↑all
00:16:33 <Sgeo> thinko?
00:16:47 <Sgeo> Also, there's basically an rm -rf in the current PSOX spec
00:16:56 <Sgeo> and you could easily specify a /
00:17:45 <Sgeo> Also, it won't really help with accidentally hitting rm instead of ls, it's more of against using a filesystem function instead of a network function
00:20:40 <ehird> [00:16] <Sgeo> Also, there's basically an rm -rf in the current PSOX spec
00:20:43 <ehird> This just means your spec is retarded.
00:20:46 * Sgeo pokes pikhq now
00:21:04 <ehird> Also, presumably there is no 'network-rm', because that would make no fucking sense.
00:22:28 <Sgeo> What does a lack of network-rm have to do with anything?
00:23:25 <Sgeo> 0x00 0x06 0x06 FNUM(1)/recursive STRINGNL/entityname 0x0A
00:23:39 <Sgeo> Um, the trac version doesn't have the force option yet
00:24:09 <ehird> Sgeo: Because if you use a filesystem function instead of a network function you COULDN'T accidentally 'rm -rf'.
00:25:36 <Sgeo> wha?
00:27:01 <ehird> /sigh.
00:27:29 <Sgeo> 0x00 0x06 something instead of 0x00 0x08 something doesn't sound too difficult to me
00:27:47 <Sgeo> although I think the arguments would be wrong, but still..
00:29:36 <Sgeo> Maybe I should restrict FS operations to the current directory?
00:33:33 <ehird> hahaha
00:33:48 <ehird> pikhq: He's strapping a nuclear sub to a skateboard, then making sure the nukes can only aim in a certain range.
00:33:54 <ehird> And putting them behind flimsy plastic.
00:38:35 <pikhq> ehird: LMAO
00:39:14 <pikhq> Sgeo: I'm going to recommend *against* that.
00:39:38 <pikhq> At the most, leave something saying 'For the love of god, don't use this without thinking about it.' in the spec.
00:40:12 <Sgeo> Against restricting to the current directory (or below)?
00:40:29 <Sgeo> pikhq, but someone could make a mistake in writing a BF program and accidentally call it
00:40:58 <ehird> Sgeo: And someone could, by mistake, rewrite PSOX to be the evilest virus.
00:41:02 <ehird> Then run it as root on a government system.
00:41:08 <ehird> You could go to jail! Better stop writing PSOX.
00:42:22 <pikhq> And someone could, by mistake, do the 'rm' syscall rather than 'ls'. :p
00:42:38 <Sgeo> Somehow, I think calling rm by mistake is much more likely than your scenario ehird
00:42:50 <Sgeo> pikhq, well, I think the arguments are slightly different, but still...
00:44:00 <ehird> I really do not understand how Sgeo's mind works.
00:44:49 <ehird> (Paranoid yet ignorant that all the stuff he's building on takes the route of assuming the programmer isn't a ridiculous idiot?)
00:46:48 <Sgeo> pikhq apparently made a bunch of mistakes when writing wget.b, and was testing it on PSOX.. if FS worked and he accidentally called the rm function..
00:47:04 <ehird> Then nothing would happen because he'd have permissions set up sanely.
00:48:09 <ehird> Well, I'm leaving this madhouse for another day. See you people around.
00:48:21 -!- ehird has quit ("Konversation terminated!").
00:54:38 <Sgeo> I suppose certain functions should have safety codes..
01:26:44 -!- faxathisia has joined.
01:27:17 <faxathisia> morning
01:42:58 <Sgeo> morning
01:43:13 <Sgeo> I guess some functions should have safety codes, and some not
02:15:39 -!- poiuy_qwert has joined.
02:53:55 * oklofok begun writing a cise interp, because he forgot the power cord of the computer the oklotalk interp was on somewhere
02:56:00 <oklofok> i love how variables are set in cise, "A = [1, 2, 3]; B = [2, 3, 5]" can just be written as 1 2 3 2 3 5;AB
02:56:51 <oklofok> ";" means "the following is a pattern match", and the list will automatically be cut in half... this is of course a marginal case, but cise is a marginal language
03:01:06 <bsmntbombdood> marginal language?
03:01:49 <oklofok> that was mostly wordplay, i meant it's not meant to have any use except for being short with programs of the type seen in golfing.
03:02:01 <bsmntbombdood> oh
03:03:11 <oklofok> not that i'm deliberately making it impossible to extend, i'm just assuming the fact parsing is in the general case, well, impossible, cracks down with bigger problems.
03:03:41 <oklofok> at least i think it will suffer from the halting prob, i haven't defined semantics fully yet
03:04:38 <oklofok> lol. my cise quicksort is simply *wrong*.
03:04:52 <oklofok> it's not a typo, it's simply the wrong algo.
03:04:59 <oklofok> i'm going to hurt myself.
03:05:34 <oklofok> /2;A b:C,',JnB this is some weird hybrid of mergesort and quicksort
03:05:57 <oklofok> cuts list in half, sorts both sides, and puts the middle element back in the middle
03:07:23 <oklofok> i'm very tempted to leave all constants impossible to put in the source :P
03:07:36 <oklofok> so that number 2 could not be "2"
03:07:52 <oklofok> you'd have to do something very weird to get it
03:08:46 * oklofok is fairly sure you don't need numbers for algorithms
03:17:31 <bsmntbombdood> you can implement nats in just about anything
03:20:24 <oklofok> bsmntbombdood: i'm aware of that. anyway, new quicksort: h:L,JnH'/#>h
03:20:40 <bsmntbombdood> O.o
03:21:04 <oklofok> the expression separation syntax i'm using is mostly good for making things *clearer*. i'm not sure why the fuck i have it... :D
03:21:33 <faxathisia> Jn pattern seems common
03:22:54 <oklofok> patternmatch onto h:L (== cut off head, put in h, put rest of list on stream because it's uppercased)... then, join with h (the head) the two lists returned when recursed throught the two results of mapping >h through the list collecting smaller and bigger results
03:23:05 <oklofok> *through
03:24:55 <oklofok> /# is one of my more "complex" functions, it takes a function f and a list l, then maps f on l, sorts results and groups identical adjacent results (identical results are ofc always adjacent in a sorted list...), then performs both the same sorting and the same grouping the the list l
03:25:11 <oklofok> it's not actually complex, just hard to explain in a short manner...
03:28:31 <oklofok> hmm... it seems it's not even trivial to define in cise
03:28:35 <oklofok> that's not good...
03:28:38 <Sgeo> Is anyone going to fiddle with PSOX 1.0b1 when it's released?
03:28:58 <oklofok> Sgeo: are you going to play with cise when i finish my interp?
03:29:03 <Sgeo> cise?
03:29:09 <oklofok> :D
03:29:15 <oklofok> at least i know what yours is :P
03:29:27 <oklofok> you prematurely proved my point
03:30:58 <oklofok> btw. did anyone actually read my explanations? the function is a bit complex, i may have a fundamental error there
03:31:13 <oklofok> i'll test once i get the basic shit rolling
03:31:59 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)).
03:32:37 -!- Judofyr has joined.
03:34:12 <oklofok> Sgeo: anyway, because i too am an attention whore, cise is my *awesome* language
03:34:35 <oklofok> it's so awesome, you could say "awesome is cise", and not be wrong.
03:35:31 <oklofok> wtf... i have failed in bubblesort too
03:37:16 <Sgeo> oklofok, wiki page?
03:37:26 <oklofok> not yet, i'm writing a spec now
03:53:57 -!- oklofok has quit (brown.freenode.net irc.freenode.net).
03:53:58 -!- atsampson has quit (brown.freenode.net irc.freenode.net).
03:54:00 -!- dbc has quit (brown.freenode.net irc.freenode.net).
03:54:00 -!- cherez has quit (brown.freenode.net irc.freenode.net).
03:54:17 -!- oklofok has joined.
03:54:17 -!- atsampson has joined.
03:54:17 -!- dbc has joined.
03:54:17 -!- cherez has joined.
03:55:29 * Sgeo eats a netsplit for dinner
03:57:18 -!- bsmntbombdood has changed nick to grub.
03:59:53 * oklofok goes off to get some grub ->
04:17:58 * Sgeo is going to sleep now. Good night
04:19:00 -!- Sgeo has quit ("Ex-Chat").
04:21:24 -!- Judofyr has quit (Read error: 110 (Connection timed out)).
04:21:34 -!- grub has changed nick to bsmntbombdood.
04:21:37 -!- poiuy_qwert has quit (Read error: 110 (Connection timed out)).
04:22:20 <oklofok> /whois bsmntbombdood
04:22:23 <oklofok> whoops
04:22:29 * oklofok fails at stalking
05:07:27 -!- GreaseMonkey has joined.
06:46:27 -!- louzer has joined.
06:46:47 -!- louzer has quit (Client Quit).
06:54:24 -!- Judofyr has joined.
07:23:03 -!- Judofyr has quit.
07:30:16 -!- atsampson has quit (Connection reset by peer).
07:45:26 -!- GregorR has quit (Remote closed the connection).
07:51:10 -!- GregorR has joined.
07:51:53 -!- atsampson has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:10:40 -!- oerjan has joined.
08:44:08 -!- GreaseMonkey has quit ("Read error: 110 (Connection chickened out)").
10:46:50 -!- oerjan has quit ("leaving").
11:05:53 -!- slereah_ has quit (Read error: 104 (Connection reset by peer)).
11:06:08 -!- slereah_ has joined.
11:09:50 <AnMaster> is it possible to make a quine in brainfuck I wonder
11:11:04 <faxathisia> Yes it is, here's one for example http://www.bf-hacks.org/hacks/quine.b
11:13:05 <AnMaster> interesting
11:13:22 <AnMaster> I find befunge source a lot easier to follow than brainfuck btw, is that normal?
11:14:31 <faxathisia> I can't read befunge
11:14:39 <faxathisia> I can't program in any stack language at all though
11:27:42 <AnMaster> I find stack languages quite easy
11:27:53 <AnMaster> compared to languages like brainfuck
11:28:12 <AnMaster> visualizing the path is easy for me
12:11:11 * slereah_ received a book on modal logic.
12:11:19 <slereah_> I shouldn't have bought the cheap version.
12:11:24 <slereah_> Some ass took note in it.
12:11:33 <faxathisia> :/
12:11:58 <faxathisia> I like it when I got a book from the library and someone "corrected" something in the book wrong
12:12:26 <slereah_> In that case, it isn't so moch corrected as "I need money for a notebook"
12:12:34 <faxathisia> oh :/
12:12:35 <slereah_> Maybe that's why he sold it.
12:12:39 <faxathisia> lol
12:12:40 <slereah_> To buy a notebook.
12:12:46 <slereah_> But now, he doesn't have the book!
12:12:52 <faxathisia> hahaha
12:12:55 <slereah_> Quite the conundrum.
12:13:59 <slereah_> "This is a metaproof of a metatheorem, not a proof of a theorem"
12:14:09 <slereah_> Can't you write that on a piece of paper you cheap bastard?
12:14:16 <faxathisia> rofl..
12:14:31 <faxathisia> (wtf is a metaproof?)
12:14:59 <slereah_> I suppose it's a proof done outside the system itself
12:15:23 <slereah_> A proof uses the axioms and rules of inference of the system, a metaproof something outside of it
12:17:27 * slereah_ reads the description of the book where he bought it
12:17:28 <slereah_> Book Description: Shows general cover wear. Highlighting and writing
12:17:28 <slereah_> throughout. Otherwise no problems.
12:17:35 <slereah_> Maybe I should have read it.
12:18:50 -!- Tritonio_ has joined.
12:35:27 -!- Corun has joined.
12:55:55 -!- Corun has quit ("This computer has gone to sleep").
12:58:51 -!- timotiis has joined.
13:50:34 -!- RedDak has joined.
14:47:59 <RodgerTheGreat> slereah_: is there anything like "I came up with a brilliant proof for this, but it's too big to fit in the margin" anywhere in the book?
14:48:46 -!- sebbu has joined.
15:11:57 -!- BMeph has joined.
15:37:33 -!- RedDak has quit (Remote closed the connection).
15:44:23 -!- pikhq_ has joined.
15:45:17 -!- pikhq has quit (Read error: 104 (Connection reset by peer)).
16:16:16 <slereah_> RodgerTheGreat: I don't know!
16:16:44 <slereah_> My guess would be some sort of class context.
16:16:54 <slereah_> Possibly with the author himself!
16:17:04 <slereah_> (There's the phone number of the author in the book)
16:18:40 <slereah_> Although since there's also the adress of the university, I guess not
16:18:54 <slereah_> I'm not too sure what the point of the phone number and all is.
16:22:00 -!- atsampson has quit (Read error: 104 (Connection reset by peer)).
16:33:04 -!- atsampson has joined.
18:02:21 -!- ihope has joined.
18:02:39 <ihope> Ello.
18:03:03 <slereah_> Hello sir.
18:06:01 -!- jix has joined.
18:07:20 -!- RedDak has joined.
18:35:40 -!- Judofyr has joined.
18:46:37 -!- cherez has quit ("Leaving.").
18:46:46 -!- cherez has joined.
18:51:12 -!- RedDak has quit (Remote closed the connection).
18:59:33 -!- jix has quit ("CommandQ").
19:21:14 -!- olsner has joined.
19:23:04 -!- jix has joined.
19:36:10 <SimonRC> An amazing mix of the serious and parody: http://www.gamasutra.com/view/feature/3563/microsoft_excel_revolutionary_3d_.php?page=1
19:40:38 <slereah_> Awesome.
19:43:42 -!- oerjan has joined.
19:52:43 <SimonRC> hi
19:52:46 <SimonRC> http://www.bash.org/?845468
19:53:16 <faxathisia> :(((
19:53:27 <faxathisia> so totally should have been ++sheep; not sheep++;
19:54:09 <faxathisia> (wait do you read sheep++; as 'increment sheep'?)
19:55:06 <AnMaster> as post increment
19:55:15 <AnMaster> ++sheep would be pre-increment
19:55:33 <faxathisia> "post increment sheep" "sheep post increment" or what?
19:55:47 <AnMaster> iirc (but I'm not sure) related sequence point in C
19:55:53 <bsmntbombdood> why would it matter?
19:55:55 <AnMaster> faxathisia, err?
19:56:09 <AnMaster> faxathisia, the former I would say
19:56:16 <AnMaster> at least in English
19:56:17 <faxathisia> semantically it makes no difference to the code
19:56:30 <AnMaster> faxathisia, with post and pre no, indeed
19:56:31 <faxathisia> but it matters to whether or not it rhymes
19:57:03 <faxathisia> and for me it didn't rhyme because I read it "sheep plus plus"
19:57:26 <AnMaster> lol, that should be a programming language
19:57:33 <faxathisia> lol
19:57:48 <bsmntbombdood> language of the day
19:57:50 <slereah_> I do!
19:58:00 <AnMaster> you got a infinite queue of sheeps, jumping over the gate (ie, pushing them onto the stack)
19:58:03 <AnMaster> something like that
19:58:25 <AnMaster> anyone want to write a spec for it?
19:58:26 <slereah_> A queue jumping on a stack? :o
19:58:38 <AnMaster> slereah_, err, sheeps
19:58:56 <AnMaster> anyway
19:59:10 <AnMaster> I bet you could base a programming language on counting sheeps
19:59:34 <slereah_> But what can you do with that language?
19:59:43 <AnMaster> oh wait, with ++, hm it got to be object orientated
19:59:52 <faxathisia> or abject oriented
20:00:16 <slereah_> That's the problem with awesome ideas. You need to make instructions out of them.
20:00:23 <AnMaster> gate would have to be a critical section, for concurrency issues
20:00:31 <AnMaster> faxathisia, "abject"?
20:00:41 <faxathisia> as coined by GOTO++
20:00:53 <AnMaster> faxathisia, *googles*
20:01:20 <AnMaster> curse you heisenbug, sql error again
20:01:25 <AnMaster> from within function "MediaWikiBagOStuff::_doquery". MySQL returned error "1030: Got error 127 from storage engine (localhost)".
20:02:55 <AnMaster> argh, manual only in French
20:03:23 <AnMaster> so impossible for me
20:03:29 <AnMaster> faxathisia, tell me about abject
20:03:38 * slereah_ be French
20:03:40 <AnMaster> I don't know French and GOTO++ seems to lack an English manual
20:04:02 <faxathisia> It's from this http://gpp.niacland.net/faq.html.en
20:04:07 <faxathisia> It's hilarious
20:04:10 <AnMaster> slereah_, ok, I'll write a programming language in Swedish then
20:04:21 <AnMaster> slereah_, and tell you that too :P
20:04:36 <slereah_> :D
20:04:52 * slereah_ once thought of making a BF clone in ancient egyptian
20:05:01 <AnMaster> you know that language
20:05:01 <slereah_> But unicode doesn't have hieroglyphs
20:05:07 <AnMaster> slereah_, hahah
20:05:12 <AnMaster> it doesn't?
20:05:13 <AnMaster> wow
20:05:51 <oerjan> i thought it did
20:06:02 <slereah_> I looked!
20:06:21 <slereah_> There's the other standard (forgot the name) that had an attempt at it.
20:06:28 <slereah_> With 1500 fucking symbols in it
20:06:59 <oerjan> the egyptians must have been pretty advanced to have 1500 symbols for fucking
20:07:04 <AnMaster> faxathisia, that page really doesn't explain it
20:07:09 <faxathisia> It does
20:07:11 <AnMaster> oerjan, hahah
20:07:14 <faxathisia> Notice that, from a certain point of view, GOTO++ opens a new paradigm, the “abject-oriented programming”. Abject (from the latin abjicio, from ab-jectum: throw away, with violence) point to a radical movement of retreat, opposed to the welcoming of the object; the representation of the abject denotes the necessary distanciation against the real and its monstruous deployment.
20:07:31 <AnMaster> faxathisia, yes, but what does that *MEAN*
20:07:38 <faxathisia> nothing
20:07:40 <faxathisia> lol
20:07:55 <oerjan> what about subject-oriented programming, anyone done that?
20:07:57 <faxathisia> The whole thing is a joke
20:08:06 <faxathisia> which I was referencinc
20:08:18 <AnMaster> faxathisia, of course, it is a esoteric language
20:08:25 <AnMaster> is there an interpreter for it?
20:11:05 <AnMaster> yay, by befunge interpreter in bash alsmost pass the mycology test suite. it fully passes the befunge93 part and almost all items of befunge98
20:11:21 <AnMaster> still the fingerprint stuff missing for example
20:11:34 <slereah_> I wonder, who are all those people who never talk?
20:11:45 <AnMaster> slereah_, highlight them all and see?
20:11:56 <slereah_> I mean, you know, who are they really!
20:11:58 <AnMaster> slereah_, I can go on for days without saying a word in this channel
20:12:04 <slereah_> Not what's their IP numbers.
20:12:13 <AnMaster> I'm on a total of 378 channels currently
20:12:15 <slereah_> But some of them, I don't think I ever saw them talking!
20:12:26 <AnMaster> slereah_, are your irc client on 24/7?
20:12:42 <slereah_> My computer is always on, at least.
20:12:51 <slereah_> And I usually look at the logs.
20:14:17 * AnMaster looks for ehird
20:15:39 <lament> is there something like mycology but for befunge 93?
20:15:44 <AnMaster> what are missing of the required f98 features are only negative funge-space, multiple stacks (though quite a bit of that is done) and the fingerprint based loading
20:15:51 <AnMaster> ehird bet I couldn't do it
20:16:11 <AnMaster> lament, hm yes mycology does have a b93 part
20:17:39 <lament> oh wow, beQunge is really pretty
20:19:19 * lament is writing a befunge-93 interpreter
20:19:42 <AnMaster> lament, well see http://rage.kuonet.org/~anmaster/bzr/index.py/log/bashfunge/head
20:20:03 <AnMaster> it is currently befunge08, a simplified befunge98 version
20:20:31 <AnMaster> lament, in what language are you writing your befunge-93?
20:20:50 * slereah_ be wondering.
20:21:06 <slereah_> Is there a funge that's based on designing circuits?
20:21:07 <AnMaster> "be wondering"? You mean "is wondering"?
20:21:17 <slereah_> Yes. But with "be" to sound cooler.
20:21:19 <AnMaster> slereah_, interesting, how do you mean
20:21:23 <slereah_> Also popped collars.
20:21:51 <slereah_> Well, you design a circuit in ASCII.
20:22:05 <slereah_> And run it.
20:22:25 <lament> AnMaster: python
20:22:37 <AnMaster> lament, well befunge93 is easy
20:23:13 <AnMaster> slereah_, interesting, but would it be a funge really? self modification would not be possible I think
20:23:32 <AnMaster> slereah_, btw:
20:23:34 * AnMaster be funge
20:23:36 * AnMaster runs
20:23:49 <slereah_> Well, I just mean being 2D.
20:23:56 <slereah_> I'm not too knowledgable on funges
20:24:08 <AnMaster> slereah_, why not make it?
20:24:28 <slereah_> Because I'm not too sure I'd be able to make a parser for it.
20:24:37 <slereah_> I already have trouble making Mulambda.
20:24:46 <slereah_> So 2D is kinda hard
20:24:50 <faxathisia> What's Mulambda?
20:25:13 <slereah_> I'm trying to make a language based on µ-recursive functions.
20:25:29 <AnMaster> err what is a "µ-recursive function"?
20:25:34 <slereah_> Because for too long, the grandfather of all computing has been ignored!
20:25:38 <AnMaster> micro-recursive?
20:25:44 <slereah_> AnMaster: You define a list of functions.
20:25:49 <slereah_> There's 4 primitives :
20:25:50 <faxathisia> it is shown that the μ-recursive functions are precisely the functions that can be computed by Turing machines
20:25:58 <slereah_> The 0() function
20:26:09 <slereah_> The successor function s(x)
20:26:12 <AnMaster> slereah_, interesting
20:26:34 <slereah_> The projector function p,n(x1,x2,x3,...,xn) = xn
20:27:00 <slereah_> And the µ function, µy f(y,x1,x2,...) = smallest y such that f = 0
20:27:06 <AnMaster> ok
20:27:16 <AnMaster> and that is turing complete?
20:27:18 <slereah_> And it is indeed Turing complete.
20:27:26 <slereah_> The first one to be!
20:27:32 * AnMaster finds that hard to believe, but if you say so...
20:27:40 <slereah_> Well, not counting combinators and the analytical engine
20:27:51 <AnMaster> btw, is the human brain turing complete? or is it more? or less?
20:27:54 <slereah_> But it's what launched all the theories on computability
20:28:10 <slereah_> The human brain is moar of a bounded storage machine
20:28:11 <faxathisia> AnMaster: There's no evidence of anything
20:28:44 <AnMaster> slereah_, true, not turing complete, but with infinite memory, would it be turing complete?
20:29:21 <slereah_> Well, any man can perform the instructions of a Turing machine!
20:29:33 <faxathisia> It's not even clear (due to beliefs like souls.. religion.. supernatural things.. which are all impossible to disprove) that the brain is a computer
20:30:15 <slereah_> faxathisia: But what if a computer has a soul too :o
20:30:23 <faxathisia> It just doesn't make sense to talk about something organic like this in a mathematical formalization
20:36:14 <oklofok> the human brain is asm-tc, it is easily programmable as if it was a turing machine, but it is bounded
20:36:37 <oklofok> anyone can simulate sk in their head
20:36:51 <oklofok> slereah_ just said that, i see
20:36:54 <oklofok> my head hurts a bit
20:37:12 <slereah_> Well, in your head gets awkward fast.
20:37:17 <slereah_> But a man with a pen can do!
20:37:27 <faxathisia> you can't program a brain
20:37:38 <oklofok> sure you can
20:37:41 <slereah_> Sure you can. Tell someone a list of instructions!
20:37:50 <faxathisia> They way a brain thinks is like the way gravity works
20:38:08 <slereah_> Through a metric tensor?
20:51:19 -!- Corun has joined.
20:53:10 <ihope> slereah_: the projector function returns its last argument?
20:53:31 <slereah_> Well, it returns the nth argument
20:54:17 <slereah_> It's actually supposed to be p(k,n)(x1,x2,x3,...,xn) = xk
20:54:30 <slereah_> But really, the n is usually clear from the context.
20:55:53 <faxathisia> slereah_: You could write an interpreter in lisp without having to write a parser
20:56:13 <slereah_> I hope you're right!
20:56:14 <bsmntbombdood> READ
20:56:27 <slereah_> Learning real languages isn't much fun
20:57:02 <faxathisia> a lot of people think it's not a real language :P
20:58:00 <slereah_> Does it have more than 30 instructions?
20:59:43 <ihope> Only two instructions are required: "next program" and "run".
20:59:51 <slereah_> Heh.
21:00:13 <ihope> Program number 27 is +++++++++++++++++++++++++++R.
21:00:28 <slereah_> Is this actually true?
21:00:38 <slereah_> (Because theoretically, you could totally do it)
21:01:10 <slereah_> Maybe I should make some statistics of the number of functions/commands/instructions/whatever in esolangs, to see if there's a trend
21:02:19 <ihope> Is what actually true?
21:02:36 <slereah_> Next and run D:
21:02:46 <ihope> It's possible, but very inefficient. :-)
21:03:09 <slereah_> Do you even need the run?
21:03:23 <ihope> You do if you want these to actually be instructions.
21:03:29 <faxathisia> make any character + and EOF run
21:03:35 <ihope> And if you don't want the instructions to be psychic.
21:03:39 <faxathisia> makes it easier to writea quine
21:03:51 <ihope> Quine? Fun.
21:04:27 <slereah_> Well, repeating quine at least.
21:04:37 <slereah_> Just a loop with print x
21:04:38 <ihope> Here we go: http://esoteric.voxelperfect.net/wiki/Unary
21:04:40 <slereah_> *+
21:04:45 <ihope> I imagine an actual quine would be possible.
21:04:54 <slereah_> I know of unary.
21:09:20 <ihope> "Should be treated and output" should be treated and output.
21:11:23 <ihope> Put the main part of the program on the tape, put the part of the program that puts that on the tape on the tape, output that.
21:11:52 <ihope> It might be possible to write a Unary quine in less than 1,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000 characters, though that would require some talent.
21:13:00 <oklofok> just write it in brainfuck, and make the part outputting the brainfuck code write it in unary, then just convert into unary
21:13:21 <oklofok> doing it like that shouldn't be too hard
21:13:22 <slereah_> Also, there might not be enough matter in the universe to run said program
21:14:22 <slereah_> Plus, with unary, you can just use brute foce!
21:16:32 -!- ehird has joined.
21:16:41 <ehird> HELLO
21:17:01 <faxathisia> HI
21:17:04 <slereah_> HI DUDE
21:17:18 -!- ehird has set topic: Topic: Topic topic topic topic topic 20 topic topic 'topic topic topic' topic topic. | #topic | topic topic topic.
21:17:27 <ehird> Message message message message message.
21:17:37 * faxathisia action
21:17:50 <slereah_> ALL CAPS
21:18:47 <ihope> Question?
21:19:05 <ihope> Word!
21:19:06 <slereah_> Answer.
21:19:26 <slereah_> "String"
21:20:20 <oerjan> no caps
21:20:37 <slereah_> Zot might be a better choice for unary.
21:20:52 <slereah_> Although it tends to be rather huge.
21:22:31 <ehird> Type -> Type
21:22:40 <ehird> and I repeat
21:22:53 <ehird> dip :: 'R 'a ('R -> 'S) -> 'S 'a
21:22:58 <ehird> awesomecakes
21:23:13 <ehird> (also, dip is like the nicest thing ever. it makes stack language code pretty.)
21:23:49 <ehird> on another note.. printf :: 'R str -> 'S
21:24:21 <ehird> uncons :: 'R [a] -> 'R [a] a
21:24:23 <ehird> err
21:24:25 <ihope> But * is a type. :-P
21:24:25 <ehird> ['a]
21:24:39 <ehird> uncons :: 'R ['a] -> 'R ['a] 'a
21:24:46 <ehird> which is really useful for functional stuffs.
21:30:06 <ehird> faxathisia: do you like stack languages?
21:30:11 <faxathisia> no
21:30:19 <faxathisia> They make me feel stupid in the bad way
21:30:28 <ehird> faxathisia: you'll like Joy!
21:30:32 <ehird> it's not like forth
21:30:33 <faxathisia> no I wont
21:30:33 <ehird> it's a lot simpler
21:30:34 <ehird> and purer
21:30:43 <faxathisia> I tried to write a type inferer in it
21:30:43 <ehird> faxathisia: seriously.
21:30:45 <faxathisia> that was horrible
21:30:49 <ehird> well, yeah, probably
21:30:54 <ehird> but 'dip' &frenz are nice
21:31:15 <faxathisia> It put me off stack languages for life
21:31:50 <ehird> faxathisia: http://rafb.net/p/7ISFuM24.html
21:31:54 <ehird> printf skeleton
21:32:01 <ehird> it can, obviously, only be typechecked at runtime
21:32:10 <ehird> it would require a very specialized typesystem to be otherwise :)
21:32:18 <faxathisia> that's neat
21:32:26 <ehird> if you have type info at runtime, just splatter check calls before 'print' in the 's','i',etc cases
21:32:36 <ehird> faxathisia: i think that should be easy enough to read :)
21:32:55 <ehird> 'case' is the only real magic there
21:32:59 <ehird> it is lispish
21:33:06 * faxathisia used case
21:33:07 <ehird> [..] is a list, and a closure.
21:33:15 <ehird> faxathisia: its not modeled on Joy's
21:33:17 <ehird> that's my language
21:33:18 <ehird> :P
21:33:26 <faxathisia> It looks exactly like Joy
21:33:30 <ehird> faxathisia: maybe so
21:33:32 <ehird> but it's more fun
21:33:34 <ehird> and it's strongly typed
21:34:08 <ehird> hmm
21:34:17 <ehird> "case" won't type well
21:34:23 <ehird> in fact [...] as a sequence won't , in general
21:34:25 <ehird> this is a pseudotype for it
21:34:53 <ehird> case :: 'R 'a ['a ('R -> 'S)] -> 'S
21:34:58 <ehird> where [a b] means 'a list of a and b'
21:35:21 <oerjan> for strong typing you're going to need several differen kinds of lists, like haskell has both lists and tuples
21:36:05 <ehird> oerjan: indeed
21:36:19 <ehird> oerjan: but i like the []y syntax
21:36:19 <ehird> :-p
21:36:27 <ehird> also, case is
21:36:31 <ehird> [a b a b]...
21:36:41 <ehird> which won't type even as a tuple (e.g. [(a,b)] would be [(a b) (a b)])
21:42:05 <AnMaster> ehird,
21:42:15 <AnMaster> <AnMaster> what are missing of the required f98 features are only negative funge-space, multiple stacks (though quite a bit of that is done) and the fingerprint based loading
21:42:15 <AnMaster> <AnMaster> ehird bet I couldn't do it
21:42:31 <AnMaster> ehird, that is how far I got with my befunge in bash today
21:42:35 <AnMaster> it's late here now though
21:42:49 <AnMaster> ehird, how goes tuberculosis ?
21:46:10 <ehird> AnMaster: On hold until I figure out how to reasonably manipulate fractions of bits
21:46:20 <ehird> AnMaster: and
21:46:24 <ehird> have you tried Mycology on it?
21:46:28 <AnMaster> ehird, I have
21:46:33 <AnMaster> that is how I can say what is left
21:46:34 <AnMaster> :)
21:46:40 <ehird> pretty good, then
21:46:41 <ehird> link?
21:46:51 <AnMaster> ehird, http://rage.kuonet.org/~anmaster/bzr/index.py/log/bashfunge/head
21:46:58 <ehird> (if it's so easy, I'm tempted to micro-optimize a C one.)_
21:47:07 <AnMaster> ehird, well the x instruction, I got it working locally
21:47:11 <AnMaster> but it isn't pushed yet
21:47:15 <AnMaster> as it breaks other stuff
21:47:16 * oerjan wonders if Mycology would be a good cure for tuberculosis
21:47:19 <ehird> the mycology guy is devilishly clever
21:47:57 <AnMaster> ehird, but I think the hard bits are the bits left really
21:48:06 <ehird> AnMaster: probably
21:48:12 <ehird> AnMaster: do you support N-funge?
21:48:22 <AnMaster> ehird, no, just befunge
21:48:22 <ehird> that is, not just Une/Be/Tre
21:48:24 <ehird> ah
21:48:32 <AnMaster> ehird, with more, it would be harder I bet
21:48:39 <ehird> AnMaster: they're all derived the same way algorithmically though aren't they?
21:48:39 <ehird> no special cases
21:48:54 <AnMaster> ehird, yeah, with a few more/less instructions
21:48:59 <AnMaster> like "go into screen" and such
21:49:12 <ehird> AnMaster: what does 6-funge look like? :-)
21:49:18 <ehird> (Hmm. That's 'Sexfunge')
21:49:32 -!- ehird has set topic: Fe fi fo funge, I smell the brainfuck of an Englishman..
21:49:43 <AnMaster> ehird, depends on language, in Swedish six and sex are both the same word heh
21:49:46 <AnMaster> "sex"
21:49:54 <ehird> AnMaster: Sextuple
21:49:57 <ehird> -> Sexfunge
21:50:02 <slereah_> Is that when you got mushrooms on your genitals?
21:50:07 <AnMaster> s-expressions
21:50:12 <AnMaster> readjust -
21:50:19 <ehird> Sex, pressions, funge.
21:50:25 <AnMaster> -_-
21:50:40 <ehird> AnMaster: "HRTI" 0x48525449 High-Resolution Timer Interface
21:50:40 <AnMaster> ehird, anyway, in befunge I can kind of cheat with wrapping
21:50:46 <ehird> you will have trouble with that
21:50:56 <AnMaster> ehird, I haven't done any extensions yet
21:50:57 <ehird> "PERL" 0x5045524c Generic Interface to the Perl Language <-- you can do this though
21:51:01 <AnMaster> and you don't have to support them
21:51:03 <AnMaster> afaik
21:51:09 <ehird> mycology tests them
21:51:13 <ehird> so ha :)
21:51:17 <AnMaster> ehird, and accepts if they don't exist
21:51:21 <ehird> yes, but still
21:51:28 <ehird> you should support TURT
21:51:31 <ehird> because they're a b98 TURT quine
21:51:34 <ehird> it draws itself using it
21:51:36 <AnMaster> ehird, I won't implement such. I aim at correctness not speed also
21:51:42 <ehird> beh
21:51:46 <ehird> it's no fun without the fprints
21:51:54 <AnMaster> ehird, e?
21:51:56 <AnMaster> eh*
21:52:05 <ehird> "TRDS" 0x54524453 IP travel in time and space <- this might be difficult
21:52:10 <ehird> AnMaster: the TURT quine!! it's fun!
21:52:17 <AnMaster> ehird, also I don't know how to do negative funge-space
21:52:26 <AnMaster> maybe if I got three extra arrays
21:52:33 <AnMaster> one for each "quadrant"
21:52:38 <AnMaster> with origin in the middle
21:52:40 <AnMaster> that could work
21:52:56 <AnMaster> and a lot of fiddling with the index
21:53:10 <AnMaster> <ehird> "TRDS" 0x54524453 IP travel in time and space <- this might be difficult <-- in time?
21:53:20 <AnMaster> ehird, anyway where is the registry over these extensions?
21:53:21 <AnMaster> :/
21:54:05 <ehird> AnMaster: that's from the mycology readme
21:54:34 <AnMaster> ehird, also I got some issues with array width, current local code reallocates everything if program tries to write in a cell that would be outside current array width
21:54:41 <AnMaster> as I do it as a wrapped aray
21:55:02 <AnMaster> line 1 = [0 +x], line 2 = [ const * y + x]
21:55:13 <AnMaster> where const is first the longest line of the loaded code
21:55:25 <AnMaster> it is time consuming reallocation
21:55:29 <AnMaster> and the whole thing is slow
21:55:36 <ehird> that's how you do raw screen stuff in an OS :-)
21:55:37 <AnMaster> ehird, anyway if I wanted speed, I'd do it in C
21:55:43 <ehird> 0xB8000(insert correct number of 0s)
21:55:47 <ehird> cast to unsigned char *
21:55:53 <AnMaster> ehird, err
21:55:57 <AnMaster> whatever
21:56:12 <AnMaster> ehird, anyway reallocation is painfully slow
21:56:20 <AnMaster> a few seconds for even small programs
21:56:28 <AnMaster> with native 2D arrays it would be much better
21:56:29 <AnMaster> :)
21:56:54 <AnMaster> ehird, also, I'm not even going to try concurrent funge or file io or execute
21:57:00 <AnMaster> because, those are optional
21:58:51 <AnMaster> ehird, another thing, the y instruction is only partially implemented, date and time stuff I don't do yet, and currently I push -27315 when any a positive invalid entry is wanted (though I plan to change it to make it more compatible)
22:00:32 -!- BMeph has quit (Read error: 104 (Connection reset by peer)).
22:01:14 <AnMaster> ehird, feel free to make patches to my code!
22:01:21 <AnMaster> ;P
22:01:48 <AnMaster> actually once I get this working, I may do a C version
22:01:51 <AnMaster> or maybe objc
22:04:42 <ehird> objc<3
22:04:45 <ehird> objc+os x<3
22:05:10 <ehird> AnMaster: fix yur bzrweb
22:05:14 <faxathisia> I wish objc would replace c++
22:05:21 <ehird> yes, me too
22:05:31 <faxathisia> It's everything C++ should have been
22:05:32 <ehird> and all the NS apis, oh my, <3
22:05:44 <ehird> gnustep is kind of useless though :)
22:05:59 <ehird> so i hope someone writes a decent implementation of all of those nice APIs that is cross-platform
22:06:09 <ehird> otherwise, people will have to buy macs to use my software. how will i live. :(
22:09:54 <ehird> I'm going to write one in Python. But it'll be fast, thankfully.
22:09:56 <ehird> Why? numpy.
22:10:01 <ehird> It'll be spending most of its time in C. :P
22:10:14 <ehird> I should call it f3nge (see topic)
22:11:10 -!- jix has quit (Read error: 148 (No route to host)).
22:12:26 <lament> objc seems kinda lame
22:12:32 <ehird> lament: lies
22:12:34 <ehird> it is awesome
22:12:42 <ehird> take smalltalk, take c, and make them actually hug
22:12:49 <faxathisia> You should try writing 11k line programs in it with a friend
22:12:56 <lament> ehird: yeah, yeah
22:12:58 <faxathisia> It's a decent language
22:13:14 <ehird> (as opposed to C++: take modula-3 and god knows what other crap, take c, mash them together in a FIGHT FIGHT FIGHT and add some more crap that makes it incompatible with c and oooh turing-complete compilation etc etc etc)
22:13:24 <lament> ehird: i don't like having to write an interface and an implementation for everything. And why are instance variables part of the interface?
22:13:53 <faxathisia> kind of irrelevant details
22:13:55 <lament> and, of course, there's NO STANDARD LIBRARY which completetly KILLS any potential the language might have had.
22:14:44 <ehird> there is a standard library, dear lament
22:14:46 <ehird> It's called NS*
22:14:50 <lament> um
22:14:52 <lament> ...yeah.
22:14:56 <faxathisia> nah
22:15:03 <ehird> fyi the NS classes are awesome.
22:15:06 <faxathisia> It's called objcruntime.h
22:15:07 <faxathisia> :P
22:15:11 <ehird> faxathisia: eek. :-)
22:15:21 <lament> the NS classes as provided by gnustep?
22:15:40 <ehird> lament: no, Apple. But I am biased. ;)
22:15:45 <faxathisia> oh I wrote a parodey
22:15:51 <ehird> parodey?
22:15:53 <lament> ehird: oh, apple, sure. I agree.
22:15:56 <ehird> is that a parody involving e?
22:15:59 <faxathisia> parody
22:16:08 <ehird> lament: yeah other platforms need a good implementation
22:16:09 <lament> ehird: but locked-in languages are silly
22:16:14 <faxathisia> http://fax.twilightcoders.net/CocoaC/
22:16:19 <ehird> but openstep exists
22:16:19 <lament> apple pretty much owns objc
22:16:24 <ehird> and needs some love
22:16:24 <ehird> ;)
22:16:27 <lament> witness objc 2.0
22:16:34 <ehird> faxathisia: haha, yeah, i hate that tutorial
22:17:12 * faxathisia think .. if anyone has a chance of understanding this kind of humor it's someone from #esoteric
22:17:22 <ehird> faxathisia: however i do like cocoa
22:17:23 <ehird> so die die die
22:17:27 <lament> faxathisia: hahaha
22:17:41 <ehird> (Also, sscanf is a horrid abomination from hell. That's why. :P)
22:17:46 <faxathisia> That's just a biproduct of my work writing an objc bride in CL btw
22:19:09 <oerjan> Is cocoa a parody avoiding a particular vocalic symbol?
22:19:34 -!- RedDak has joined.
22:20:14 <lament> lovely tutorial
22:20:20 <faxathisia> ty :D
22:22:16 <oerjan> Also, why is this involving bridal affairs?
22:30:06 <SimonRC> hmm
22:30:14 <lament> faxathisia: you actually use CL? :)
22:30:25 <SimonRC> well, KigForth now does a little bit of stuff
22:30:26 <faxathisia> for a couple years yeah
22:31:00 <SimonRC> I have a program that does 6 7 * .
22:31:13 <SimonRC> it uses a word in forth to do call *
22:31:34 <ehird> SimonRC: meh
22:31:37 <ehird> i tried kigforth when you posted it
22:31:39 <ehird> syntax errs.
22:31:42 <SimonRC> yes
22:31:50 <SimonRC> I did say I had'nt tried to compile it
22:32:01 <ehird> SimonRC: Make kigforth strongly typed!
22:32:11 <SimonRC> no
22:32:15 <SimonRC> it's a Forth damnit
22:32:32 <ehird> SimonRC: but strongly-typed functional concatentative languages are fun
22:32:54 <lament> wow @ N0x35C49E
22:32:59 <SimonRC> http://pastebin.ca/931031
22:33:05 <SimonRC> lament: ???
22:33:18 <SimonRC> noxes cage?
22:33:27 <ehird> SimonRC: that c code is actually really nice
22:33:33 <SimonRC> huh?
22:33:38 <ehird> i wish all c was like that.. i hate looking at most c :p
22:33:57 <SimonRC> deadpan sarcasm doesn't work that well on IRC
22:33:57 <ehird> assert(sizeof(C*) == sizeof(C));
22:33:59 <ehird> that's quite a demand
22:34:06 <SimonRC> not really
22:34:08 <ehird> SimonRC: good thing -- it wasn't sarcasm
22:34:15 <SimonRC> really?
22:34:20 <SimonRC> thanks
22:34:22 <lament> faxathisia: do you like it?
22:34:58 <SimonRC> the idea is that C is a "cell" type: a union of equal-sized ints, pointers, function pointers, etc
22:35:01 <faxathisia> like CL? Yes It's fanstic
22:35:25 <SimonRC> the asserts make the program blow up meaningfully if the types aren't the same size as the union
22:35:29 <faxathisia> fantastic .. beh cannot type
22:35:38 <SimonRC> no, my paste
22:35:53 <SimonRC> I ought to comment the cryptic variable names a bit more
22:35:59 <ehird> SimonRC: your C is too advanced
22:36:03 <ehird> SimonRC: in forth cells are untyped..
22:36:09 <ehird> they're just "int"
22:36:19 <ehird> and internally, cast into (int *) when doing odd stuff
22:36:46 <SimonRC> but casts are too long textually
22:37:07 <ehird> SimonRC: Easily solvable.
22:37:15 <ehird> #define C(x) (x)
22:37:17 <SimonRC> .p for a pointer, .s for a string, .i for an int, .f for a function pointer, etc are easier to read IMO
22:37:20 <ehird> #define CP(x) (x*)
22:37:26 <ehird> SimonRC: and maybe so, but it's not Forthy
22:37:27 <ehird> :)
22:37:42 <SimonRC> hmm
22:37:54 <lament> mm... maybe i should learn CL after all
22:38:27 <slereah_> Combinatory logic?
22:39:42 <lament> lisp
22:40:03 <slereah_> CL?
22:40:12 <faxathisia> Common Lisp
22:40:15 <slereah_> Oh.
22:40:59 <SimonRC> heh, obviously the definition of fetch should be:
22:41:01 <SimonRC> W(st,fe,"!" ,*T.p=S;D;D)
22:41:07 -!- RedDak has quit (Remote closed the connection).
22:41:16 <SimonRC> I like ;D;D to drop two items from the stack
22:41:24 <SimonRC> it looks... happy
22:42:38 * SimonRC goes to bed
22:53:03 <slereah_> Hm. Maybe I should write Clock Punk in C.
22:53:18 <slereah_> It has an easy syntax and concept, and it would be faster.
22:53:44 <slereah_> Although I think I need to separate the I/O from the memory.
22:54:09 <slereah_> The input is a nightmare when it's on the memory.
22:55:08 <slereah_> Already bad enough to deal with the input time!
22:56:07 -!- oerjan has quit ("Good night").
23:12:23 <slereah_> "For output, the machine would have a printer, a curve plotter and a bell. "
23:12:23 <slereah_> ...
23:12:27 <slereah_> A bell for output?
23:12:33 <slereah_> Is that for error messages?
23:14:50 <ihope> For getting attention, I suppose?
23:16:37 <ihope> Type "solve P = NP, then start ringing", go get coffee, come back, go get a sandwich, come back, go get a taco, come back, go get a bottle of chocolate milk, come back, go get a banana, come back...
23:18:09 <olsner> "I have a proof for P = NP, but unfortunately it is too long for this IRC server's flood limit"
23:18:14 -!- timotiis has quit ("leaving").
23:19:34 <ihope> All proofs of P = NP can be put into the form "X. X implies P = NP. Therefore, P = NP."
23:19:56 <ihope> If both X and "X implies P = NP" are decently easy to prove, there you go.
23:20:48 -!- atsampson has quit (Read error: 113 (No route to host)).
23:32:05 -!- Corun has quit ("Leaving").
23:36:53 -!- Corun has joined.
23:48:54 -!- ihope_ has joined.
23:57:34 <ehird> ihope: P = NP, because I said so.
23:57:36 <ehird> QED.
23:58:19 <ehird> SimonRC: I am writing a forth in the same style now!
23:58:23 <ehird> int main() {for(;;)NEXT();return 0;}
23:58:23 <ehird> :D
23:58:34 <slereah_> P=NP is so boring.
23:58:45 <faxathisia> P\=NP is in
23:58:47 <slereah_> Let's make something bolder.
23:58:52 <slereah_> Like NC=EXP
23:58:59 <ehird> SimonRC: ok, this is awesome:
23:59:03 <ehird> void NEXT() {ip++();}
23:59:17 <ihope_> ehird: you forgot I said so => P = NP. :-P
23:59:31 <ehird> ihope_: I said so => X for all X
23:59:33 <ehird> that is an axiom
23:59:37 <ihope_> Ah, I see.
23:59:55 <ihope_> So, MPEG looks like a series of JPEG images, doesn't it?
←2008-03-05 2008-03-06 2008-03-07→ ↑2008 ↑all