00:55:38 -!- Keymaker has left (?). 01:03:19 -!- poiuy_qwert has joined. 02:56:57 Hmm, UTF-21. 03:04:09 -!- Arrogant has joined. 03:32:32 -!- Arrogant has quit ("Leaving"). 03:37:33 -!- Arrogant has joined. 03:37:40 -!- _coder_ has joined. 03:57:18 -!- ihope_ has quit ("¡Adiós!"). 04:41:07 -!- Sgeo has quit ("Ex-Chat"). 04:59:05 -!- _coder_ has quit ("Leaving"). 06:00:11 -!- Arrogant has quit (Read error: 104 (Connection reset by peer)). 06:01:04 -!- Arrogant has joined. 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:27:43 -!- bsmntbombdood has quit ("all your basment are belong to bsmntbombdood"). 08:59:05 -!- poiuy_qwert has quit (Read error: 110 (Connection timed out)). 09:06:24 -!- jix has joined. 11:39:55 -!- Arrogant_ has joined. 11:46:05 -!- Arrogant has quit (Nick collision from services.). 11:46:09 -!- Arrogant_ has changed nick to Arrogant. 12:54:33 -!- Arrogant has quit ("Leaving"). 14:34:32 <_W_> the wiki down, or just unreachable by me? 15:33:29 _W_: what were you saying about graphs earlier? 16:37:43 <_W_> I'm just looking for a nice way to represent them. 16:38:30 <_W_> If the statements in a program are nodes in a graph, how do I write what nodes are connected 16:51:56 flowcharts are graphs representing statements in programs 16:54:12 <_W_> we're talking textual representation tho 16:54:38 <_W_> and these graphs are just slightly more flexible 16:59:35 oh, sorry 17:01:00 <_W_> pgimeno, I'm making a non-deterministic esolang, where the next node executed after one node is completed is random among those connected to it 17:05:11 -!- tgwizard has joined. 17:06:20 I see, kind of a Thue with graphs right? 17:06:59 <_W_> not really 17:07:37 <_W_> it's threaded, and you have, for instance, a "fork" node 17:08:46 <_W_> beyond that I'm still experimenting 17:09:31 <_W_> I don't want it to be impossible to write a program which has a high probability of outputting "Hello, world!" and nothing else 17:11:43 10 LET A=A+1 GOTO 20,30,40 17:12:03 <_W_> yeah that's an idea, except it shouldn't be a directed graph 17:12:16 <_W_> but I guess I could let the gotos be comefrom's as well 17:12:23 10 LET A=A+1 COMEFROM 20,30,40 17:12:40 <_W_> 10 LET A=A+1 GOTOORCOMEFROM 20,30,40 17:12:47 yuck 17:13:42 * pgimeno thinks Malbolge is enough evilness for him 17:20:35 wow... http://72.14.221.104/search?q=cache:vcsZz5FfPo8J:www.sakabe.i.is.nagoya-u.ac.jp/~nishida/DB/pdf/iizawa05ss2005-22.pdf+programming+method+obfuscated+language+malbolge&hl=es&ct=clnk&cd=5 17:23:07 <_W_> heh 17:30:20 -!- Sgeo has joined. 18:19:07 -!- jix has quit ("Bitte waehlen Sie eine Beerdigungnachricht"). 19:43:32 -!- bsmntbombdood has joined. 20:23:14 -!- ihope has joined. 20:23:40 I'd like a language that, while easy to interpret, is almost impossible to decompile. 20:23:55 And almost impossible to modify in a predictable way. 20:24:32 It wouldn't, however, be difficult to compile to. 20:28:05 Not that you'd want to write in this language directly: if you wanted to make a change, no matter how trivial, you'd have to start over. 20:28:32 I guess SNOBOL sort of meets these criteria, but it 20:28:37 's not easy to interpret. 20:28:53 I suppose reversible cellular automata might help. 20:33:21 Construct some machine that has an input, an output, and Something Else. 20:33:35 Feed it the input and the output, and collect the Something Else. There's your program. 20:33:49 Then to run it, feed in the input and the Something Else to get the output. 20:47:26 It'd be a black box of computing. 21:11:12 -!- poiuy_qwert has joined. 21:11:40 omglolzorz: http://hardware.slashdot.org/comments.pl?sid=189379&cid=15593478 21:11:54 (read the slashdot story for context) 21:17:15 <_W_> ihope, there can't ever be such a thing 21:17:26 Why not? 21:17:38 <_W_> unpossible 21:17:50 ... 21:17:52 Why? 21:18:57 <_W_> worst possible case, you could just brute force all the possible inputs 21:19:05 <_W_> and decompile from that 21:19:46 <_W_> also, no such thing as a black box 21:20:01 <_W_> all boxes CAN be picked apart, one way or another 21:20:24 <_W_> "black box" is a way to think of something, not an actual thing 21:20:49 Brute force can be infeasible. 21:21:04 <_W_> in _practice_ yes, but I was assuming you were talking theory 21:21:17 Nope, I'm tlaking practice. 21:21:30 <_W_> in _practice_ any irreversible obfuscation is bound to make a program too slow 21:22:38 <_W_> and if you allow physical barriers, such a self-destruct on opening, it's just a matter of locking a computer including software into such a box 21:22:48 <_W_> nothing complex needed 21:24:02 <_W_> (and you could still reverse engineer, and create an equivalent program yourself, and modify that) 21:24:16 <_W_> it's a lost cause really 21:24:17 What if you ran the programs on hardware designed to interpret the language? 21:24:40 <_W_> hardware that can't be picked apart you mean? (see my self-destructing box) 21:25:00 <_W_> you don't need a separate language 21:25:16 <_W_> a regular x86 or whatever is all you need, just lock it into such a box 21:27:28 Nope. Crystal-clear hardware designed to run opaque software. 21:28:03 <_W_> if you can analyse the hardware, you can replicate it, and modify it 21:28:51 Sure, you can modify the hardware, but the software would still be semi-immutable. 21:29:28 <_W_> also, how do you propose to make this software uncleanable? 21:29:37 Uncleanable? 21:29:46 As in clean room? 21:30:07 <_W_> no 21:30:14 <_W_> as in undecompilable 21:30:47 I dunno. 21:30:57 I was just wondering if it was possible. 21:30:57 <_W_> what kind of language do you envision that can't be decompiled to, say C, and refactored until it made sense 21:31:17 <_W_> theoretically or practically? 21:31:20 the problem with programs that are hard to decompile is thay may very well be hard to compile.interpret, too 21:31:32 s/\./\// 21:31:35 Practically unbreakable. 21:31:49 <_W_> ihope, you'd have to make some revolutionary breakthrough 21:31:53 And practical to run and such. 21:32:00 <_W_> noone who have tried so far have come close (see: copy protection schemes) 21:32:54 I'm not concerned with copy-protection, just modify-protection. 21:33:02 <_W_> the same principles applies 21:33:20 <_W_> the copy-protectors don't want the evil crackers to understand how their copy protection works so they can circumvent it 21:33:59 I see. 21:34:06 <_W_> granted it's a bit easier to find that one call/longjmp and alter it 21:34:19 <_W_> which is possible in 99% of them 21:34:49 <_W_> but even that 1% gets cracked eventually 21:36:41 Well, if we really wanted to make this computer, we could start with RSA... 21:36:42 :-) 21:36:50 <_W_> how will that help? 21:37:09 <_W_> with RSA presumably the machine code would be decrypted SOMEWHERE 21:37:16 Um... 21:37:18 <_W_> so just hook into that SOMEWHERE and read out the cleaned code 21:37:26 I mean RSA would *be* the code. 21:37:31 <_W_> what 21:37:53 I mean, you start with a number, and encrypt it repeatedly, and you'd be computing 21:38:01 <_W_> ... 21:38:05 Well, I need to pop out for a while... 21:38:07 <_W_> not very useful computing tho 21:38:11 <_W_> wildly inefficient 21:38:45 <_W_> if you could even get something turing compatible 21:53:38 i have a dos program that i want to take a screenshot of, but any screenshot i take turns up black. anyone know how to fix that? 21:54:43 poiuy_qwert: what program are you using to take the screenshot? 21:55:06 ive tried Print Screen, SnagIt, and some other one... 21:55:29 poiuy_qwert: you mean you are not running the dos program on a dos system? 21:55:44 no on windows 21:56:02 blah, then you lose :) 21:56:10 really? 21:56:48 <_W_> I've not had any problem screenshotting dos screens on my ssytem 21:56:59 <_W_> using the buildt-in windows thing 21:57:32 :/ 21:57:50 <_W_> what kind of program is it? 21:58:07 its a game 21:58:17 <_W_> does it change the screen mode? 21:58:27 poiuy_qwert: do you run it in a window? 21:58:27 it goes fullscreen 21:58:29 <_W_> that'll probably snag windows 21:58:32 <_W_> yeah 21:58:41 <_W_> try to run it in a window 21:58:45 <_W_> alt+enter 21:58:45 tried alt+enter to force window mode? 21:58:50 heh 21:58:56 k 21:58:58 i'll try 21:59:29 it just minimizes it 21:59:52 <_W_> try to change the dos options for it 21:59:57 is it very CPU hog? 22:00:09 its not a hog 22:00:12 if not, you can try using DosBox 22:00:18 and i went to preferences and it said it was in window mode 22:00:42 you can't run a graphical dos program in a window 22:00:56 IME, at least 22:01:12 SimonRC: well, you can fix it to use SDL 22:01:31 :/ 22:01:38 lindi-: eh? 22:01:42 with DosBox you can, http://dosbox.sourceforge.net/ 22:01:48 ok 22:01:53 SimonRC: hmm? 22:01:56 SimonRC: why not? 22:02:37 ok, last time I tried to find a way to do it, I didn;t find one 22:02:41 never mind 22:02:51 SimonRC: what program did you try to port? 22:03:09 I wasn;t porting it, just running it 22:03:27 SimonRC: well that "fix" includes things people usually call "porting" 22:03:35 who was talking about porting things? 22:03:45 i mentioned "fixing" 22:03:51 ok 22:03:59 I didn;t say I had sourcew 22:04:21 SimonRC: blah proprietary crap then :( 22:04:36 that'll limit your options indeed 22:04:57 _The Incredible Machine_ is not crap. 22:05:04 neither IMO is Rayman 22:05:30 <_W_> SimonRC, you tried Armadillo run? 22:05:46 <_W_> it's like a cross between BridgeBuilder and TIM 22:05:54 <_W_> (still "proprietary crap" tho) 22:06:17 SimonRC: it is when it comes to doing development for it, hard to fix anything without source :/ 22:06:41 <_W_> unless you're good with fiddling with machine code/assembler/diassembled code 22:09:43 <_W_> Any of you happen to run netbeans? 22:20:08 -!- ChanServ has quit (ACK! SIGSEGV!). 22:21:42 -!- ChanServ has joined. 22:21:42 -!- irc.freenode.net has set channel mode: +o ChanServ. 22:38:23 _W_: I've used it 22:38:37 <_W_> I'm trying to get files to save in UTF-8 22:38:46 <_W_> java files save in it now, but nothing else 22:39:00 use PFE! 22:39:37 IIRC you can right-click on anything in the source tree in Netbeans and hit update to get it check for external changes 22:39:49 <_W_> PFE? 22:40:00 !google PFE 22:40:10 darn 22:40:25 <_W_> Pfizer, Inc. (stock symbol) Pacific Fruit Express Company Packet Filtering Engine 22:40:44 nonono 22:40:47 theeditor 22:40:50 the editor 22:40:51 <_W_> yeah I found it 22:41:05 <_W_> I'm already coding java in netbeans tho, and enjoy all the refactoring and automation features 22:41:51 <_W_> would be a bit of a pain to keep two editors open when experimenting 22:42:37 the trick is to use a language that doesn't need a special-editor to use sensibly 22:42:46 *cough*Haskell*cough* 22:42:50 or Joy 22:42:52 Or J 22:42:55 or K 22:43:00 or Ruby 22:43:11 or dozens of other langs 22:43:47 <_W_> I'm sure all of those could use some automation in their editing 22:44:14 <_W_> at the very least, they all benefit from search and possibly search/replace 22:44:54 bah! Get a real typesystem! 22:45:37 If you need an editor that turns some simple input into a more complex thing in the source code, try making the more complicated thing the official for for the source code. 22:45:47 <_W_> that's not what I need tho 22:45:59 <_W_> autocomplete for instance, is a lifesaver 22:46:09 what for? 22:46:11 <_W_> and no, not because the language is too verbose 22:46:15 <_W_> for class names for instance 22:46:39 you're writing Java, right? 22:46:48 <_W_> yes... 22:47:06 <_W_> when you use libraries from 100 different people, it can be a bit of a pain to type out all the package and class names 22:47:15 what are you writing, BTW? 22:47:31 <_W_> right now? just experimenting with my graph language 22:47:49 <_W_> I thought I'd be perverse enough to use unicode arrow up and arrow down as operators :p 22:48:00 hmm, perl does it 22:48:11 well, this is the *ideal* time to switch the project to a better language 22:48:36 or rather, mor suited 22:48:44 <_W_> but java is by far the language I am most familiar with generate code in and with 22:48:51 <_W_> BCEL etc 22:49:05 <_W_> *generating 22:49:09 a great time to learn a new language, then 22:49:18 <_W_> you know of something better? 22:49:29 <_W_> or are you suggesting I compile to c or something? 22:49:48 waitamo, *how* are you using Java? 22:50:29 <_W_> I am using java to read source files of my special language, and using BCEL to write out a compiled class file from that source 22:50:58 <_W_> BCEL=ByteCode Engineering Library btw 22:51:02 ah, so it is written in Java and compiles to the JVM? 22:51:07 yeah, I googled it 22:51:27 <_W_> makes it *really* easy to write a compiler 22:51:37 hmm 22:52:29 Personally, I recognise this as fundamentally a problem of turning a datastructure into another datastructure, i.e. a pure function. 22:52:41 Therefore I would attack it with Haskell. 22:53:40 I might make it spit out horrible Java at the end which gets compiled without me everhaving to look at it. 22:53:54 <_W_> there are two objectives that needs to be met of course; one is to have something that is easy to compile TO, and the other, something that can easilly do the compiling to that thing 22:54:16 (or I could butcher up the minijava->C compiler I have been given for my 3rd-year project) 22:54:38 why do these langs have to be the same lang? 22:54:59 <_W_> they don't, it's just that the combination java->java has been the best I've experienced so far 22:55:08 IIRC, there is a cross-compiler to the JVM for Haskell anyway 22:55:12 <_W_> even simpler than using bison/flex etc 22:55:32 <_W_> yes, but is it simpler to *output* haskell than jva bytecode? 22:55:34 <_W_> *java 22:55:37 erm, they are parser-generators, not bytecode generators 22:55:47 <_W_> yes, I know, but same purpose 22:55:50 _W_: quite possibly yess 22:55:59 _W_: eh 22:56:09 what does BCEL actually *do*? 22:56:14 <_W_> nothing 22:56:16 <_W_> it's just a model 22:56:42 <_W_> but with it, you don't have to consider syntax at all 22:56:51 <_W_> all is enforced by the model 22:57:13 which part of the compiling do you use it for? 22:57:17 <_W_> just say "add an instruction to this method, that adds this and this variable" 22:57:22 <_W_> and it does that 22:57:26 ah, ok 22:58:07 I could write a Haskell library to do that, though it would take me ages to make it as good as I hope BCEL is. 22:58:16 y'know typecheking, and the like 22:58:19 <_W_> indeed 22:58:47 I assume anything you can persuade BCEL to output will compile correctly? 22:59:00 <_W_> BCEL *is* the compiler essentially 22:59:07 <_W_> valid bytecode is what it writes 22:59:20 ok 22:59:22 <_W_> and yeah, I don't think you can get it to write bytecode that java rejects 22:59:35 have you seen the JVM spec? 22:59:39 <_W_> yes 22:59:51 very OOO, isn't it? 22:59:54 :-) 23:00:12 <_W_> what do you mean? 23:00:20 -!- bsmntbombdood has quit (Read error: 104 (Connection reset by peer)). 23:00:24 <_W_> the actual spec documents? the VM? 23:00:45 <_W_> yes, the VM still has a concept of objects 23:01:24 Object-Orientation-Oriented 23:01:31 is what I meant 23:01:48 <_W_> heh yes 23:14:43 -!- bsmntbombdood has joined. 23:31:56 bsmntbombdood: how do you hide your hostname? 23:32:14 I have been fiddling with CVhanserv for 5 mins but I can't figure it out 23:32:22 /msg a staffer and ask them to give you a cloack 23:32:32 hmf 23:32:47 * SimonRC wonders why nickserv can't do that 23:33:08 it cloaks a fair amount fo stuff 23:45:58 -!- tokigun has quit ("¼­¹ö °ü°è»ó 12½Ã°£ µ¿¾È ¾Èµå·Î¸Þ´Ù °ü±¤ °¡¿À´Ï ±ä±ÞÇÑ ¿¬¶ôÀº ¼ÕÀüÈ­¸¦ ¾²°Å³ª ±ò²ûÇÏ°Ô Æ÷±âÇϽøé ÁÁ½À´Ï´Ù. ¤©¤©¤©;;;"). 23:53:59 <_W_> http://freenode.net/faq.shtml#cloaks 23:56:40 SimonRC: would be nice if minijava supported input