00:28:30 -!- nazgjunk has quit ("Leaving"). 00:33:46 I don't think humans function in a non-axiomatic way, we're just orders of magnitude more complex than any AI ever constructed 00:43:32 humans function in a non-axiomatic way, unless you consider the laws of physics to be axioms. 00:43:51 humans, after all, are physical objects, and not mathematical abstractions like computer programs. 00:59:03 -!- sebbu2 has quit (Client Quit). 01:06:22 I would say... equating human behavior to algorithmic processes is... dangerous 01:06:41 but... highly common in this kind of area. 01:19:56 http://rendell-attic.org/gol/tm.htm 01:32:49 -!- wooby has joined. 01:39:36 I don't see anything particularly problematic with saying that humans are axiomatic machines- we're complicated enough to make reliable modeling difficult, but it doesn't make us magical. 01:40:12 but we are 01:40:17 our axoims change 01:40:54 any complex ordered system appears random when viewed without enough context 01:43:48 things like intuition are simply algorithms that function below our level of consciousness. Just because we can do things without "thinking in algorithms" (at a high level) doesn't mean they don't exist. 01:45:30 and I tend to write off the things that human brains are good at that conventional software fails at as a function of a dramatically different approach to the problem. Computers and brains do some of the same things, but they do so in completely different ways. 01:58:38 RodgerTheGreat: you can fuck with human brain in arbitrary ways and it still works. 01:58:42 RodgerTheGreat: it's a physical object. 02:09:52 -!- wooby has quit. 02:39:52 One huge difference is the way signals are processed... 02:41:28 Brains reconfigure their physical properties at frequent intervals... use electricity and chemicals to form reactions... and have totally different methods of operation. 02:41:57 At a higher level these differences become less signifigant - however they are still there. 03:07:06 -!- Sgeo has joined. 03:17:24 SII(S(KK)(SII)) 04:00:47 -!- SevenInchBread has quit ("haaaaaaaaaa"). 05:11:40 good night everyone 05:12:04 -!- wooby has joined. 05:19:04 -!- anonfunc has joined. 05:34:40 -!- oerjan has joined. 05:55:57 -!- ShadowHntr has joined. 06:08:16 * oerjan wishes to point out that the book "Maths made difficult", which started a discussion of how the word "maths" is ridiculous, actually is named "Mathematics made difficult". 06:11:40 -!- GreaseMonkey has joined. 06:19:32 -!- thematrixeatsyou has joined. 06:20:10 -!- GreaseMonkey has quit (Nick collision from services.). 06:20:44 -!- thematrixeatsyou has changed nick to GreaseMonkey. 06:21:15 -!- RoboMonkey has joined. 06:22:28 ~bf ,[.,]!Test 06:22:54 what bot is that for? 06:22:58 ~exec execfile("/bot/scripts/bf.py") 06:23:03 ~bf ,[.,]!Test 06:23:03 Test 06:23:06 k 06:36:06 darn it's annoying reading the logs when you want to comment on everything people said while you were asleep. And now they are. 06:41:26 uhuh 06:54:36 your mom's asleep. 07:11:29 -!- anonfunc has quit. 07:12:03 -!- Sgeo has quit (Remote closed the connection). 07:30:59 -!- GregorR has joined. 07:58:02 afk, food 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:01:04 atk, coffee 08:08:07 -!- ShadowHntr has quit (Read error: 110 (Connection timed out)). 08:08:40 back 08:09:36 front 08:12:39 up 08:15:51 vinn 08:19:21 asdf 08:20:58 jkl 08:22:22 you forgot the semicolon 08:22:35 jklø 08:22:47 ;;;;;;;;;;;;;;;;;;;; 08:22:51 my keyboard isn't English :) 08:22:57 ok 08:23:08 yuiop 08:23:21 what keymap is it? 08:23:25 mine's qwerty 08:23:33 norwegian qwerty 08:23:40 oh ok 08:24:07 the numbers and english letters are in the same place 08:26:18 ok, i'm learning C++. any suggestions on what to do with it? 08:26:43 i don't know C++ 08:27:40 but the obvious answer is to create an esoteric language interpreter :) 08:28:52 or a compiler into C++ 08:31:43 C++ is esoteric enough 08:32:32 i'm not so sadistic as to suggest you write a C++ compiler 08:34:10 a cellular automaton perhaps? 08:49:02 hmmm... 09:36:07 -!- RoboMonkey has quit (Client Quit). 09:36:33 -!- RoboMonkey has joined. 09:56:18 -!- ShadowHntr has joined. 09:58:51 meh, i'm bored 09:58:53 \viagra 09:58:54 GAY SEX BIG COCKS HORSE FUCK GOATSE.CX CHEAP XANAX HOT PR0N GAY SEX HORSE FUCK BRITNEY SPEARS POOOOOOOOORN RUB GAY BOYS POOOOORN FLIRT TAPE ERRECT1ON HORSE FUCK GOATSE 09:59:12 bored and perverted :) 09:59:33 it's me taking the mick out of spammers 10:00:55 there's 20 different messages 10:20:55 gonna go sleep, gnight 10:23:49 -!- GreaseMonkey has quit ("ext2 > ntfs"). 10:23:57 -!- RoboMonkey has quit (Remote closed the connection). 10:24:50 -!- sebbu has joined. 10:29:19 -!- ShadowHntr has quit (Client Quit). 12:41:00 -!- sebbu has quit ("reboot"). 12:57:37 -!- sebbu has joined. 13:56:00 -!- RodgerTheGreat has quit. 13:57:24 -!- oerjan has quit ("leaving"). 14:23:06 \help 14:23:14 oh, it's gone 14:31:11 was thinking about the rubik's cube... and invented A TOTALLY NEW WAY OF PROGRAMMING WHERE YOU DESCRIBE A PROBLEM AND LET THE COMPUTER SOLVE IT ON IT'S OWN! then i come home and pick a fucking random book, and it's about prolog............ 14:31:25 what are the odds :< 14:31:27 really 14:31:30 what are they? 14:32:30 hehe 14:33:31 I wouldn't say that humans had any more power than Turing machines. 14:33:47 i'm pretty sure i had a cooler way of describing problems of that nature... a rubik's cube is hell to describe to a computer in most languages 14:33:57 Just look how long it took for us to solve Fermat's Last Theorem. 14:34:23 this is where oerjan comes in and shows me a haskell 2-liner making my language redundant 14:34:39 heh 14:34:48 hmm, rubik's cube... 14:35:28 "the haskell puzzle game library" 14:36:01 rubik's cube is hard to represent as linked lists (probably because i suck though) 14:36:17 because you get confused because there is no "up" 14:36:25 if you get my meaning 14:36:27 actually... 14:36:39 consider the bit of plastic in the middle... 14:36:54 you can do any move while keeping that piece of plastic in the same position 14:37:37 this suggest that a 3*3*3 array is a good representation 14:37:56 clever 14:38:23 but, no language i know of makes let's you define rules that understand the symmetry 14:38:44 i mean, you have to do some manual abstractioning to be able to use all rotates the same way 14:38:45 hmm 14:38:50 i dunno if i make any sence :) 14:39:26 yes 14:39:38 actually, no... 14:40:21 I think you can write a function in Haskell that re-arranges the meaning of the axes for another function 14:40:30 that helps a lot 14:41:44 true, i like making new languages more than using the old ones though, even though it's rarely necessary :) 14:42:41 GregorR: don't learn C++ 14:42:52 oops, that was for greasemonkey 14:42:55 guess he's not here 15:27:44 -!- jix has joined. 15:42:28 -!- jix__ has joined. 15:50:57 -!- jix has quit (Read error: 113 (No route to host)). 15:52:11 -!- RodgerTheGreat has joined. 16:09:34 i'm pretty sure i could get prolog easier to program in... but even more sure it's already been done :) 16:10:01 since i don't really know any other lang like this but i hear there are such 16:58:55 -!- RodgerTheGreat has quit. 17:35:52 how short can quicksort be made if one can use any lang? 17:36:05 i can't find a K version 17:36:19 qs=: (($:@(<#[) , (=#[) , $:@(>#[)) ({~ ?@#)) ^: (1<#) 17:36:24 J sucked ass ^^^^^^ 17:36:28 in being short 17:38:10 i managed to get it in 36 chars in oklotalk, i'm wondering if i have to improve that 17:45:48 28 now 17:48:40 qs(x:s)=(\(y,z)->y++x:z)$partition( [18:35:11] can someone show me as short a haskell quicksort 17:49:24 [18:36:22] oklopol: qsort (x:xs) = qsort (filter (x) xs); qsort [] = [] 17:49:24 [18:37:36] oklopol: well, that was probably about as short as it gets 17:49:29 #haskell 17:49:42 oh 17:49:48 indeed a lot of whitespace 17:50:13 plus mine iterates through the input only once before recursing 17:50:19 i assumed they'd've understood what i meant by as short as possible (whoops cut the line in copy paste) 17:50:36 actually... 17:51:35 i don't think yours works :\ 17:51:36 q(x:s)=(\(y,z)->q y++x:q z)$partition( then again i don't know haskell 17:51:41 oki 17:51:42 :) 17:52:08 hmm 17:52:17 no hmm, sorry :) 17:52:19 only 50 chars 17:53:02 o mean, 39 17:53:41 It assumes you've imported Data.List though, which most modules of a Haskell program will do anyway. 17:55:24 oklopol: define: oklotalk 17:55:39 it's an apl derivative i've been making 17:55:46 on the web/ 17:55:49 ? 17:55:51 though is a lot different from apl now 17:55:52 ? 17:55:55 not yet anywhere 17:56:00 i'm running it in my head 17:57:20 it's more something between python and haskell now... since i don't like pure functionalism :| 18:00:02 i think it'd be {[]->[];x:s->{._+$x:.__}`{x>}PS} 18:00:23 with your code + haskell -> oklotalk 18:01:36 whoops, {[]->[];x:s->{'_+$x:'__}`{x>}PS} actually 18:01:37 :) 18:01:41 ' == outer lambda 18:01:48 . == this lambda :) 18:02:07 bah 18:02:08 :< 18:02:32 you mother! 18:02:35 *your 18:02:50 *it is 18:04:06 A friend of mine invented the evil smiley 18:04:07 :> 18:04:24 If you want to know why it is evil, give it a filename: 18:04:31 :> /dev/kmem 18:04:41 ok, maybe not that 18:04:57 :> /vmlinuz 18:05:04 * oklopol has :> windows 18:08:38 another quicksort, oklotalk style {_~/*/`{!-_ ! 18:08:54 well, {_~$/*/`{!-_ expln plz 18:09:17 but, it uses a few features i'm prolly never going to be able to implement :) 18:09:34 well, oklotalk has regexes extended to any lists 18:09:42 like Haskerl? 18:09:45 so you can create a list that just explains a form of a list 18:09:47 maybe 18:09:51 i don't know haskell :) 18:09:59 nonono, Haskerl 18:10:12 anyway, ontinue expln 18:11:13 yeah, wait a mo 18:12:24 damn, i have to think this over, since i found an inconsistency :) 18:12:40 i forgot a func can be a part of a regex list as well 18:12:51 hmm, i'll explain after i've figured this out 18:12:52 anyway 18:13:03 it was not quicksort :) 18:13:25 it was sort, left for the interpreter to brute force :P 18:13:33 so not that great 18:13:34 how 18:13:56 no way specified, the form of a sorted list is explained as a list regex 18:14:08 ~ mean 'make into form _ by reordering' 18:14:11 *means 18:15:04 but, i don't think that feature can do anything this complicated, it'd prolly just crash 18:15:32 hm 18:15:40 -!- jix__ has quit ("Bitte waehlen Sie eine Beerdigungnachricht"). 18:19:40 k 18:19:45 i can flood explanations now 18:19:46 /*/({!-_ /*/ in a list means 'any times the following' 18:19:46 `{} quotes a lambda 18:19:46 \1 is a list variable, kinda like in a regex 18:19:46 now if an unquoted function is encountered ({!-_ (a quoted function `{...} would just be a normal function value treated as a first-class citizen) 18:19:50 when the subexpression {!-_ this would mean ANY list without the lambda before it 18:19:54 it defines the value must return true assigned to it to be of that form (orred constraint lambda comes from that) 18:19:56 {!-_ _ is the iterator, -_ is the last place, ! means value 18:20:53 but, since i specified how regex lists worked just now, they might be changed radically... for example i might make explicit lambdas are xorred (in case of more lambdas) 18:21:01 *make it explicit 18:21:56 You know what would be cool. 18:21:59 Lambada calculus. 18:22:25 but, a feature i know how to implement, list comprehensions, '1 1{!-_+!--_}' is the fibonacci series 18:22:40 (okay, i might die making infinite lists possible :)) 18:24:43 (\0, not \1) 18:24:52 since it's applied as the first argument 18:41:22 -!- asiekierka has joined. 18:41:23 Hi! 18:41:45 i thought of doing a "Sexy esoteric language" 18:41:48 with 2 words: 18:41:55 "naked" "female" 18:41:57 but i doubt 18:41:59 i'm 10 yrs old 18:42:16 true, your mom might dislike it 18:42:32 my dad wouldn't 18:42:36 he likes that stuff 18:42:49 a "Quit" will look like this: -nakedfemale 18:42:58 "begin" = +nakedfemale 18:43:00 XD 18:43:24 "naked men" as commands might be a way to get more young women interested in esoteric programming 18:43:46 while naked woman - naked mens 18:43:55 more like 18:43:57 young man 18:44:03 i wouldn't do it 18:44:05 just giving out 18:44:07 ideas for you 18:44:09 guys to do 18:44:10 it. 18:44:45 thank you 18:44:50 we'll promise to think about it 18:44:59 ... tell me when done 18:45:08 ...will do 18:45:18 It will be capable of writing only some words: naked, unnaked, female, male, idiot. 18:45:38 so, to type: nake "naked male" 18:45:41 will type naked male 18:45:50 so it's working actually 18:45:54 but 15+ 18:46:16 i think all esolangs have a recommended age of 15+ 18:46:33 not all 18:46:40 Brainf**k? 18:46:45 Cat? 18:47:08 what about PS2lang? 18:47:10 asiekierka: what's the recommended age of brainfuck? 18:47:13 it wouldn't be esoteric 18:47:22 ... except "brainfuck" word it is 7+ i think 18:47:29 not because of profanity 18:47:36 ??? 18:47:38 i'm from poland 18:47:47 i'm from finland 18:47:54 i'm from blahland 18:47:57 bad words 18:47:58 i'm from Mars 18:47:59 == 18:48:01 who cares? 18:48:01 profanity 18:48:11 ok 18:48:12 12+ 18:48:57 http://tunes.org/~nef/logs/esoteric/06.08.10 - log when i was here. 18:51:12 who cares? 19:14:20 -!- helios24 has quit (Read error: 148 (No route to host)). 19:37:01 -!- crathman has joined. 19:44:07 -!- oerjan has joined. 20:04:10 -!- helios24 has joined. 20:16:29 -!- crathman_ has joined. 20:16:36 -!- crathman_ has quit (Remote closed the connection). 20:26:37 hmm 20:27:47 can someone tell me a nice regex way to change all occurrances of more than one whitespace in a row into " "+(" "*(occurrances-1)) in php 20:34:12 -!- crathman has quit (Read error: 110 (Connection timed out)). 20:34:39 * SimonRC goes away 20:43:11 i don't know php but in perl you could do s/ ( +)/" "." "x length($1)/e; 20:44:07 */eg; 20:46:02 *; 20:46:39 (that last one after nbsp 20:46:43 *) 20:53:23 well, someone in #php almost solved my problem, but it was close enough :) 20:53:54 i thought perl must have variables created for \1 etc 20:54:05 since it seems to like regexes 20:54:58 yep 20:55:16 hehe, they banned me on ircnet because of my nick :P 20:55:20 it was ^__^ though 20:55:36 bastards 21:17:17 -!- SevenInchBread has joined. 21:31:35 -!- asiekierka has quit. 22:35:39 ...hmmm... I haven't figured out the difference between lexical scope and dynamic scope. 22:36:10 anyone want to explain? 22:36:23 well.. 22:36:36 well.. 22:36:48 lexical scope: makes sense. 22:36:52 .... 22:36:54 dynamic scope: doesn't 22:36:57 -!- RodgerTheGreat has joined. 22:37:04 do you need a more in-depth explanation? :) 22:37:09 oh - all is revealed to me now - thanks lament. 22:37:14 hi guys 22:37:29 lament, preferably. :) 22:37:39 there are situations when dynamical scope is useful. 22:37:57 * bsmntbombdood doesn't know the distinction either 22:38:28 let's say you have a nested function like 22:38:56 f x = let g y = x + y in g 22:40:16 and consider the expression let x = 3 in f 1 x 22:42:01 with lexical scope, the x in the g definition will refer to the x parameter of f, whose definition contains the definition of g 22:42:17 ..i'm sure there's an easier way to explain this :) 22:42:25 ... 22:43:11 alright. I think I follow. 22:43:22 so f 1 x == f 1 3 == g 3 == 1+3 == 4 22:43:35 ok... 22:44:10 with dynamical scope, however, the x in the g definition will refer to whatever is x's value at the point g is _called_ 22:44:31 oh 22:44:35 -!- crathman has joined. 22:44:35 that doesn't make much sense 22:44:36 which will be 3 22:44:40 what language uses that? 22:44:50 old style LISP 22:44:51 hmmm.... I could see that being useful. 22:45:18 for example. in places where you don't have closures. 22:45:25 there is a Haskell extension for dynamically scoped variables 22:45:27 even C isn't like that 22:45:52 and you want to do something like a for loop as a function... but there isn't a closure construct. 22:45:56 eh, lexical scoping essentially _is_ closures 22:46:39 hmmm... IO has blocks (dynamical scope) and methods (lexical scope) 22:47:24 ALSO 22:47:50 I found a nifty way to simulate lines without using lines in my Sophia language. 22:49:09 functions that don't return values will simply return the calling context (the "self" variable from the calling scope) 22:49:47 so any messages sent after that will be treated like a new line. 22:51:24 another way to look at dynamical scoping is that all variables are global, but are saved and restored on function calls 22:51:51 (this shows why they are very simple to implement) 22:52:04 hmmm... kind of messy for functional languages... but it makes sense for procedural languages. 22:52:21 no it doesn't. 22:52:22 or "stackless" languages.. 22:52:41 it only 'makes sense' in that it's practically trivial to implement. 22:52:51 it makes sense for languages with absolutely no nesting, i suppose 22:53:26 * SevenInchBread sighs and shakes head at lament.... :/ 22:54:24 ...reminds me of myself back when I thought pointers were evil. 22:55:14 oh, i'm not saying it's evil 22:55:21 it is.... esoteric 22:55:28 but as said, it makes sense to have the option of having a variable dynamic 22:55:49 it goes against the way people normally think of programs. 22:55:58 thus, it makes programming harder. 22:56:07 same with pointers by the way. 22:56:11 -snicker- I blame that on the programmer then. 22:58:46 anything is alien until you get used to it. 22:58:52 -!- _0xff has joined. 22:59:16 pointers are fun 23:00:19 SevenInchBread: spaghetti techniques are not "alien", they're just impossible to organize nicely 23:00:19 SevenInchBread: dynamic scoping is a spaghetti technique 23:00:34 One of the restrictions that I find with Python is that you can't alter anything beyond your scope... because there's nothing like a pointer. 23:00:57 SevenInchBread: globals, mutable objects 23:01:29 -shrug- mutable objects are the exception... but globals are still "in scope". 23:01:40 um. 23:01:46 you are confused. 23:01:55 -!- _0xff has left (?). 23:01:59 in C, you can only 'alter' something on the end of a pointer if you get passed the pointer. 23:02:06 in Python, it's the same. 23:02:19 you can only alter something on the end of an object if you get passed the object. 23:02:51 I'm talking about references... there's no way to say "make all references that point to this object now point to this object"... that's sometimes useful. 23:03:20 SevenInchBread: in C, you can't do that to pointers either. 23:03:40 but i see what you mean. 23:03:54 I'm actually playing around with that a little... using ID numbers. 23:03:55 and Python doesn't have that for a very good reason. 23:04:04 because Python is uber-conservative... 23:04:19 no, because python is well-designed. 23:05:26 -chuckle- it's well-designed if you like everything child-proof. 23:05:30 no 23:05:34 i'm not talking about child-proof 23:05:40 ? 23:05:56 it's well-designed conceptually 23:06:23 1) everything is an object 23:06:29 2) names are labels given to objects 23:06:53 ....other languages don't do number 2? 23:07:03 not usually 23:07:05 Scheme does 23:07:20 ...how else would it work? 23:07:24 well 23:07:46 if you could say 'have all references to this object now point to that object' 23:08:00 ah... 23:08:02 that would be a more complex model 23:08:16 for one, you had to use the word 'reference' 23:08:38 i am lament 23:08:44 you could potentially have another irc user named lament 23:08:51 but you can't just go and have ME be NOT ME 23:08:52 yeah 23:09:19 the way I've considered doing it... is to have an array of objects... with names being "symbols" that points to an index on the array. So swapping out objects is a matter of reassigning an index of this array. It's similar in certain regards to pointers - but less grounded in computerism. 23:09:44 that's exactly what pointers are 23:12:13 -nod- different analogy... and different mode of operation on the end (instead of referencing and dereferencing addresses and the like you're assigning symbols or objects) 23:12:57 say in python, "a = 3" - it's better to think of it not as "a is pointing to 3", but as "a MEANS 3" 23:13:51 |x| := 2 --assign the symbol x to 2 23:13:52 x := 2 --assigns the object represented by x to 2 23:15:28 |x| := "This is the text of the universe" 23:15:30 |y| := x 23:15:32 x := "There is a paradigm shift" ---both and |x| and |y| are changed.--- 23:16:51 that's ugly 23:17:28 terribly so 23:17:44 i have considered a different model for Reaper and Forte. 23:18:12 hmmm... it makes sense to me... if you think := being the method of an object. 23:19:15 with anything able to be redirected. 23:19:22 and if you think of |x| as "the symbol x" and x as "the object represented by x" 23:19:36 ...it makes perfect sense to me. 23:19:46 -!- sebbu2 has joined. 23:19:56 there's scoping problems too 23:21:18 hmmm, what kind? 23:22:48 a variable means different objects in different scopes 23:24:19 scopes are just objects... all variables pointing to "This is the text of the universe" are redirected to "There is a paradigm shift"... it's an absolute change in an objects identity - rather than a relative change in a names references. 23:25:13 an "absolute change in an objects identity" is a rather counter-intuitive operation, don't you think? 23:25:30 the whole point of OOP was that it was supposed to follow human intuition of "objects" 23:25:50 no... pretty straight foreward. You have this entity that exists beyond all names, and it can be altered. 23:26:01 "an absolute change in an object's identity" only happens in fairy tales 23:26:15 and in Reaper and Forte. 23:26:16 when something gets turned into something completely different :) 23:27:00 I see it being useful... where you have stuff that gets distributed around quite a bit and you don't wish to keep track of all the names. 23:27:30 SevenInchBread: give an example. 23:27:32 "make all references that point to this object now point to this object" << is there any language that provides this feature? 23:27:41 Reaper and Forte. 23:27:41 i had this idea of a reverse-pointer esolang 23:27:50 *whew* 23:27:55 you can do some neat stuff with that... though only some 23:27:59 ...well, the concept of Sophia has it... but I haven't implemented Sophia yet 23:28:14 SevenInchBread: give an example of "object identity replacement" being useful 23:30:15 http://esolangs.org/wiki/Processor/1 -- how is that remotely esoteric? 23:30:32 i almost read about reaper... but the lesson ended 23:31:27 that page (Processor/1) is the only contribution by its creator... 23:31:45 lament, a GUI.. where you store text in a string. A function that you want to redefine. If you have a listing of default values that are copied at multiple places - and you'd like to totally shift every variable that points to this default value. 23:31:45 well reaper remains vaporware alas... 23:32:12 but ais523 implemented Forte. 23:32:52 lament: so? 23:32:56 oh forte looks cool, i didn't quite understand reaper from the definition on esolangs.org 23:33:44 bsmntbombdood: i think he might be confused over what's considered esoteric 23:34:03 SevenInchBread: i don't understand that. 23:34:17 lament, it was three examples. 23:34:27 ...just in case they semantically blurred together. 23:34:28 SevenInchBread: give one. :) 23:34:40 ....but I did. o.o 23:34:41 "A function that you want to redefine." 23:34:47 this is kinda obvious 23:34:50 why would you want to redefine a function? 23:35:09 to make it faster and sexier 23:35:31 -shrug- I've had situations where I'd want to alter a function in runtime. Not all applications are statically defined in source. 23:36:09 well, functions are inherently a bit tricky 23:36:10 mmm yeah i didn't fail, you often want to make a function faster at runtime :) 23:36:21 allll the time 23:36:24 because there's an issue of how are they represented as objects 23:36:38 if the function is a _method_, you can just change the method. 23:36:47 if it's an _object_, then that's a bit weird 23:36:49 especially in programs who have the task of being programmable by themselves.... 23:36:51 (python is a bit weird) 23:37:37 i'm not sure if it makes sense for functions to be objects. 23:37:39 but see... a function can be dispersed across multiple names... not just the one you defined it as... thus it's handy to have an -identity replacement- ;) 23:38:37 -!- sebbu has quit (Connection timed out). 23:38:45 i think in this case our design is broken 23:38:56 it should still be the same function, but with a different behavior 23:38:57 ...I don't really see too many uses for it... it simply arose naturally out of my attempt to objectitize the variable. :) 23:39:07 ie the function's _code_ should be a property of the function _object_ 23:39:29 because otherwise hte operation of 'changing the function' doesn't make sense 23:39:55 basically... it's similar to an in-place operation... 23:40:10 just... with an entirely new object. 23:40:14 are you replying to me? 23:40:16 i guess not :) 23:40:22 i think it'd be rude if pointers did not follow an object moving around in the memory :| 23:40:45 it'd be all alone 23:41:19 dangling pointer 23:42:07 (Perverse) 23:42:21 lament, sure... there's a flaw in your design... if the language you're using to make the design isn't capable of doing things like that. 23:42:31 i'm not using any language 23:42:41 -nod- it was an "example you". 23:42:44 as in "one" 23:43:24 THE HYPOTHETICAL IDENTITY. :o 23:43:31 I still can't think of any case where it makes sense to change the identity of an object 23:43:47 as opposed to a property 23:43:49 -shrug- me neither... not usually anyways. I just like it conceptually. 23:44:09 I don't, because it's unnaturaly. 23:44:10 -y 23:44:54 i think it's counterintuitive and not something my brain expects of everyday objects. 23:45:19 "Suddenly, the toaster in my kitchen becomes a shark swimming in the pacific ocean!" 23:45:30 REALITY IS A CRUX 23:45:35 WE ARE IN THE SURREAL WORLD 23:45:45 WHERE THE IDENTITY IS MALLEABLE. 23:45:57 well, sure 23:46:10 ABANDON ALL COHERANCY. 23:46:19 like i said, the best example of objects actually changing identity i can think of is fairy tales and magic :) 23:46:31 ....order is for chumps anyways. and magic makes for a fun afternoon. 23:46:41 * SevenInchBread enjoys some good programming voodoo. 23:47:11 SevenInchBread: changing object identity also leads to horrible, horrible things such as changing 2 to 3 23:47:33 http://www.esolangs.org/wiki/Forte this is so cool <3 23:48:01 lament, we should change 4 to 5... because 4 is a terrible number. 23:48:03 SevenInchBread: either you allow changing 2 to 3, or you place arbitrary restrictions on what can be changed and what can't 23:48:05 I see nothing wrong with this. 23:48:50 I'm something of a programmer liberal.... no restrictions on what's possible. 23:48:53 you might be able to change 2 to 3, then again in some languages you are allowed to segfault 23:48:57 well, it's not any more wrong than changing object identity in general :) 23:49:33 "I change 'hello' to be 'world'. World world!" 23:49:42 Here's another use... if you represent string concatenations as objects in their own right. 23:49:51 i suppose that's exactly what forte does? heh 23:51:22 wow, forte IS cool. 23:51:31 |x| = "o" 23:51:32 |y| = "Hell" + x + "o, World!" 23:51:33 yep :P 23:51:34 x = "p" 23:51:35 y print ---Hellp, World!--- 23:51:42 er... without the o in "o, world!" 23:52:26 ...it kind of goes away from the traditional programmers concept of "operations return values"... now things become a matter of identity - and the parts it takes to construct the whole. 23:53:06 oh holy crap forte is awesome 23:53:23 :P 23:53:32 heh, forte look fun 23:55:22 where can you get the interpreter? 23:55:29 and has anything been done with that? 23:59:27 oh wait...