00:03:08 -!- AndoDaan has joined. 00:05:33 -!- Bicyclidine has quit (Ping timeout: 260 seconds). 00:21:20 `run gcc -Wall hello.c 00:21:22 hello.c:1:12: warning: ‘main’ is usually a function [-Wmain] 00:38:29 -!- Phantom_Hoover has quit (Remote host closed the connection). 00:38:37 -!- LordCreepity has quit (Ping timeout: 245 seconds). 00:44:54 why does english not even have a singular of clothes 00:45:22 -!- GeekDude has quit (Quit: {{{}}{{{}}{{}}}{{}}} (www.adiirc.com)). 00:51:13 -!- LordCreepity has joined. 00:51:13 -!- LordCreepity has quit (Client Quit). 00:51:28 -!- LordCreepity has joined. 01:08:54 -!- mcfrish has joined. 01:09:29 -!- mahem1 has joined. 01:16:53 Hey all, speaking about befunge here. Is there any fast way to do advanced stack manipulations. For instance 'right rotating' a LIFO stack (the first value becomes the third, third, become second, second becomes first) 01:17:24 93? 98? 01:17:42 -!- mcfrish has left. 01:18:57 98. Although, not entirely sure of the difference between them. 01:19:48 in 93 you have almost no way to directly or indirectly access the stack element past second-to-the-top 01:21:34 Excluding sets and puts? Or does 93 not have those? 01:21:43 yeah, excluding sets and puts 01:22:09 ok, and in 98 what commands let you do that? 01:22:10 of course, you are obviously limited in 80*25 bytes then 01:22:41 afaik there is no direct command, but you can combine stack stack ops to get the similar effect, I think 01:25:06 I've tried to work out how to use the command seen here 9http://en.wikipedia.org/wiki/Befunge) paste the second, but I can't seem to . 01:25:11 Example? 01:26:12 -!- zzo38 has joined. 01:28:27 -!- idris-bot has quit (Ping timeout: 246 seconds). 01:30:24 mahem1: the Wikipedia article exclusively discusses Befunge-93 (which is far smaller language than Funge-98), you should look at the "official Funge-98 specification" in the external links. 01:30:45 of course, unless you want to constrain yourself to Befunge-93 01:35:32 lifthrasiir, Dang, buh, I've been stuck in a small little world... Thanks for setting me free from the small world of befunge93! 01:36:12 the constraint is often a source of creativity though ;) 01:39:26 True, it's quite fun and intriguing actually. But I feel like I am cheating when I just use gets and puts as variables with mostly an empty stack... 01:39:41 we all do it. 01:39:49 so much room for variables. 01:40:06 just lying there, under the ip's feet. 01:40:43 Hmmmm, no goto in Funge98 01:41:01 Yeah, we all do, but then it kills the challenge. 01:41:21 http://users.tkk.fi/~mniemenm/befunge/ccbi.html best '98 interpreter, has most of the fingerprints (modules) 01:41:44 is cfunge still in development? 01:41:57 It's fun trying to figure out when to duplicate the top value for use way later in your program. 01:43:25 I doubt it, lifthrasiir. but idk. 01:43:30 -!- yiyus has quit (Ping timeout: 260 seconds). 01:43:46 -!- yiyus has joined. 01:44:32 kinda lost my appetite for befunge when i started golfing. all that creativity doesn't help with competetiveness. 01:51:39 -!- drdanmaku has quit (Quit: Connection closed for inactivity). 02:03:50 I don't think CCBI is very in-development, either. 02:06:15 funge's best days are behind him i'm afraid. 02:14:25 -!- zzo38 has quit (Ping timeout: 258 seconds). 02:23:02 -!- shikhin has joined. 02:26:18 -!- shikhout has quit (Ping timeout: 272 seconds). 02:33:55 -!- Bicyclidine has joined. 02:52:54 Hmmm, how do I get this 3rd dimension working... 02:53:18 are you using the windows' binary? 02:53:47 in ccbi i mean. 03:00:18 I dunno I got my interpretter from here. https://github.com/catseye/Befunge-93/blob/master/src/bef.c 03:00:22 On, linux. 03:02:36 I don't think '98 is implemented in that one. 03:02:55 and the 3D stuff is '98. 03:04:01 is there any particular reason for a finite number of dimensions 03:04:09 -!- J_Arcane has quit (Remote host closed the connection). 03:04:43 idk hilbert space just seems.... tooo big. 03:05:13 -!- J_Arcane has joined. 03:05:24 i'm just saying, as long as you're adding a whole dimension, might as well go for broke. 03:06:52 yeah, but after 3... maybe 4, it's just useless trying to visualize. and for me, personally, i'm useless without visualization. 03:06:57 looks like funge 98 is generic anyway? you could have a unary "turn in this direction" operator in addition to the usual 0ary ones, so you wouldn't even need infinite opcodes 03:08:00 have you ever played nethack or something? they do three dee just by successive slices of 2D, and it works fine since the topology is discrete. shouldn't be too hard in n dimensions 03:09:28 hmm, i've been looking a nethack recently. and i couldn't make out if it was a topdown view, or side on. 03:09:34 topdown 03:09:37 it takes practice though yeah 03:10:00 Whoops that is what I am using now. But I meant in funge98. 03:10:17 basically i just mean each floor is a flat surface, and the dungeon as a whole is just a bunch of those taped together 03:10:18 Bicyclidine: it already has instructions to set delta 03:10:24 hell yes 03:10:26 so you can do arbitrary dimensions, the only thing you need to specify is file encoding really 03:10:39 very forward thinking 03:10:43 it'd need tweaks for infinite dimensions though. 03:10:50 Like what code is excuted in the 3rd dimension. How do you write it? . Or do I need to let it write it's own code in 3d? 03:10:50 how are three dee spaces encoded 03:11:04 h and l i think 03:11:07 ^L increases z and resets x and y, basically 03:11:12 ^L as in the control code 03:11:26 don't we have a befunge '98 bot here? 03:11:28 i mean how would you describe the 3d space of a program 03:11:32 fungot: help 03:11:32 Bicyclidine: we were at this arcade. do you remember when i gave you five hundred bucks, and told you to upgrade my computer for doom 3? 03:11:40 I'm not sure what you mean 03:11:44 I'm talking about the file format 03:11:49 you use ^L to separate 3D slices, basically 03:11:56 OK, that makes sense then 03:12:00 i thought you meant those were instructions 03:12:22 catseye mentions other topologies so that's uh, something 03:12:53 continuity sounds like it would be annoying. 03:14:48 with a certain number of dimensions having instructions might be redundant. you only need like... i think seven continuous dimensions to run a UTC 03:15:58 * mahem1 is still confused on how to use l and h... 03:16:10 -!- Sprocklem has joined. 03:16:42 the befunge 98 spec link is broken :( 03:17:26 easy to find on github though i guess, if that's what this is 03:17:38 http://quadium.net/funge/spec98.html 03:19:14 the delta function uses absolute space! how am i supposed to generalize this to a kerr-newman metric 03:19:39 All the spec really seems to say is. 03:19:41 The h "Go High" instruction causes the IP to travel up (delta <- (0,0,1)); the l "Go Low" instruction causes the IP to travel down (delta <- (0,0,-1)). These instructions are not available in Unefunge or Befunge. 03:20:20 So you're wondering if that's a one time move or a more permanent change like <> etc? 03:20:44 Permanant change I would assumen, cause it's changing the delta. 03:20:54 so what don't you get 03:21:00 But I am askign what code does it go and excute. 03:21:06 Cause you only write code in 2d 03:21:12 well, the code above, presumably 03:21:18 elliott_ said you specify that with some ^L thing 03:21:31 otherwise i guess it's whatever's in fungeland by default, which is probably nops? 03:21:36 the quadium.net spec is out of date 03:21:51 I don't have a 3d text editor. :P 03:21:52 use https://github.com/catseye/Funge-98/blob/master/doc/funge98.markdown 03:22:04 What's an example of using ^L? 03:22:04 your text editor is weak 03:22:05 anyway, I don't get the confusion 03:22:08 the IP starts at (0,0,0) 03:22:11 if you write 03:22:12 abc 03:22:12 def 03:22:15 ^L 03:22:18 ghi 03:22:20 jkl 03:22:23 then the IP starts at a 03:22:25 e is at (1,1,0) 03:22:28 g is at (0,0,1) 03:22:31 the internal links are broken on the github, fuckin a 03:22:31 l is at (2,2,1) 03:22:37 (iirc) 03:22:46 "In Trefunge-98, the Form Feed (12) character increments the z coordinate and resets the x and y coordinates to zero." 03:22:51 I guess you might need to omit the newlines around the ^L there. 03:23:07 all this is just about interpreting source files; the ^Ls don't exist in fungespace or anything. 03:23:15 just like the newlines don't, for 2d funge 03:23:43 i have no idea what this lahey space thing is talking about 03:23:54 I see. Pretty crazy stuff. Lemme try.. 03:24:05 Bicyclidine: it's just talking about how wrapping works. 03:24:21 Bicyclidine: since the space is infinite, but if you have e.g. "foobar" then it runs f, o, o, ..., a, r, f, o, o, ... 03:24:31 rather than running f, o, o, b, a, r and then running spaces (which just get skipped) forever 03:25:13 you can think of it as just being a finite wrapping space that expands as you place stuff outside the boundaries 03:25:18 but that doesn't quite specify all the behaviour. 03:25:32 lahey space is just the overly-fancy "mathematical" model of the space being used. 03:25:39 of course. 03:25:47 i don't understand how this is distinct from a torus i admit 03:26:11 oh, maybe for weird deltas 03:26:12 or something 03:26:17 because toruses are finite 03:26:20 fungespace is infinite. 03:26:39 it's not a fixed, wrapping size, it's both infinitely large and wrapping. 03:26:54 when you wrap you go over an /infinite/ amount of space, conceptually 03:26:55 so a resizeable torus, practically speaking 03:27:10 yeah, but that's not an actual specification of the space. :p 03:27:15 and there are edge-cases in terms of how you do that resizing. 03:27:17 nerds... 03:27:23 but yeah that makes sense i gues 03:27:31 note that this is relevant in cases like foo"bar 03:27:45 i've been reading about strange attractors for hours so everything looks like topological garbage 03:27:49 that runs f, o, o, and then pushes I think "bar foo" to the stack 03:27:54 manifolds... everywhere... 03:27:56 (by which I mean, it pushes those ascii values) 03:27:57 oh that's pretty cute 03:28:08 and then executes b? 03:28:10 in stringmode, consecutive spaces get collapsed, like in HTML 03:28:16 it's just collapsing aleph_null of them :p 03:28:20 Bicyclidine: *nod* 03:28:23 i bet you could write some really horrid programs that way 03:28:36 though i guess befunge is probably good for that in general 03:29:56 maybe i should like... actually write a program. 03:32:25 does esolang have any that are properly lorentz invariant 03:32:46 or whatever the words are 03:35:33 do you think running a bunch of semiconductors counts as a programming languages 03:44:59 -!- tromp_ has joined. 03:54:29 You only need two registers for TC, right? what's the instruction set like again 04:02:46 -!- zzo38 has joined. 04:11:46 I tried to figure out the decks of Pokemon Card GB2 cards only, assuming all random stuff to your benefit and your opponent is cooperating but nobody can concede, how to win with the largest number of cards in your draw pile at the end. 04:12:38 and? 04:12:46 I came up with: Your cards = 1x GAMBLER, 1x any basic pokemon card. Opponents cards = 1x MEOWTH [Lv.14], 3x PORYGON [Lv.12], 2x RATTATA [Lv.9], 1x RECYCLE ENERGY, 4x IMAKUNI?, 1x ITEMFINDER. 04:13:38 -!- Left_Hand_6969 has joined. 04:13:44 Bicyclidine: minsky machine 04:14:06 Bicyclidine: http://esolangs.org/wiki/Minsky_machine 04:14:47 "alternate state transition" is basically a jump right 04:14:52 it's been a while since i've played... the gambler does it? 04:14:58 yeah 04:15:09 god it must be a pain in the ass to write anything 04:15:24 AndoDaan: GAMBLER card means: Shuffle all cards from your hand into your draw pile. Toss a coin. If heads, draw eight cards; if tails, draw one card. 04:16:16 how many cards do i have in my hand on average? 04:16:54 You start with seven cards, and then draw one card on the beginning of each turn (if you cannot, you lose). 04:17:27 oh wait... 8-> and maybe eight back. 04:17:48 i'm imagining how to compile from brainfuck and, seriously, pain in the ass 04:21:21 Someone told me that "while(setjmp(buf));" is like resumable exceptions. Does resumable exceptions have anything to do with the RESUME command in BASIC? I can see some similarity. 04:22:57 anyway i guess i'm pretty sure that trefunge with only <>^vlh is tc. 04:23:32 I doubt it. 04:23:37 how could you ever branch 04:24:06 you use your position in x as reg1, position in y as reg2, and position in z as the ip. the program is fixed so it should be okay 04:24:13 branching would be going to wherever in z 04:24:30 how do you branch on any of those registers 04:25:08 you position an h in the appropriate place on the zero of the appropriate axis 04:25:12 or an l or whatever 04:25:47 you can only branch to constant instructions, so you know all the branches when you're setting up fungespace, and there's a finite number, so you can space things out appropriately 04:26:29 well... ok. write it up :p 04:26:35 I'm too tired to analyse. 04:26:43 it sounds interesting though. 04:27:35 i think i'll just believe minsky that two registers is TC and that'll be that 04:28:12 -!- shikhin has quit (Ping timeout: 260 seconds). 04:28:30 anyway there must be some number of dimensions it works for, i don't think discretizing the space ought to make physics totally impossible and obviously with a given number of continuous dimensions you only need to move cos phase fuckin space 04:30:21 i guess the problem is that actually finding a program written in a minsky machine is like... why would you do that 04:32:14 -!- tromp_ has quit (Read error: Connection reset by peer). 04:32:21 -!- tromp_ has joined. 04:34:45 Bicyclidine: there's one linked to from the Etre page 04:35:39 so there is! let me see if i can even understand this syntax 04:35:43 Bicyclidine: also, wouldn't it be easier to simulate Collatz functions in trefunge with those commands? 04:36:14 maybe but i'm not thinking about that 04:36:39 oh i thought you just wanted to prove that subset TC 04:37:16 well, i'm thinking of this in the context of strange attractors. more proofs the merrier i guess 04:38:58 e.g. i think reducing it to two dimensions would /not/ be TC, but i can't prove that off the top of my head 04:39:24 and if i said "by the poincare-bendixson theorem" people would just be confused 04:46:30 i guess the initial condition of fungespace has to be infinitely large, though repetitive. oh well 04:47:49 should i put it on the funge talk page or what 04:48:48 -!- Left_Hand_6969 has quit. 05:02:44 -!- Sprocklem has quit (Ping timeout: 272 seconds). 05:05:47 oh durr the paper i was thinking of is only three dimensional :x 05:33:14 -!- Bicyclidine has quit (Ping timeout: 250 seconds). 05:34:36 If a recruiter is blatantly targetting me personally, but suggests they want to talk today or tomorrow, is it ok to hold off a bit? I mean, I'm the one in demand 05:38:22 Just ask yourself "would a stupid person hold off a bit?" And if the answr is "no" then yes. 05:41:55 * Sgeo mutters something about reversed stupidity, and also not being smart enough to model a stupid person 05:43:09 -!- kcm1700 has quit (Remote host closed the connection). 05:43:17 -!- kcm1700 has joined. 05:43:38 -!- Bicyclidine has joined. 05:51:59 [wiki] [[Talk:Befunge]] http://esolangs.org/w/index.php?diff=40585&oldid=40244 * 69.166.47.145 * (+4051) hot singles in fungot's area 05:52:50 -!- kcm1700 has quit (Remote host closed the connection). 05:52:57 wow, that thing's quicker than i thought 05:57:52 -!- kcm1700 has joined. 06:00:16 What, the recent changes feed? It's very pushy. 06:01:07 i know "somebody" "hypothetically" "named" "monotone" with a similar irc widget that is much slower, is all 06:04:52 It's built on the MediaWiki UDP recent changes feed, plus a socat-based shell oneliner to mangle the message into raw IRC and write it to the Unix domain socket that HackEgo accepts extra stuff on. 06:05:18 the other one is, uh, dokuwiki i think. maybe dokuwiki sucks 06:05:40 Maybe it's based on polling, then. 06:05:49 maybe 06:13:37 UDP recent changes feed? wtf, who invents such a thing 06:14:08 people who need up to the millisecond updates on my half baked phase constructions at midnight 06:24:38 -!- MoALTz has quit (Quit: Leaving). 06:26:33 [wiki] [[User:Rdebath]] http://esolangs.org/w/index.php?diff=40586&oldid=40409 * Rdebath * (+7212) Add tests and interpreters (plus upgrades) 06:27:09 http://www.mediawiki.org/wiki/Manual:$wgRCFeeds 06:28:15 It can do UDP and Redis Pub/Sub, and the message itself can be the above (with IRC color codes and all) or a JSON object. 06:29:21 -!- kcm1700 has quit (Remote host closed the connection). 06:29:29 -!- kcm1700 has joined. 06:38:07 -!- AndoDaan has quit (Ping timeout: 276 seconds). 06:40:14 * atehwa acknowledges self-Finnishness @ mroman_ 06:59:37 -!- AndoDaan has joined. 07:06:10 -!- AndoDaan_ has joined. 07:06:24 -!- AndoDaan has quit (Ping timeout: 260 seconds). 07:06:34 -!- AndoDaan_ has changed nick to AndoDaan. 07:10:52 -!- AndoDaan has quit (Ping timeout: 240 seconds). 07:11:21 -!- lambdabot has quit (Write error: Broken pipe). 07:14:36 -!- AndoDaan has joined. 07:14:59 -!- AndoDaan has quit (Client Quit). 07:15:21 -!- AndoDaan has joined. 07:17:02 -!- lambdabot has joined. 07:24:45 moin 07:24:54 @messages-loud 07:24:55 oerjan said 9h 57m 35s ago: The hackage-story with "corrupt acid-state logs" made me really sceptical of using acid-state in future projects <-- afaiu it wasn't _really_ corrupted, the recovery just didn't know how to ignore the junk at the end of the log from the aborted transaction 07:25:28 @ask oerjan Can you do backups of acid-state databases? 07:25:29 Consider it noted. 07:28:21 -!- Patashu has joined. 07:28:37 -!- shikhin has joined. 07:29:07 -!- shikhin has changed nick to Guest72000. 07:30:10 -!- Guest72000 has changed nick to shikhout. 07:30:40 -!- shikhout has changed nick to Guest40212. 07:31:31 -!- Guest40212 has changed nick to shikherr. 07:31:36 -!- shikherr has quit (Changing host). 07:31:36 -!- shikherr has joined. 07:33:01 -!- shikherr has changed nick to shikhin. 07:48:54 -!- Bicyclidine has quit (Ping timeout: 246 seconds). 07:56:19 -!- AndoDaan_ has joined. 07:56:49 -!- AndoDaan_ has left. 07:56:54 -!- AndoDaan_ has joined. 07:59:02 -!- AndoDaan has quit (Ping timeout: 258 seconds). 08:00:30 -!- AndoDaan_ has changed nick to AndoDaan. 08:14:29 -!- brandonson has joined. 08:17:37 -!- S1 has joined. 08:22:12 -!- Phantom_Hoover has joined. 08:22:51 -!- shikhout has joined. 08:23:32 [wiki] [[Talk:EsoInterpreters]] http://esolangs.org/w/index.php?diff=40587&oldid=40572 * Keymaker * (+177) Reply. 08:26:02 -!- shikhin has quit (Ping timeout: 272 seconds). 08:28:03 -!- sebbu2 has joined. 08:28:40 -!- sebbu2 has quit (Changing host). 08:28:41 -!- sebbu2 has joined. 08:29:50 -!- sebbu has quit (Ping timeout: 272 seconds). 08:31:22 -!- zzo38 has quit (Ping timeout: 240 seconds). 08:31:43 -!- sebbu2 has changed nick to sebbu. 08:36:02 Bring back The Esotric Awards! 08:36:40 I mean, The... Essies. 08:38:49 the what? 08:39:13 http://esolangs.org/wiki/Esoteric_Awards 08:39:28 I bet it was star studde 08:39:30 d 08:41:34 hm 08:41:56 your burlesque would be a sho'win. 08:42:07 i don't know how to spell expressions. 08:43:37 I remember talk about the Essies, but nothing about the competitions themselves. 08:44:05 "It is not known if any entries were submitted. It is likewise not known if a winner was picked." 08:44:18 Very appropriate. 08:44:18 seems like that would be the most exciting bit. 08:46:40 well... 08:46:46 if the award ceremony is in finnland 08:46:50 I might participate. 09:03:29 Grumble frumble sox FAIL formats: can't open input file `data/adults/test/man/gp/15z8973a.wav': sph: unsupported coding `pcm,embedded-shorten-v2.00' 09:03:51 I don't quite see why all these corpora go for the NIST SPHERE + Shorten format. 09:04:14 -!- brandonson has quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/). 09:08:48 -!- oerjan has joined. 09:09:57 holy shit a nobel to trondheim 09:10:47 @messages- 09:10:47 boily said 10h 22m 9s ago: thanks for the irradiation! 09:10:47 mroman_ asked 1h 45m 18s ago: Can you do backups of acid-state databases? 09:12:25 -!- brandonson has joined. 09:13:09 @tell mroman_ They did nightly backups. It was never a matter of losing more than that. But if they had understood in time that it was just a single partially written transaction, they could have restored everything up to that as well. 09:13:09 Consider it noted. 09:14:42 @tell mroman_ *up to the last moment, as the system _did_ shut down for safety when it happened. 09:14:42 Consider it noted. 09:21:14 but how do you do backups of that? 09:21:21 @messages- 09:21:22 oerjan said 8m 12s ago: They did nightly backups. It was never a matter of losing more than that. But if they had understood in time that it was just a single partially written transaction, they could have restored everything up to that as well. 09:21:22 oerjan said 6m 39s ago: *up to the last moment, as the system _did_ shut down for safety when it happened. 09:21:50 you'd have to stop the application 09:21:54 then copy the acid-state folder? 09:22:01 it's possible they do? i don't know. 09:22:03 then start the application 09:22:17 I mean... you don't know when acid-state will write to those files 09:22:26 so copying the files mid-write is probably not a good idea 09:26:41 i don't know how this works. ask someone who does. 09:27:28 i want the neighbors' dog to die so much. 09:27:50 -!- shikhout has changed nick to shikhin. 09:28:19 it has this completely eerie ability to start barking the moment i'm trying to concentrate. 09:28:55 and then to keep silent enough of the rest of the time that i don't feel i can complain too much. 09:29:10 (although today is starting to push it.) 09:34:57 mroman_: look at this discussion http://www.reddit.com/r/haskell/comments/xs0t2/acidstate_with_yesod/c5p8af7 09:40:30 `ls 09:40:31 ​:-( \ a.out \ bdsmreclist \ bin \ binpipes \ canary \ cat \ complaints \ crunchfuck \ :-D \ dc \ dog \ etc \ factor \ gcccomp \ head \ hej \ hello \ hello.c \ ibin \ interps \ lib \ moop.txt \ paste \ pref \ prefs \ quines \ quotes \ share \ src \ test.c \ Wierd \ wisdom \ wisdom.pdf 09:40:40 `rm gcccomp 09:40:41 No output. 09:42:25 `cat moop.txt 09:42:25 Moop! 09:42:28 Useful. 09:42:52 `url binpipes 09:42:52 http://codu.org/projects/hackbot/fshg/index.cgi/file/tip/binpipes 09:43:03 `unidecode ⋖ 09:43:04 ​[U+22D6 LESS-THAN WITH DOT] 09:43:16 -!- heroux_ has joined. 09:43:33 -!- shachaf_ has joined. 09:43:40 -!- FreeFull_ has joined. 09:43:45 -!- heroux___ has joined. 09:44:47 -!- heroux__ has quit (Excess Flood). 09:44:48 -!- heroux has quit (Write error: Broken pipe). 09:44:52 -!- heroux_ has changed nick to heroux. 09:44:52 -!- heroux has changed nick to 16WAAR95O. 09:44:52 -!- heroux___ has changed nick to 7JTAA4WJ5. 09:45:02 -!- 7JTAA4WJ5 has changed nick to heroux. 09:45:28 i think that was put there by someone who doesn't understand unixy directories. 09:46:06 -!- variable has quit (Ping timeout: 467 seconds). 09:46:45 `` rm binpipes moop.txt 09:46:47 No output. 09:46:52 " Or do you expect very expensive haskell developers spend the rest of their lives creating hundreds of customized reports ?" 09:46:53 It's also not terribly useful over IRC. 09:46:59 haskell developers are expensive? 09:47:06 i didn't think so either 09:47:31 mroman_: i think that vagif guy may be _ever_ so slightly trolly on occasion. 09:47:37 (maybe always.) 09:47:39 -!- shachaf has quit (Remote host closed the connection). 09:47:40 -!- FreeFull has quit (Remote host closed the connection). 09:48:09 `url crunchfuck 09:48:09 http://codu.org/projects/hackbot/fshg/index.cgi/file/tip/crunchfuck 09:48:31 oerjan: He's not completely wrong though 09:48:40 oerjan: I think you cheated on hello hello world, 84 looks impossible ;-) 09:48:49 Interfacing with an acid-state database pretty much relies on you writing some export-my-data-service 09:48:54 `rm crunchfuck 09:48:56 No output. 09:49:09 -!- variable has joined. 09:49:31 int-e: nope, it's completely non-cheating 09:50:33 oerjan: have you seen my terrible prime solution? using or[] and a prime test that works for numbers up to 340 (as the other two 61 character solutions do) is comparatively sane. 09:50:57 oh it's finished? hadn't checked. 09:51:11 > (mod(2^341-2)341,mod 341 11) 09:51:13 (0,0) 09:51:56 the other drawback is you can't use acid-state with large databases on low-memory devices 09:52:19 int-e: so i may still have the shortest _non_-cheating solution on that? :P 09:52:33 even if it's the longest in the list. 09:52:44 oerjan: I think so, yes. 09:53:37 I uploaded my long Forth hello-hello-world because nobody else seemed to be doing Forth, seems that's still true. 09:54:18 hmm, this hello world task again, which task is this? 09:54:23 can you give a link? 09:54:42 http://golf.shinh.org/p.rb?hello+hello+world 09:54:56 thanks 09:56:00 but wasn't that about ternary? how does prime testing come into this/ 09:56:01 ? 09:56:13 fizzie: the trick to get a huge amount of points on anagol is to submit an incredibly large program in a language nobody has yet submitted something just short before deadline 09:56:14 oerjan: however: main=mapM print[z+1|z<-[0..252],p(z+2)||p z];p n=all((>0).mod n)[2..n-1] 09:56:16 b_jonas: no that's http://golf.shinh.org/p.rb?A045718 09:56:22 then you submit your real solution just right after the deadline 09:57:01 your solution is then compared to the best solution before the deadline (i.e. your incredibly large program) 09:57:08 mroman_: hehe 09:57:10 and receives points depending on how much shorter it is 09:57:18 which means you can get more than 10k points 09:57:25 oerjan: and the or[] trick is applicable as well: main=mapM print[z+1|z<-[0..252],or[all((>0).mod n)[2..n-1]|n<-[z+2,z]]] 09:57:39 I should try that. I can generate long programs in strange languages for some tasks. 09:58:59 > length "main=mapM print[z+1|z<-[0..252],p(z+2)||p z];p n=all((>0).mod n)[2..n-1]" 09:59:01 72 09:59:05 oerjan: and another character: main=mapM print[z|z<-[1..252],or[all((>0).mod(n+1))[2..n]|n<-[z,z-2]]] 09:59:19 > length "main=mapM print[z|z<-[1..252],or[all((>0).mod(n+1))[2..n]|n<-[z,z-2]]]" 09:59:20 70 10:00:55 i also had a version using or instead of any 10:01:03 was the same length, though. 10:01:46 actually it was using _both_ or and and. 10:02:12 l=[2..255];main=mapM print[z|z<-1:l,or[and[x*y-z/=s|x<-l,y<-l]|s<-[-1,1]]] 10:02:30 (I submitted the 70 characters one) 10:03:41 -!- S1 has quit (Quit: S1). 10:03:43 -!- AndoDaan_ has joined. 10:04:12 -!- AndoDaan has quit (Ping timeout: 272 seconds). 10:04:43 I have a 20-character Burlesque A006520 that runs in 1.1 seconds on my own computer, but is too slow for anagolf. :/ 10:06:11 -!- conehead has quit (Quit: Computer has gone to sleep). 10:06:55 i guess this mod(2^y-2)y<1 trick is something well-known for golfing. 10:07:49 I discovered it myself, but it appears in several publicly visible entries by henkma 10:07:54 (and others) 10:07:55 so yeah 10:08:02 fizzie: did you compile with -O3? 10:08:33 (well, "discover" is perhaps too strong, since I have read a bit about pseudoprimes before) 10:09:06 also what's ghc's default for -O? 10:09:43 oerjan: what trick? 10:09:46 according to github shinh didn't compile it with -O3 10:10:19 myname: it's a primality test that works up to 340 10:11:33 -!- AndoDaan has joined. 10:12:05 hm... 10:12:43 > let p=nubBy(((<1).).mod)[2..] in p 10:12:45 [2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,... 10:13:27 -!- AndoDaan_ has quit (Ping timeout: 272 seconds). 10:13:40 `factor 341 10:13:40 341: 11 31 10:13:45 1024 1024?*ro)fCL[ runs in 1.7s on my machine 10:13:48 !blsq 101ro{fcL[2==}f[ 10:13:48 {2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101} 10:13:54 on anagol it runs at least 3.5s but then runs out of stack space 10:16:51 with -O0 on my machine it takes 3.5s to run 10:17:00 that's huge 10:17:08 > let p=nubBy(((<1).).mod)[2..]; c=concat$zipWith(\m n->[m+1..n-1])p(tail p) in c 10:17:10 [4,6,8,9,10,12,14,15,16,18,20,21,22,24,25,26,27,28,30,32,33,34,35,36,38,39,4... 10:17:45 mroman_: I did what your README.md suggested, so probably. 10:17:53 > let p=nubBy(((<1).).mod)[2..]; c=concat$zipWith(\m n->[m+1..n-1])p(tail p); k=2 in find(\y -> mod(k^y-k)y<1)c 10:17:55 Just 341 10:18:01 > let p=nubBy(((<1).).mod)[2..]; c=concat$zipWith(\m n->[m+1..n-1])p(tail p); k=3 in find(\y -> mod(k^y-k)y<1)c 10:18:03 Just 6 10:18:26 hmph 10:18:29 oerjan: it's hard to outperform the 2 10:18:33 ic 10:18:44 > let p=nubBy(((<1).).mod)[2..]; c=concat$zipWith(\m n->[m+1..n-1])p(tail p); k=10103 in find(\y -> mod(k^y-k)y<1)c 10:18:46 Just 561 10:19:02 i guess it's the shortest for its performance, then 10:19:09 1024 1024?*ro{fC++J?*}m[++ is 30s with -O0 and 19s with -O3 :) 10:19:26 oerjan: 561 is a https://en.wikipedia.org/wiki/Carmichael_number, so that's the best possible. 10:19:37 -!- boily has joined. 10:20:19 (for this Fermat style primality test) 10:20:29 int-e: yeah, that's a nice trick, though I think in some languages a slow trial division test might be shorter. 10:20:34 ah 10:21:13 like, there's that crazy regex backreference test that works in perl and some other languages 10:21:49 that's like eww but for such small numbers it should work, and you might be able to embed the plus minus one into the regex 10:21:53 hmm 10:22:05 see http://www.perlmonks.com/?node_id=510925 10:22:44 ('1' x shift) !~ /^(11+)\1+$/ 10:22:49 what's the upper bound for that test? 10:24:59 none, it's perfect 10:25:13 it'll be slow for large numbers though 10:26:32 is that a unicode operator? 10:27:40 huh? 10:27:48 the x? 10:27:52 or is that a regular x 10:28:02 the letter 10:28:05 also... does that use base1 numbers? 10:28:08 or latter, if you like ;-) 10:28:33 I have no idea how that code works 10:28:39 (also I don't know ANY perl) 10:28:42 (11+) <-- match 2 or more 1s. \1+ <- match what the () matched, one or more times 10:29:05 wait 10:29:07 so you match (1+n)(1+m) 1s, where n,m>1 10:29:15 a string of 1 of composite length 10:29:37 but '1' x shift converts to base1? 10:29:42 oh and note that the test fails for 0 and 1. 10:29:44 yes 10:30:15 (that is, 0 and 1 are primes according to that test) 10:30:54 Makes sense 10:31:01 0 is kinda a super-prime 10:31:10 you can divide primes by itself and 1 10:31:21 you can divide 0 only by 1 but not by itself 10:31:36 so it's even primier then every other prime 10:31:39 you can divide 0 by any natural number except 0 10:32:01 of course 10:32:25 you can divide anything by anything 10:32:37 elephant / tofu 10:32:38 see 10:32:55 is that ABNF? 10:32:59 0 is the maximum of the divisibility relation; 1 is the minimum, and primes are the successors of 1. 10:33:02 !blsq 10 1B! 10:33:02 Ain't nobody got time fo' dat! 10:33:09 hmm 10:33:16 yeah. that doesn't work 10:33:22 !blsq "1"10.* 10:33:22 {"1" "1" "1" "1" "1" "1" "1" "1" "1" "1"} 10:33:28 !blsq '110.* 10:33:28 "1111111111" 10:33:33 what does it try and calculate? 10:33:38 puh 10:33:41 let me check the code 10:33:47 mroman_: the x is string replication operator 10:34:20 mroman_: yes, base 1 numbers, but as you need only small numbers it should be fine 10:34:27 `` perl -e 'print"ha"x10' 10:34:27 hahahahahahahahahaha 10:34:40 digits bs n 10:34:44 > digits 2 10 10:34:46 Not in scope: ‘digits’ 10:34:46 Perhaps you meant one of these: 10:34:46 ‘BSC.inits’ (imported from Data.ByteString.Char8), 10:34:46 ‘BSLC.inits’ (imported from Data.ByteString.Lazy.Char8), 10:34:46 ‘inits’ (imported from Data.List) 10:34:54 @import Data.Digits 10:34:55 Unknown command, try @list 10:34:57 pf 10:35:08 as for limits, I _think_ on a fast machine it might fail when you go over around 65536, especially on older perls, because the repetition operators of perl regexen used to have some bugs regarding repetitions more than that, 10:35:21 AndoDaan: technically digits in Data.Digits is broken for base = 1 10:35:40 cool 10:35:50 but you'll probably run out of time before that. 10:36:15 so it's not my fault B! doesn't work for 1 10:36:20 ;P 10:36:32 as in, if any of those bugs remain, p5p will fix those bugs and you will install perl and get faster hardware before you have a chance to finish that statement for such a large number where it fails. 10:36:37 i dinna say nuffin' 10:36:45 although I should add an exception for bs 1 10:36:49 I think it probably won't fail at all, at least under 4G. 10:36:54 because why not 10:36:58 anyway, the point is, 10:37:09 > showIntAtBase 3 intToDigit 1000 "" 10:37:10 "1101001" 10:37:22 > showIntAtBase 1 intToDigit 1000 "" 10:37:24 "*Exception: Numeric.showIntAtBase: applied to unsupported base 1 10:37:28 pff 10:37:31 !blsq 1000 3B! 10:37:31 "1101001" 10:37:32 b_jonas: i remember having to do tricks to get my BCT interpreter in /// under that limit for the slashes.pl interpreter 10:37:35 the advantage of this regex is that you can encod ethe plus or minus one cheaply: you just prefix two chars to the string and match zero or two chars in the beginning 10:37:45 oerjan: ouch 10:37:48 > showIntAtBase -1 intToDigit 1000 "" 10:37:50 Could not deduce (GHC.Num.Num 10:37:50 ((GHC.Types.Int -> GHC.Types.Char) 10:37:50 -> a0 10:37:50 -> [GHC.Types.Char] 10:37:50 -> a 10:37:53 > showIntAtBase (-2) intToDigit 1000 "" 10:37:55 "*Exception: Numeric.showIntAtBase: applied to unsupported base -2 10:37:57 pff 10:37:58 `` dc <<<3o1000p 10:37:58 1101001 10:38:00 i'm working on a /// interpreter right now. 10:38:12 !blsq 100 2B! 10:38:12 "1100100" 10:38:14 !blsq 100 -2B! 10:38:14 That line gave me an error 10:38:17 :( 10:38:26 !blsq 1000 primeB! 10:38:26 ERROR: (line 1, column 13): 10:38:33 oerjan: I mean, that limit does come up in pracitcal programs, like in matching long double-quoted strings with escapes and stuff, 10:38:40 but still. 10:39:09 `` dc <<<_3o1000p 10:39:10 dc: output base must be a number greater than 1 \ 1000 10:39:18 `forth : x 3 base ! 1000 . ; x 10:39:18 1101001 10:39:22 `forth : x 1 base ! 1000 . ; x 10:39:22 ​ \ *OS command line*: \ uncaught exception: Pictured numeric ouput string overflow 10:39:26 Heh. 10:39:49 picturesque overlow? 10:39:54 *overflow 10:40:50 Curiously enough, setting base doesn't affect interpreted mode. 10:40:56 `forth 3 base ! 1000 . 10:40:57 1000 10:41:00 AndoDaan: you should test my BCT interpreter on it then :) 10:41:26 bit cycle thingie> 10:41:28 ? 10:41:44 binary cyclic tag 10:41:54 right. 10:42:40 i tried something like that a month or two ago, it was fun. 10:42:45 sure. 10:43:03 b_jonas: a /// substitution command is essentially just two long //- quoted escaped strings, so that's exactly the use case 10:43:56 int-e: bitwise, canonically 10:44:27 !blsq 146 -3 ./ 10:44:28 -49 10:44:38 !blsq 146.0 -3 ./ 10:44:38 -48.666666666666664 10:44:53 !blsq 146 -3 .% 10:44:53 -1 10:45:07 !blsq -3 146 .% 10:45:07 143 10:45:15 !blsq -3 146 ./ 10:45:15 -1 10:45:17 oerjan: hmm. ok. 10:45:24 -!- Phantom_Hoover has quit (Ping timeout: 258 seconds). 10:46:06 ("hmm" = "if you say so, but I think 'binary' sounds better, now how the hell do I unlearn that?") 10:49:06 oerjan: ah, that makes sense 10:50:45 * oerjan hands int-e the saucepan for repeated self-application to head hth ===\__/ 10:54:32 -!- LordCreepity has quit (*.net *.split). 10:54:34 -!- Melvar has quit (*.net *.split). 11:08:17 -!- LordCreepity has joined. 11:08:17 -!- Melvar has joined. 11:08:25 -!- GeekDude has joined. 11:09:26 -!- idris-bot has joined. 11:21:15 -!- boily has quit (Quit: REVOLVING CHICKEN). 11:42:40 !blsq 1000 13B! 11:42:40 "5bc" 11:42:44 !blsq 1000 7B! 11:42:44 "2626" 11:42:52 !blsq 1000 13dg 11:42:52 {5 11 12} 11:43:01 !blsq 1000 13dg++ 11:43:02 28 11:45:33 -!- Patashu has quit (Ping timeout: 260 seconds). 11:50:58 oh argh! you can't just add (11)? to the beginning of the regex, because the regex matches composite numbers, not primes 11:51:04 you need a few extra characters 11:56:44 YES! 11:58:19 um 11:58:33 how do command-line switches for perl work on the anagol server? 11:59:10 236 is a bit long for a golf maybe, but it feels nifty anyway 12:00:11 `perl -le (1 .1x$_)=~/^(11)?(?!(11+)\2+$)/&&print for 1..252 12:00:12 1 \ 2 \ 3 \ 4 \ 6 \ 8 \ 10 \ 12 \ 14 \ 16 \ 18 \ 20 \ 22 \ 24 \ 28 \ 30 \ 32 \ 36 \ 38 \ 40 \ 42 \ 44 \ 46 \ 48 \ 52 \ 54 \ 58 \ 60 \ 62 \ 66 \ 68 \ 70 \ 72 \ 74 \ 78 \ 80 \ 82 \ 84 \ 88 \ 90 \ 96 \ 98 \ 100 \ 102 \ 104 \ 106 \ 108 \ 110 \ 112 \ 114 \ 126 \ 128 \ 130 \ 132 \ 136 \ 138 \ 140 \ 148 \ 150 \ 152 \ 156 \ 158 \ 162 \ 164 \ 166 \ 168 \ 17 12:26:55 -!- GeekDude has quit (Quit: {{{}}{{{}}{{}}}{{}}} (www.adiirc.com)). 12:30:54 234, i realized one of my definitions wasn't actually saving space, despite being used four times 12:34:58 oh hm 12:38:03 219 12:40:30 213 12:41:57 (those two last came from changing some tuples to lists) 12:54:27 -!- King2218 has joined. 12:57:07 *+ones 13:01:43 -!- GeekDude has joined. 13:13:56 Nobody else seems very interested about count-the-overlap. 13:14:28 yep, i did better with pocketses 13:15:00 no big loss, it's not like i spent a whole morning making it... 13:15:39 Oh, there's a fancy performance checker too; my too slow 20-byte solution runs in 3.379202s there. 13:16:59 fizzie: 20byte? 13:20:02 fizzie: i think maybe there's too much i/o noise in it? at least that takes most of my code. 13:20:20 For the A006520, I mean. 13:20:37 I don't have a 20-byte overlap thing. 13:20:53 You could! 13:20:59 think of the glory 13:21:04 indeed 13:21:34 thanks for giving it a go, oerjan 13:21:45 oh is it yours? 13:21:53 i guess i made it too messy 13:21:55 yeah 13:34:34 what overlap? 13:36:36 ah 13:36:39 new golf challenge 13:43:36 211 13:44:41 that's dedication. 13:47:18 i found a way to shorten the outputting 13:51:39 -!- S1 has joined. 13:53:08 -!- drdanmaku has joined. 13:55:28 -!- brandonson has quit (Ping timeout: 250 seconds). 13:59:02 -!- impomatic_ has left. 14:01:25 -!- AndoDaan has quit (Ping timeout: 276 seconds). 14:03:14 -!- AndoDaan has joined. 14:09:09 -!- nycs has quit (Quit: Leaving). 14:09:16 -!- nycs has joined. 14:09:26 -!- nycs has changed nick to `^_^v. 14:22:50 -!- shikhout has joined. 14:25:18 couldn't you have used just four integers 14:25:25 for the input format or something 14:25:41 -!- shikhin has quit (Ping timeout: 244 seconds). 14:30:05 yeah, i really should have. 14:30:10 !blsq "ax 1 ay 1 aw 1 ah 1 bx 1 by 1 bw 1 bh 1 cx 1 cy 1 cw 1 ch 1"wd 14:30:10 {"ax" "1" "ay" "1" "aw" "1" "ah" "1" "bx" "1" "by" "1" "bw" "1" "bh" "1" "cx" "1 14:30:19 !blsq "ax 1 ay 1 aw 1 ah 1 bx 1 by 1 bw 1 bh 1 cx 1 cy 1 cw 1 ch 1"wd:ri 14:30:19 That line gave me an error 14:30:25 !blsq "ax 1 ay 1 aw 1 ah 1 bx 1 by 1 bw 1 bh 1 cx 1 cy 1 cw 1 ch 1"wd:an 14:30:25 {"ax" "1" "ay" "1" "aw" "1" "ah" "1" "bx" "1" "by" "1" "bw" "1" "bh" "1" "cx" "1 14:30:29 !blsq "ax 1 ay 1 aw 1 ah 1 bx 1 by 1 bw 1 bh 1 cx 1 cy 1 cw 1 ch 1"wd:ad 14:30:29 {"1" "1" "1" "1" "1" "1" "1" "1" "1" "1" "1" "1"} 14:30:44 idk i wanted to explain it well. over did the info 14:30:46 !blsq "ax 1 ay 1 aw 1 ah 1 bx 1 by 1 bw 1 bh 1 cx 1 cy 1 cw 1 ch 1"wd:ad)ri4co 14:30:46 {{1 1 1 1} {1 1 1 1} {1 1 1 1}} 14:31:08 well, presentation of the info 14:31:59 !blsq "ax 1 ay 1 aw 1 ah 1 bx 1 by 1 bw 1 bh 1 cx 1 cy 1 cw 1 ch 1"wd:ad)ri4co3CB 14:31:59 {{{1 1 1 1} {1 1 1 1} {1 1 1 1}} {{1 1 1 1} {1 1 1 1} {1 1 1 1}} {{1 1 1 1} {1 1 14:32:05 !blsq "ax 1 ay 1 aw 1 ah 1 bx 1 by 1 bw 1 bh 1 cx 1 cy 1 cw 1 ch 1"wd:ad)ri4co3cb 14:32:05 {{{1 1 1 1}} {{1 1 1 1}} {{1 1 1 1}} {{1 1 1 1} {1 1 1 1}} {{1 1 1 1} {1 1 1 1}} 14:32:08 hm 14:32:11 !blsq "abc"3cb 14:32:11 {"a" "b" "c" "aa" "ab" "ac" "ba" "bb" "bc" "ca" "cb" "cc" "aaa" "aab" "aac" "aba 14:32:48 remove duplicates and again 14:33:11 yeah 14:33:12 )NBNB 14:33:17 !blsq "abc"3cb)NBNB 14:33:17 {"a" "b" "c" "ab" "ac" "ba" "bc" "ca" "cb" "abc" "acb" "bac" "bca" "cab" "cba"} 14:33:24 and then only the sorted ones 14:33:27 !blsq "abc"3cb)NBNB:so 14:33:27 {"a" "b" "c" "ab" "ac" "bc" "abc"} 14:33:29 there we go 14:33:30 :) 14:33:41 !blsq "abc"3cbso 14:33:41 0 14:33:43 !blsq "abc"3cb:so 14:33:44 {"a" "b" "c" "aa" "ab" "ac" "bb" "bc" "cc" "aaa" "aab" "aac" "abb" "abc" "acc" " 14:33:56 !blsq "abc"3cb)NBNB:so 14:33:56 {"a" "b" "c" "ab" "ac" "bc" "abc"} 14:33:58 this sucks 14:34:09 I totally see now what a drag this part of it is. 14:34:18 !blsq "abc"3CO 14:34:18 {"abc"} 14:34:21 !blsq "abc"3co 14:34:21 {"abc"} 14:34:24 has nothing to do with the core idea. 14:34:34 !blsq "abc"2co 14:34:34 {"ab" "c"} 14:34:37 argh. next time bettr. 14:34:47 !blsq "abc"su 14:34:47 {"a" "b" "c" "ab" "bc" "abc"} 14:34:49 ha 14:34:50 there we go 14:35:00 wow 14:35:13 !blsq "abc"su3.- 14:35:13 {"ab" "bc" "abc"} 14:35:36 !blsq "abc"r@ 14:35:36 {"abc" "bac" "cba" "bca" "cab" "acb"} 14:35:41 !blsq "abc"R@ 14:35:41 {"" "a" "b" "ab" "c" "ac" "bc" "abc"} 14:36:22 !blsq "abc"R@f[ 14:36:22 ERROR: Burlesque: (f[) Invalid arguments! 14:36:26 !blsq "abc"3cb{smn!}f[ 14:36:27 {"ab" "ac" "ba" "bc" "ca" "cb" "aab" "aac" "aba" "abb" "abc" "aca" "acb" "acc" " 14:36:39 !blsq "abc"3cb{U_}f[ 14:36:39 {"a" "b" "c" "ab" "ac" "ba" "bc" "ca" "cb" "abc" "acb" "bac" "bca" "cab" "cba"} 14:36:43 hehe 14:36:57 !blsq "abc"3cb{{U_}{so}m&}f[ 14:36:58 {"a" "b" "c" "ab" "ac" "bc" "abc"} 14:37:01 tada 14:37:16 but that's just su I guess 14:37:23 so su == 3cb{.... 14:37:43 no 14:37:48 su is "all substrings" 14:37:51 !blsq "AndoDaan"su 14:37:51 {"A" "D" "a" "d" "n" "o" "An" "Da" "aa" "an" "do" "nd" "oD" "And" "Daa" "aan" "d 14:38:05 !blsq "cold"su 14:38:05 {"c" "d" "l" "o" "co" "ld" "ol" "col" "old" "cold"} 14:38:28 hmm, a burlesque command that finds the products as it were of single commands 14:38:35 what products? 14:38:58 theres 14:39:00 like just now with su 14:39:01 !blsq "abc"Jcp 14:39:01 {"aa" "ab" "ac" "ba" "bb" "bc" "ca" "cb" "cc"} 14:39:13 !blsq "abc"Jcp:U_ 14:39:13 {"ab" "ac" "ba" "bc" "ca" "cb"} 14:39:23 ^- that's good for matches 14:39:26 or tournaments 14:39:27 like 14:39:39 !blsq {"Manchester" "Bayern" "Berlin"}Jcp:U_ 14:39:39 {{"Manchester" "Bayern"} {"Manchester" "Berlin"} {"Bayern" "Manchester"} {"Bayer 14:39:49 gives you the list of all matches these teams have to play 14:40:11 (including rematches) 14:40:18 otherwise use 14:40:27 !blsq "abc"Jcp:U_:so 14:40:27 {"ab" "ac" "bc"} 14:40:31 wait 14:40:31 no 14:40:35 !blsq "abc"Jcp:U_ 14:40:35 {"ab" "ac" "ba" "bc" "ca" "cb"} 14:40:51 !blsq "abc"Jcp:U_:so 14:40:51 {"ab" "ac" "bc"} 14:40:54 yep. 14:40:58 a vs b. a vs c. b vs c 14:41:03 everyone has played with everybody 14:41:10 !blsq "abcd"Jcp:U_:so 14:41:10 {"ab" "ac" "ad" "bc" "bd" "cd"} 14:41:39 now append random scores to each 14:41:47 to each match? 14:41:49 then... who needs a tv anyway 14:41:49 no problem 14:42:12 !blsq 0 0 52co"abcd"Jcp:U_:soz[ 14:42:12 {{0 "ab"}} 14:42:13 come on 'b'! that's my team 14:42:18 hm 14:42:19 damn 14:42:25 !blsq 0 0 5rn2co"abcd"Jcp:U_:soz[ 14:42:25 {{{5 5} "ab"} {{3 0} "ac"} {{4 1} "ad"} {{3 1} "bc"} {{1 0} "bd"} {{5 4} "cd"}} 14:42:26 ah 14:42:27 there 14:42:48 b draws or wins 14:42:50 good job b 14:42:57 I gues know you want to know the winner of this 14:43:01 this could be tricky 14:43:21 !blsq 0 0 5rn2co"abcd"Jcp:U_:soz[)z[ 14:43:21 {ERROR: Burlesque: (z[) Invalid arguments! {{5 5} "ab"} ERROR: Burlesque: (z[) I 14:43:29 !blsq 0 0 5rn2co"abcd"Jcp:U_:soz[{p^z[}m[ 14:43:29 {{{'a 5} {'b 5}} {{'a 3} {'c 0}} {{'a 4} {'d 1}} {{'b 3} {'c 1}} {{'b 1} {'d 0}} 14:43:58 !blsq 0 0 5rn2co"abcd"Jcp:U_:soz[{p^}m[ 14:43:58 {{5 5} "ab" {3 0} "ac" {4 1} "ad" {3 1} "bc" {1 0} "bd" {5 4} "cd"} 14:44:08 !blsq 0 0 5rn2co"abcd"Jcp:U_:soz[{p^>]}m[ 14:44:08 {5 "ab" 3 "ac" 4 "ad" 3 "bc" 1 "bd" 5 "cd"} 14:44:17 !blsq 0 0 5rn2co"abcd"Jcp:U_:soz[{p^J>]Fi}m[ 14:44:17 {0 "ab" 0 "ac" 0 "ad" 0 "bc" 0 "bd" 0 "cd"} 14:44:30 !blsq 0 0 5rn2co"abcd"Jcp:U_:soz[{p^J>]Fi!!}m[ 14:44:30 {'a 'a 'a 'b 'b 'c} 14:44:33 !blsq 0 0 5rn2co"abcd"Jcp:U_:soz[{p^J>]Fi!!}m[f: 14:44:33 {{3 'a} {2 'b} {1 'c}} 14:44:38 there 14:44:49 wait what's happening here? 14:44:57 a won three times, b won two times and c won 1 time 14:45:13 draws aren't counted 14:45:17 well 14:45:22 in case of a draw somebody wins 14:45:24 :D 14:45:33 true eough. 14:45:36 :) 14:45:48 the one who plays in his home stadion wins in case of a draw 14:45:56 !blsq 10 0 5rn2co"abcd"Jcp:U_:soz[{p^J>]Fi!!}m[f: 14:45:57 {{3 'a} {2 'b} {1 'c}} 14:46:03 hm 14:46:08 !blsq 120 0 5rn2co"abcd"Jcp:U_:soz[{p^J>]Fi!!}m[f: 14:46:09 {{3 'a} {1 'd} {1 'c} {1 'b}} 14:46:20 wait 14:46:25 ah 14:46:27 now d won one time 14:46:33 fair enough 14:46:48 King2218: Scoring in Burlesque 14:47:02 what's the algorithm there? 14:47:22 120 0 5rn2co creates random scores 14:47:31 "abcd"Jcp:U_:so returns a list of matches 14:47:37 z[ assigns the random scores to the matches 14:47:51 {p^J>]Fi!!}m[ detects the winner of each match 14:48:00 f: shows how many team each team won 14:48:07 *how many times each team won 14:48:15 -!- Sprocklem has joined. 14:48:29 !blsq 120 0 5rn2co"abcd"Jcp:U_:soz[ 14:48:29 {{{5 5} "ab"} {{0 0} "ac"} {{5 2} "ad"} {{1 4} "bc"} {{5 1} "bd"} {{0 1} "cd"}} 14:48:45 also scores are 0-5 14:48:54 120 is the seed 14:49:15 piece of cake doing this stuff in Burlesque :P 14:49:47 !blsq 120 0 5rn2co"abcdef"Jcp:U_:soz[ 14:49:47 {{{5 5} "ab"} {{0 0} "ac"} {{5 2} "ad"} {{1 4} "ae"} {{5 1} "af"} {{0 1} "bc"} { 14:50:00 !blsq 120 0 5rn2co"abcdef"Jcp:U_:soz[{p^J>]Fi!!}m[f: 14:50:00 {{4 'a} {3 'd} {3 'c} {2 'e} {2 'b} {1 'f}} 14:50:42 !blsq 120 0 5rn2co"abcdef"Jcp:U_:soz[{p^J>]Fi!!}m[f:[-[- 14:50:43 {{3 'c} {2 'e} {2 'b} {1 'f}} 14:50:46 !blsq 120 0 5rn2co"abcdef"Jcp:U_:soz[{p^J>]Fi!!}m[f:-]-] 14:50:46 4 14:50:52 !blsq 120 0 5rn2co"abcdef"Jcp:U_:soz[{p^J>]Fi!!}m[f:-][~ 14:50:52 'a 14:51:00 and that gives you the winner of the tournament 14:51:21 which is always a for some random reason 14:51:29 !blsq 121 0 50rn2co"abcdef"Jcp:U_:soz[{p^J>]Fi!!}m[f:-][~ 14:51:29 'c 14:51:34 hm there we go 14:52:55 now with rematches 14:53:00 !blsq 121 0 50rn2co"abcdef"Jcp:U_z[{p^J>]Fi!!}m[f:-][~ 14:53:00 'c 14:53:16 I hate Burlesque :( 14:53:21 this code is too bloaty 14:54:22 !blsq 121 0 50rn2co"abcdef"cp:U_z[{p^J>]Fi!!}m[f:-][~ 14:54:22 Ain't nobody got time fo' dat! 14:54:27 what's that J doing there again? 14:54:44 !blsq "abc"cp:U_:so 14:54:44 ERROR: Burlesque: (f[) Invalid arguments! 14:54:53 !blsq "abc"cp:U_ 14:54:53 ERROR: Burlesque: (f[) Invalid arguments! 14:54:58 ah 14:55:00 for the cross product 14:55:26 cp:U_ should be Cp or something 14:55:41 and cp:U_:so should be cP 14:57:41 -!- King2218 has quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client). 15:01:27 {p^}m[ is so common it should be a builtin as well 15:05:09 mroman_: TIL that it's better to do #S at the end of a program instead of wrapping the thing around ,[...]p^ when it's a no-input-just-output problem that needs a p^ at the end. 15:05:38 `? TIL 15:05:39 TIL? ¯\(°​_o)/¯ 15:06:07 yeah, i've been doing that 15:06:20 `addquote piece of cake doing this stuff in Burlesque :P [19 lines later] I hate Burlesque :( 15:06:21 1223) piece of cake doing this stuff in Burlesque :P [19 lines later] I hate Burlesque :( 15:06:33 such a relief to find somthing to get rid of that damn 21 3 4 15:06:51 thing anarchy golf does. 15:07:12 `learn TIL that TIL means Today I Learned 15:07:14 I knew that. 15:07:27 possibly overly accurate for the wisdom 15:10:15 I might do some retro-projects in the future rather than extending Burlesque 15:10:33 like... writing an emulator, then write an assembler for it, then write a compiler for that assembler 15:10:37 then write an os for that 15:10:43 something like that 15:11:23 and maybe ask shinh to put the emulator on anagol 15:11:27 so I can golf in it . 15:11:34 i don't see how any of that is incompatible with burlesque hth 15:11:45 are you trying to mock me? ;) 15:12:04 of course not (hides `addquote above) 15:12:58 It's probably as useless as Burlesque doing something like I just said 15:13:26 but since there's nothing useful I can do 15:13:30 what are my options 15:16:35 tap dancing 15:16:52 right 15:21:08 Studies Conclude Hands-Free-calling and Apple Siri Distract Drivers 15:21:12 pff 15:21:18 My studies show farting distracts drivers. 15:21:27 Not as much as sneezing but still. 15:21:33 It also distracts the passengers. 15:21:41 Farting distracts drivers and passengers. 15:22:44 also insects 15:23:08 If you happen to have a insect-phobia and you're on the highway and a wasp flies over your face 15:23:16 that's probably really distracting as well. 15:24:07 much more if it stings you 15:24:14 which made be even worse if you're allergic to it 15:24:17 *might 15:24:39 those wicked wasps 15:24:52 How can I get money to make my own distraction studies? 15:25:39 (also who volunteers to get stung in the face by a wasp while driving in a simulator?) 15:26:15 Car safety is really interesting 15:26:22 you're not supposed to drive while being tired 15:26:32 obviously even if you're tired you still have to get to work 15:26:46 and your boss frankly doesn't care about car safety then 15:27:05 you're also not supposed to drive while on certain medications 15:27:16 even if it's just something against a headache 15:27:31 no one's ever managed to get through the path for getting money to make distraction studies. 15:28:15 -!- GeorgeEpicGen has joined. 15:29:12 Hai 15:29:20 `relcome GeorgeEpicGen 15:29:20 ​GeorgeEpicGen: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: . (For the other kind of esoterica, try #esoteric on irc.dal.net.) 15:29:35 hi 15:29:39 @Hackego I just came from there 15:29:39 Unknown command, try @list 15:29:51 I submitted a language I made in 2 days 15:31:08 HackEgo is a bot. also accidentally starting lines with symbols is not recommended in this channel. 15:31:39 Okay, sure 15:33:14 -!- oerjan has quit (Quit: Later). 15:33:58 -!- GeorgeEpicGen has quit (Quit: Page closed). 15:34:53 -!- mihow has joined. 16:02:40 -!- Bicyclidine has joined. 16:05:57 -!- Sprocklem has quit (Ping timeout: 260 seconds). 16:07:32 -!- GeekDude has quit (Read error: Connection reset by peer). 16:07:49 -!- GeekDude has joined. 16:09:29 -!- GeekDude has quit (Read error: Connection reset by peer). 16:09:49 -!- GeekDude has joined. 16:22:19 http://phpthegoodparts.tumblr.com/ 16:25:04 -!- shikhout has changed nick to shikhin. 16:29:15 [wiki] [[ArrayZ]] http://esolangs.org/w/index.php?diff=40588&oldid=40584 * Quintopia * (+89) Added categories. Did not add "BF deriv" because it seems quite different 16:38:04 -!- AndoDaan has quit (Ping timeout: 276 seconds). 16:45:16 https://www.reddit.com/r/haskell/comments/2hpzpu/announcing_needle_asciified_arrow_notation/ was this discused here? 16:48:06 Finally actually set up my desk. 16:48:14 Realised that my DVI cable is too short ;( 16:50:24 make one yourself out of copper 16:50:28 myname: yikes 16:50:33 sadly arrows aren't very nice 16:52:40 "Hopefully this is a lot clearer." lmao 16:52:49 http://imgur.com/vPWIl4B 16:53:04 ahahaha they reinvented graphical programming, good job 16:53:12 or whatever it's called. whatever max/msp is 16:54:07 well, this kind of 2d arrow notation was in the original arrows paper 16:54:12 what's it got to do with arrows though, it's just a buncha compositions 16:54:32 it's desugaring to arrow methods. 16:54:36 (->) just happens to be an arrow. 16:54:47 good stuff 16:55:23 the reddit comments remind me of Funciton 16:55:30 well, anyway it looks like arrows are from 2000 and max/msp came out in the late eighties. how many DJs know haskell, rough estimate 16:56:07 I mean max/msp isn't the only graphical programming thing in the unievrse. 16:56:08 *universe 16:56:17 yeah but it's the one whose producing company has the coolest name 16:56:39 i mean, what, you gonna do LabVIEW? fuck that, no style at all 16:56:58 http://img.thedailywtf.com/images/201104/labview.jpg the future of haskell imo 16:57:07 Bicyclidine: re djs and haskell, http://yaxu.org/ 16:57:11 no, wait, there's a "pause" in there, i bet that's a side effet 16:57:12 ct 16:57:14 some very very cool haskell-based livecoding music stuff 16:57:34 incl. some graphical programming stuff akin to max 16:57:55 honestly it mostly reminds me of sicp 16:58:04 also some pretty unpleasant experiences with nonlinear circuits D: 16:58:06 brb 17:02:16 -!- GeekDude has quit (Quit: {{{}}{{{}}{{}}}{{}}} (www.adiirc.com)). 17:02:48 -!- Bicyclidine has quit (Ping timeout: 260 seconds). 17:05:40 http://www.nobelprize.org/nobel_prizes/physics/laureates/2014/press.html 17:07:21 -!- GeekDude has joined. 17:08:14 huh, so electronics never had blue blinkenlights before the 90s? 17:12:46 -!- G33kDude has joined. 17:15:57 -!- GeekDude has quit (Ping timeout: 260 seconds). 17:16:01 -!- G33kDude has changed nick to GeekDude. 17:16:16 -!- GeekDude has quit (Client Quit). 17:16:45 -!- GeekDude has joined. 17:17:53 -!- sebbu has quit (Ping timeout: 240 seconds). 17:18:48 -!- conehead has joined. 17:21:21 -!- aretecode has joined. 17:22:00 -!- brandonson has joined. 17:25:24 how often were LEDs in blinkenlights anyways 17:30:03 oerjan shood GeorgeEpicGen away 17:30:16 *shooed 17:31:17 -!- AnotherTest has joined. 17:31:32 oh wait 17:31:38 I gotta buy me a finnish book 17:31:46 this better be worth it 17:33:46 hu 17:33:51 there's a book "divorce in finnish" 17:33:52 oh no 17:33:54 that's a DVD 17:38:02 alright. done 17:41:42 luckily I'm rich enough to buy expensive books 17:41:43 ...my university's Scandinavian Society is having a trip to IKEA 17:43:00 snort 17:43:31 `addquote ...my university's Scandinavian Society is having a trip to IKEA 17:43:32 1224) ...my university's Scandinavian Society is having a trip to IKEA 17:43:45 Bike: well, I mean blinkenlights in consumer electronics. 17:43:54 I'm pretty sure, e.g. routers usually use LEDs? 17:44:02 oh 17:44:14 now that you mention it i don't think i've seen a router with blue leds. green and red, orange, but... 17:44:29 part of that is just the conventions of what colors mean though. 17:44:31 I've seen a router with blue lights. can't say whether it uses LEDs. 17:44:46 it might use blue gnomes. 17:45:01 deep 17:45:15 http://www.yusu.org/whats-on/event/5593 17:46:04 have to experience authentic indigineous scandinavian culture 17:46:42 Enjoy the authentic scandinavian food 17:46:50 I think most of the members are people from scandinavian countries 17:47:05 -!- S1 has quit (Quit: S1). 17:47:23 Although I almost ended up in I think the lithuanian society 17:47:25 (no idea how) 17:49:31 the next essies will be held in Finnland 17:50:47 But when? 17:51:25 Bike: I think my VDSL2 box has blue leds. 17:51:28 Bike: It's relatively new, though. 17:52:04 i would be down to have a world esoteric languages convention. we all kind of know each other anyway. only probably is we also know that most of us could never travel that far 17:52:07 *problem 17:52:56 2015 something 17:53:03 when's it hot in finnland :D? 17:53:17 in the summer 17:54:03 If it's 2015, it's semi-likely I won't be in Finland to attend to it. :/ 17:54:31 Also the VDSL2 box has green actual status leds, but there's a (useless) blue overall "I'm powered up" rounded-rectangle light. 17:54:46 -!- Sprocklem has joined. 17:59:39 wait... you know me? 18:10:45 -!- GeekDude has quit (Read error: Connection reset by peer). 18:11:05 -!- GeekDude has joined. 18:11:16 not as well as i'd like 18:12:34 Oooh. I didn't know about this. https://github.com/NICTA/course 18:13:34 neat 18:14:17 -!- shachaf_ has quit (Changing host). 18:14:17 -!- shachaf_ has joined. 18:14:21 -!- shachaf_ has changed nick to shachaf. 18:19:27 -!- Sprocklem has quit (Ping timeout: 272 seconds). 18:22:01 -!- sebbu has joined. 18:22:36 -!- impomatic_ has joined. 18:22:40 -!- sebbu has quit (Changing host). 18:22:40 -!- sebbu has joined. 18:41:39 -!- S1 has joined. 18:46:33 Oh, that's useful 18:48:10 I love these sorts of test-driven exercises. The koans are great, for the most part. 18:59:20 -!- Sprocklem has joined. 19:03:11 -!- tromp_ has quit (Ping timeout: 272 seconds). 19:07:57 -!- Sprocklem has quit (Ping timeout: 260 seconds). 19:14:34 -!- conehead has quit (Quit: Textual IRC Client: www.textualapp.com). 19:15:31 -!- conehead has joined. 19:19:33 -!- Sprocklem has joined. 19:37:01 -!- GeekDude has changed nick to GeekAFK. 19:38:03 -!- spiette has quit (Quit: :qa!). 19:44:49 -!- Sprocklem has quit (Ping timeout: 260 seconds). 19:47:03 -!- AnotherTest has quit (Ping timeout: 258 seconds). 20:04:32 -!- Patashu has joined. 20:13:32 -!- GeekAFK has quit (Quit: AdiIRC is updating to v1.9.6 Beta Build (2014/10/07) 32 Bit). 20:13:55 -!- GeekDude has joined. 20:18:18 MS Word experts here? I need to fill a .docx form, and it has these N-cell fields that I can't really use, but if I try to "merge cells", the row height goes completely bizarre and can't be dragged back down. 20:22:17 Well, I did find some sort of table properties -> row height -> "at least" -> "is exactly", which maybe helped. 20:22:50 -!- not^v has joined. 20:23:26 -!- shikhout has joined. 20:26:45 -!- shikhin has quit (Ping timeout: 272 seconds). 20:26:57 -!- Patashu has quit (Ping timeout: 245 seconds). 20:37:14 -!- J_Arcane has quit (Read error: Connection reset by peer). 20:38:07 -!- J_Arcane has joined. 20:38:07 quintopia: I'm a computer nerd that is quite sporty ;) 20:38:26 ex-climber, ex-ninjitsu and ex-parkour among other things 20:48:42 -!- shikhout has changed nick to shikhin. 21:05:56 -!- not^v has quit (Quit: http://i.imgur.com/Akc6r.gif). 21:06:21 and currently living in a mental health institution 21:07:57 -!- GeekDude has quit (Read error: Connection reset by peer). 21:08:15 -!- GeekDude has joined. 21:11:31 and I've just ordered some finnish learn materials 21:11:49 -!- Phantom_Hoover has joined. 21:19:36 there are missionaries in finnland 21:19:37 wth 21:29:08 mroman_, gotta convert them savages 21:29:27 yeah 21:29:35 they must practice some weird kind of nordish cult 21:29:44 assumingly with animal sacrificies and what not 21:30:04 maybe they worship squirrels 21:30:11 or is it squirell 21:30:46 so the christian community has to send missionaries to convert them 21:31:10 -!- oerjan has joined. 21:31:15 I don't know squat about finnland to be honest 21:31:26 From what I've heard the sun rarely visits the country 21:38:36 -!- GeekDude has quit (Quit: {{{}}{{{}}{{}}}{{}}} (www.adiirc.com)). 21:38:43 oerjan: 236 is a bit long for a golf maybe so I made a (currently) 427-byte Forth solution 21:42:46 -!- FreeFull_ has changed nick to FreeFull. 22:02:39 -!- zzo38 has joined. 22:09:41 -!- mihow has quit (Quit: mihow). 22:16:36 -!- teuchter has joined. 22:18:23 -!- choochter has quit (Ping timeout: 240 seconds). 22:25:15 fizzie: OKAY 22:25:36 * oerjan had another idea for shortening it which didn't work. 22:26:35 one annoying thing about it being this long is that it's too awkward to put on just one line, which means i cannot see at a glance whether it actually _is_ shorter. 22:27:45 (It's 407 now.) 22:52:36 Braingolf 22:54:11 -!- GeekDude has joined. 22:57:07 -!- Sprocklem has joined. 23:09:24 -!- madbr has joined. 23:10:39 ok I think I've figured the ideal set of limitations for a simple computer architecture project 23:11:37 Use 512k of DRAM, 16bits, with a constant memory cycle at about 4mhz (so 8mhz with 2 wait states, 12mhz with 3 wait states etc) 23:13:33 input uses the same scheme as the NES and SNES - the keys have a generic parallel to serial chip, and the system sends a "read" pulse (to read the controller state), the 8 or 16 more "shift" pulses (to read each one of the buttons serially). This only requires 2 output lines and 1 input line 23:15:02 storage uses SD card flash, which only requires 3 or 4 pins (and has a spi mode which should keep things simple) 23:15:58 the video output hardware outputs directly to NTSC and is containted on the same chip as the cpu (presumably an FPGA) 23:17:06 the cpu is designed to be efficient with a 16bit memory bus and is a small RISC with 32bit registers but 16bit opcodes (just like superH or ARM thumb), with 16 registers 23:17:35 also it shares DRAM cycles with the video hardware 23:17:53 DRAM refresh is done by the video hardware on HBLANK cycles 23:18:49 video hardware also does sound output by reading from sound data in ram during HBLANK cycles (just like the commodore AMIGA) 23:19:28 and is reduced to 1 bit at a high clock rate so that the L and R channels can be output on a single pin (with a capacitor+resistor filter) 23:20:55 -!- S1 has quit (Quit: S1). 23:21:17 the whole thing is a main chip (cpu + video hw) with about 48 pins, 512k of slow 16bit DRAM, an SD card, and a controller (which has some kind of button matrix and an couple off the shelf parallel-to-serial chips) 23:21:55 and a few analog components (resistor+capacitor filters/DACs) for the left sound channel, right sound channel and NTSC video out 23:22:13 -!- LordCreepity has quit (Ping timeout: 260 seconds). 23:22:58 there is no 3d rendering capacity (not fast enough) 23:27:42 I don't know much about working of Amiga 23:28:38 But I like the way the Famicom does all of the things 23:29:47 yeah this is way more amiga 23:30:01 actually it has some similarities to SNES too 23:31:52 I mostly just know the Amiga .MOD music format, although I know Amiga does more; there is video editing software for Amiga too, as I have seen. 23:33:43 amiga is actually super influential 23:34:00 basically the PC is horrible and is designed against games 23:34:17 it simply eventually got fast enough to ignore its braindead design 23:34:36 remind me to tell you about dna polymerase sometime 23:34:44 the Mac is actually even more horrible and was actually worse than PC 23:35:00 like, horrible enough that they had to reboot it (osx) 23:35:15 windows did that too... 23:35:26 Windows has windows 95 23:36:14 which did... that pretty much yes 23:36:23 i meant NT 23:36:39 dude, 95 is like 100 times bigger 23:36:52 95 still ran under DOS. 23:37:04 NT was a completely new kernel; it was huge, architecturally. 23:37:16 elliott_ : yes but it forced everything to 32 bits 23:37:29 and to modern memory management 23:37:44 and protected mode, paging, real multitasking etc 23:38:02 NT simply took out the shit they had to keep to keep DOS and windows16 programs working 23:38:14 uh, I think 16-bit programs still ran after NT. 23:38:29 I've seen people run, like, the Windows 1 calculator on XP. 23:38:32 well, yeah but they took out all the craziest dos shit 23:38:35 Yes the PC isn't a very good design, especially the new PC designs are pretty bad too. 23:38:38 which is want makes it cleaner 23:38:58 PC had the 386 which fixed the real design mistakes of the instuction set 23:38:59 this only strengthens my resolve to compute solely in trefunge 23:39:14 and windows95 which fixed the horrible DOS crud (eventually) 23:39:31 I happen to like the Nintendo Famicom design. 23:39:33 anyway, NT is far more comparable to OS X, if that's the analogy gone for here. 23:39:48 It is slow, and limited, but still pretty good design compared to much other things. 23:40:00 i kind of wish i could use the ricoh 2a03 as an example of something 23:40:01 OS X maintained the same essential user experience while completely replacing the internals with a new kernel designed for modularity and stability. that's a perfect description of NT 23:40:02 it's just so hilarious 23:40:32 Bike: Well, 2A03 is a combination of a 6502 CPU with decimal mode logic cut off, and a APU. 23:40:44 elliott_ : NT runs the same binaries as 96 23:40:45 uh 23:40:46 elliott_ : NT runs the same binaries as 95 23:41:03 osx doesn't 23:41:22 sure. 95 could run older programs, too, and OS X has Carbon, and also ran Classic programs via emulation for a long time 23:41:42 (and Carbon is a direct descendent of the Mac OS Classic APIs) 23:41:51 no they're not literally identical, but OS X is definitely the closest analogue to NT 23:42:02 I wonder if anyone can make new Famicom CPU/PPU chips by duplicating the mask image? 23:42:29 zzo38 : I think it's small enough that they can emulate the cpu from the mask 23:42:42 elliott_ : NT only replaced the internals 23:43:06 If I want to learn about OS kernels, where should I start? Learning about Linux, or Windows, or something else 23:43:07 OSX replaced like everything 23:43:08 I lost interest in this arguent five minutes ago. 23:43:11 *argument 23:43:12 madbr: Well, I want to ensure that it works precisely the same, including any obscure things, unofficial instructions, electrical specifics (including having to do with cartridge), etc 23:43:25 Sgeo: maybe write a filesystem 23:43:31 95 didn't replace /everything/ either, so if you want something completely revolutionary it doesn't fit just as much as NT doesn't. 23:43:41 I just want to read, not write. 23:43:49 Sgeo: writing your own is the best way to learn about them, probably. osdev.org 23:43:50 Sgeo : win32 or linux, or any other similar modern paged memory-time sharing system 23:43:56 or at least reading a hobbyist kernel 23:44:05 you don't want to study linux because it's a gigantic complicated mess 23:44:10 at least minix or something. there's books, even. 23:44:18 elliott_ : yeah but win95 was basically structurally sound 23:44:22 i like practicing things. 23:44:26 (not a monolithic vs. microkernel thing; just a linux being a complex mess thing) 23:44:33 they could have kept it indefinitely 23:44:54 they probably would have regretted it (ok they did do ME) but it was tenable, basically 23:45:15 pre-OSX mac os was not tenable 23:45:18 I have seen the diagrams of all calls and stuff in Linux and Windows; Linux is really complicated and Windows is even more really complicatd than Linux. 23:45:28 like, it still had memory compaction 23:45:38 yesterday some people from Garmin were recruiting and i found out they have an os development division of some kind 23:45:48 yeah their gpses run a custom OS I think 23:45:51 which is a bit unexpected given that i only know them from car GPS... 23:45:55 probably based on one of the standard embedded kernels though 23:45:56 you didn't even have real pointers, you had handles and the OS could move around your memory blocks 23:46:20 a holdback from the original Mac that had tiny ram and no MMU so they had no choice 23:46:28 madbr: tbh that's more modern in some sense, considering copying GCs and the like :p 23:46:29 but it was still there in mac os9 23:46:37 not in the implementation in classic mac os of course. but in principle 23:46:43 no, modern is malloc() 23:46:49 and paging 23:47:00 (and actually OS X does memory compression thanks to virtual memory these days) 23:47:09 yeah but it's transparent 23:47:19 and it uses the paging system to hide it 23:47:46 like, classic mac os has no paging 23:48:52 also it still had a whole bunch of emulated 68000 code for the longest time 23:49:00 even after the PPC move 23:49:22 sure, yeah. it was awful 23:49:36 it was also cooperatively multitasked right until the end, I think 23:50:01 like, that's why they were losing from about when windows 95 was out, until they fixed that mess with OSX 23:50:21 madbr: Unfortunately, they had numerous abortive efforts to switch away from that. 23:50:26 yes 23:50:33 and OSX is the one that worked 23:50:41 The world would be kinda interesting if A/UX took off. 23:51:12 Wasn't there some 68000 code in Mac OS to the very end? 23:51:23 yeah I think so 23:51:37 I have read about the possibility of FPGA that can reprogram itself, as well as the ability to use open-source toolkits with it (and therefore, also not being limited to x86-based computers), by using microbitstream composition; this may also make it easier to even write program for programming FPGA inside of the Famicom itself, maybe. 23:52:07 zzo38 : the point of using a famicom architecture would be to run famicom games 23:52:10 (You would still need the vendor's tools to generate the microbitstream set for the specific model of FPGA you are using, but after that you can do it in a vendor-independent and open-source way) 23:52:21 otherwise you'd probably want to use something cleaner and easier to write for 23:52:26 it's kind of impressive that apple have weathered two CPU architecture changes and one kernel change 23:52:27 like the GBA or something like that 23:52:35 madbr: Well, I just think Famicom is a good architecture and I do write programs for Famicom. 23:52:44 Course, it was never *not* able to run 68000 code... 23:52:47 elliott_ : it's not just a kernel change, it's basically a different OS... but yeah :D 23:52:51 and carbon isn't even totally dead yet 23:52:55 It's kinda sad in a way that they finally dropped Classic. 23:53:00 madbr: yeah, but a lot of the APIs carried over 23:53:13 it wasn't totally foreign, to start with. it moved away significantly with cocoa of course. 23:53:21 elliott_ : you could say that about win16 vs win32 23:53:33 I bet you can port a very old mac program to carbon that will run today without too many changes if it's simple enough. 23:53:54 marathon was totes simple, do tha 23:53:55 t 23:53:57 The same is true of Win16 code. 23:54:19 Shit, if you're running it on x86 you can go and *run* Windows 1 apps. 23:54:19 sure, never denied that 23:54:40 windows hasn't gone through two big cpu architecture changes though :p 23:54:42 elliott_ : a win32 program made in 1995 still runs 23:54:48 as a binary 23:54:49 (x86-64 doesn't count) 23:54:55 elliott_: They tried though. :P 23:54:55 how's roller coaster tycoon do 23:55:17 Windows NT wasn't developed on the x86, it was ported. 23:55:27 what did they develop it on again? alpha or something? 23:55:31 I'm not convinced the 68k->ppc change was a good idea 23:55:47 It was some obscure Intel RISC thing. 23:55:55 that was intentional so it'd be portable, right? 23:55:58 Yes. 23:56:01 I'm not sure they intended to deploy it widely on that architceture 23:56:01 i960? 23:56:26 elliott_: They strongly intended to deploy on not-x86, they just weren't sure what. 23:56:36 You can still run many Famicom programs on GBA, though; the program PocketNES will run a lot of them that use only the standard gamepad, at least; programs that require keyboard, light gun, tape, drawing tablet, etc of course won't work, nor will it work if it is an unimplemented mapper. 23:56:42 all hail itanium 23:56:52 ha itanium 23:57:10 that's the one that never got faster than the stupid x86 designs right? :D 23:57:11 madbr: Ah, the i860. 23:57:21 pikhq : woaa 23:57:59 I guess the i860 was good... as a lesson 23:58:04 madbr: x86 designs are pretty advanced :p 23:58:08 I think itanium wasn't as bad as it looked 23:58:15 and that compilers got better and maybe the actual chip got better? 23:58:20 but it still wasn't massively impressive. 23:58:29 the stupid pentium2 has killed so many architectures 23:58:46 and has evolved into the ridiculous behemoth it is now 23:59:39 really, it would be nice if 64-bit killed x86. 23:59:43 basically to be the fastest now you have to do out of order speculative memory access 23:59:51 unfortunately itanium didn't and let x86-64 happen