<<Prev Next>> Scroll to Bottom
Stuff goes here
L1[00:00:52] <SpiritedDusty> hey Ir7_o why are some images on the forums not loading?
L2[00:03:21] <Ir7_o> ?
L3[00:05:31] <SpiritedDusty> things like this http://puu.sh/6BVsx.png, there are supposed to be buttons in the blank spaces after the brush icon. if I hover over them the color changes like normal but there aren't any icons
L4[00:19:18] ⇨ Joins: Symmetryc (webchat@pool-108-9-103-224.tampfl.fios.verizon.net)
L5[00:33:26] <ping> http://i.imgur.com/HecZcnA.png
L6[00:33:30] <ping> those icons too
L7[00:34:27] ⇦ Quits: Symmetryc (webchat@pool-108-9-103-224.tampfl.fios.verizon.net) (Quit: Web client closed)
L8[00:49:20] ⇦ Quits: DaKaTotal (webchat@ppp-88-217-69-199.dynamic.mnet-online.de) (Ping timeout: 198 seconds)
L9[01:02:31] ⇦ Quits: LordJoda (~lordjoda@178-26-182-118-dynip.superkabel.de) ()
L10[01:05:08] *** manmaed is now known as manmaed|AFK
L11[01:33:40] ⇨ Joins: johnsmith0508 (~Logan@75.115.1.190)
L12[01:40:05] <johnsmith0508> does anyone know why when I try to start a computer it says "Kernel returned unexpected results." ?
L13[01:44:28] *** AngieBLD is now known as AngieBLD|Off
L14[01:49:56] <ping> johnsmith0508, are you using the latest version (1.1.3)
L15[01:50:28] *** SuPeRMiNoR2 is now known as SuPeRMiNoR2|Away
L16[01:58:13] <Kenny|AFK> i'm taking care of it. sent him the link to the tutorials
L17[03:02:41] <LordFokas> Sangar: there appear to be "PDA"s planned for a future release of CC... you know, in case you want to compete, you're now aware of what's coming up if you weren't already :P
L18[03:07:45] *** SuPeRMiNoR2|Away is now known as SuPeRMiNoR2
L19[03:40:15] <Kenny|AFK> !op
L20[03:40:15] zsh sets mode: +o on Kenny|AFK
L21[03:40:31] <Kenny|AFK> !deop
L22[03:40:31] zsh sets mode: -o on Kenny|AFK
L23[03:49:20] *** LordFokas is now known as LordFokas|off
L24[04:04:26] ⇨ Joins: finkmac (~finkmac@68-68-10-184.applecreek.pathcom.com)
L25[04:09:25] *** SuPeRMiNoR2 is now known as SuPeRMiNoR2|Away
L26[04:28:08] ⇨ Joins: Vexatos (~Vexatos@p5B31DD48.dip0.t-ipconnect.de)
L27[04:28:40] <Vexatos> Hello!
L28[04:40:47] *** ping is now known as VERSION
L29[04:40:54] <VERSION> Herrow :D
L30[04:42:56] ⇦ Quits: Lathanael|Away (~Lathanael@p54970BC1.dip0.t-ipconnect.de) (Ping timeout: 380 seconds)
L31[04:48:09] ⇨ Joins: Lathanael|Away (~Lathanael@p54970928.dip0.t-ipconnect.de)
L32[04:51:57] <Ir7_o> who are the new admins?
L33[04:54:49] <SpiritedDusty> who knows
L34[04:54:53] <SpiritedDusty> but theres too much admins lol
L35[05:03:51] <Ir7_o> sangar must have done it..
L36[05:04:09] <Ir7_o> i will work on the perms, dont touch them otherwise.
L37[05:08:51] ⇦ Quits: VERSION (~pixel@2601:4:4500:887:9942:7678:a44d:9b2f) (Quit: http://i.imgur.com/MHuW96t.gif)
L38[05:16:31] *** Bot is now known as Biohazard
L39[05:37:29] ⇦ Quits: finkmac (~finkmac@68-68-10-184.applecreek.pathcom.com) (Quit: Nettalk6 - www.ntalk.de)
L40[05:45:09] ⇦ Quits: vv3 (~IceChat9@2a02:1810:188b:2b00:5511:9bc6:e518:5561) (Quit: Don't push the red button!)
L41[05:45:21] * Kenny|AFK pushes the red button
L42[05:47:37] <Kilobyte> shaddap, you are afk
L43[05:47:48] <Biohazard> wat
L44[05:48:06] <Kilobyte> stuff
L45[05:48:22] <Kilobyte> afk people dont talk
L46[05:48:49] <Kilobyte> bbl, shower
L47[05:52:22] <Kenny|AFK> i'm not a person, i'm a cyborg
L48[05:52:40] <Kenny|AFK> i can talk even when away
L49[05:53:11] ⇦ Quits: Vexatos (~Vexatos@p5B31DD48.dip0.t-ipconnect.de) (Quit: Greetings from Pastry Fork, Inc. ✔)
L50[05:53:27] * Kenny|AFK pulls on athe string and watches as Kilobyte falls flat on his face
L51[05:54:04] * Kenny|AFK has an evil grin on his face
L52[05:55:38] * Kenny|AFK wonders why Kilobyte would even think everyone wanted to know he was getting naked
L53[05:56:05] *** Kenny|AFK is now known as Kenny|Sleeping
L54[05:57:12] ⇦ Quits: Biohazard (Biohazard@biohazard.tropicraft.net) (Quit: tropicraft.net)
L55[05:59:50] * Kenny|Sleeping says I wish they would quit referring to this cold weather as an 'Artic Blast' cause I am in now way having a blast
L56[06:00:10] ⇨ Joins: Biohazard (Biohazard@biohazard.tropicraft.net)
L57[06:00:31] * Kenny|Sleeping smacks Biohazard with an Artic Blast
L58[06:34:38] ⇦ Quits: Stary2001 (Stary2001@stary2001.co.uk) (Ping timeout: 194 seconds)
L59[06:57:26] ⇨ Joins: Stary2001 (Stary2001@stary2001.co.uk)
L60[07:31:40] ⇨ Joins: Vexatos (~Vexatos@p5B31DD48.dip0.t-ipconnect.de)
L61[07:50:55] ⇦ Quits: Vexatos (~Vexatos@p5B31DD48.dip0.t-ipconnect.de) (Quit: Greetings from Pastry Fork, Inc. ✔)
L62[08:09:24] *** alekso56_off is now known as alekso56
L63[08:11:36] *** alekso56 is now known as alekso56_off
L64[08:25:01] *** LordFokas|off is now known as LordFokas
L65[09:43:44] ⇨ Joins: Vexatos (~Vexatos@p5B31DD48.dip0.t-ipconnect.de)
L66[09:59:03] <Wobbo> Morning
L67[09:59:54] ⇨ Joins: LordJoda (webchat@141.84.9.209)
L68[09:59:54] zsh sets mode: +o on LordJoda
L69[10:01:43] <LordFokas> \o
L70[10:02:03] <LordFokas> I hate CC a bit more every day
L71[10:02:10] <LordFokas> their API is just plain stupid
L72[10:02:41] <Wobbo> Java API or the in game API?
L73[10:06:59] *** alekso56_off is now known as alekso56
L74[10:08:35] <LordFokas> java API
L75[10:08:54] <LordFokas> you need a jar to mount a resource on a computer
L76[10:09:06] <LordFokas> which means you can't even test it in a dev environment
L77[10:09:07] <Wobbo> No experience with the Java side of things
L78[10:09:31] <LordFokas> which means OC will by far be the mod that plays best with StargateTech 2
L79[10:19:35] <Wobbo> I'm not the only one who uses his github auto generated image as an avatar on the forums :P
L80[10:24:02] *** alekso56 is now known as alekso56_off
L81[10:34:48] *** JoshTheEnder|BackInTheEther is now known as JoshTheEnder
L82[11:16:07] *** alekso56_off is now known as alekso56
L83[11:49:06] <Sangar> mornin' everyone
L84[11:49:20] <Wobbo> Afternoon
L85[11:52:32] <Wobbo> I can't get the pipes to work properly :/ I ran out of ideas.
L86[11:52:45] <Sangar> i've been thinking about recipes a bit, and the only way I see to really get the complexity out of them would be basically to get rid of the "upgrading" mechanic. i.e. you don't need a basic case to craft an advanced case and so on. this flattens the recipes a *lot*, but by necessity also makes them a lot cheaper, too, for the most part. also, i think i'll throw out the normal circuit board step in the default/simple set, i.e. you'd go straigh
L87[11:53:09] <Wobbo> Might ask a computer scientist when I see one though
L88[11:55:21] <Sangar> Wobbo: as for that, the only way to allow "programs" to talk would be to change shell.execute (since you can't yield past that right now). problem in changing that will be that the stack of running programs will have to change to a map of coroutine->program info. meaning coroutines created in a "program" coroutine won't be able to query the program info via shell.running like they currently can, because there's no concept of hierarchy in lua c
L89[11:56:59] *** JoshTheEnder is now known as JoshTheEnder|BackInTheEther
L90[11:57:00] <Wobbo> Hmm…
L91[11:57:48] <Sangar> i think an alternative approach might be to add a "shell.popen" (not necessarily with that name) that accepts a callback that is used to handle yields. in that sense the context would stay the one of the new program, even when in the callback, but it'd be possible to access data from the calling program
L92[11:58:02] <Wobbo> Maybe we would need an hierarchy build into the system then. Could immediately be used for process managment, since OpenOS lacks that to.
L93[11:58:11] <Wobbo> That would work as well
L94[12:00:14] <Sangar> the only problem with that hierarchy would be that it'd work on 'ownership', which can get really confusing in case that ownership gets transferred implicitly :P
L95[12:02:19] <Sangar> minor gripe: when calling a program people would have to while running do coro.resume() end themselves - when using the callback that wouldn't have to change from how it is now. it's still somewhat weird, but on the upside it wouldn't change the behavior of shell.execute as it is now.
L96[12:03:56] <Sangar> feel free to try and convince me that the hierarchical approach with exposed coroutines is better, right now i'm leaning towards callbacks though :) i'll look into it this evening. have to get some things done, so see you then.
L97[12:06:20] <Wobbo> I mean a system like a normal UNIX system, so shell.execute would create a new program in the same way fork/exec does, with the control in the api, not the user. But the callback is probably easier.
L98[12:08:21] ⇨ Joins: DaKaTotal (webchat@141.84.9.209)
L99[12:14:39] *** alekso56 is now known as alekso56_off
L100[12:19:11] ⇦ Quits: DaKaTotal (webchat@141.84.9.209) (Ping timeout: 198 seconds)
L101[13:00:12] *** Kenny|Sleeping is now known as Kenny
L102[13:02:40] <Wobbo> Sangar, does lua.lua use the variable _PROMPT as a prompt or does it use a hardwired version?
L103[13:04:36] <Sangar> hardcoded at the moment. instead of using globals it might be nicer to reuse lua's os.getenv for things like that, though? and add a (nonstandard) os.setenv for that?
L104[13:05:23] <Wobbo> The PIL says that the normal interpreter uses a variable called _PROMPT, so if you want to conform to that, we should use that
L105[13:06:23] *** prassel|off is now known as prasselpikachu
L106[13:06:30] <Kenny> I _PROMPT you to do it right :)
L107[13:06:43] <Kenny> morning all :)
L108[13:06:59] <Wobbo> Morning Kenny
L109[13:07:08] <Wobbo> 8 o' clock, right?
L110[13:07:15] <Sangar> oh it does? ok then
L111[13:07:15] <Kenny> yep :)
L112[13:07:45] <Kenny> 2pm, right?
L113[13:08:16] <Kenny> so it would be afternoon :)
L114[13:08:20] <Wobbo> you are seven minutes off :P
L115[13:08:32] <Kenny> so were you :P
L116[13:08:46] <Wobbo> true
L117[13:08:57] <Kenny> and Afternon Sangar :)
L118[13:09:10] <prasselpikachu> wut?
L119[13:09:16] <prasselpikachu> not quite afternoon
L120[13:09:17] <Sangar> hi there :)
L121[13:09:24] <prasselpikachu> it's 14 o clock here xD
L122[13:09:29] <prasselpikachu> o/ Sangar
L123[13:09:49] <Wobbo> that is afternoon, because noon is 12 o clock, and it is after 12 o clock ;)
L124[13:09:51] <Kenny> if it is 1400 oclock then it is after noon <-- :P
L125[13:10:00] <prasselpikachu> lolk
L126[13:10:15] <prasselpikachu> i always interchange it with evening
L127[13:10:31] <Kenny> evening is after 6pm (1800)
L128[13:11:24] <Kenny> which is kind of funny because the evening period is the shortest of them all hehe
L129[13:12:37] * Kenny is in good humor today, finally no pain and body on the mend
L130[13:12:45] <Sangar> stupid process management won't let me concentrate on uni :/ Wobbo: what might work to get a somewhat clear relationship between coroutines is to modify the top level coroutine.create to always "register" a created coroutine with the shell (so that it can track child coroutines of a program/process that are not explicit programs, i.e. created via shell.execute/shell.newmethod).
L131[13:13:12] <Wobbo> I'm sorry Sangar :P
L132[13:13:45] <Sangar> as you should be, it's totally your fault! ;)
L133[13:14:01] <Wobbo> I know, right
L134[13:14:32] <Wobbo> So that the shell would keep track of what programs are running and how many threads they use?
L135[13:14:44] <Sangar> yes
L136[13:15:23] <Kenny> question, is there a Lua 5.2 for windows that can be installed and used to learn the language better?
L137[13:15:32] <Wobbo> Jep: Lua.org
L138[13:15:42] <Sangar> i'm thinking of adding a shell.load then, which would take care of loading a program from disk and wrapping it in a coroutine, registering the coroutine in the shells "tracker" and returning it. this would give control over the coroutine and what to do with it when it yields. shell.execute would then keep working as it does now (using .load under the covers)
L139[13:16:36] <Sangar> Kenny: or, if you don't mind having to press "run" http://www.lua.org/demo.html
L140[13:16:36] <Wobbo> That would work. So then the loaded program doesn't know it is wrapped, while the program that wrapped it can pass values to it using the returned function, right?
L141[13:16:59] <Sangar> yep
L142[13:17:29] <Kenny> no prob on pressing run, I downloaded the windows binary they had on the site and it was for Lua 5.1
L143[13:18:05] <Wobbo> Then the only thing that has to happen with stdin/sdtout it that they have to yield. So no more pipes
L144[13:18:06] <Wobbo> http://joedf.users.sourceforge.net/luabuilds/
L145[13:18:14] <Wobbo> That last link is for Kenny, BTW
L146[13:18:38] <Kenny> thank you
L147[13:18:43] <Wobbo> Kanny, you will need minGW
L148[13:18:47] <Wobbo> *Kenny
L149[13:18:55] <Sangar> only one remaining issue with that: manipulating the started program's io.input/output from the "outside". since manipulating the env won't be enough methinks (same issues as before, methods referring to the env they were declared in)
L150[13:19:24] <Kenny> kk :)
L151[13:19:35] <Wobbo> Well, that was one of the things that actually worked in my version of popen :P
L152[13:20:19] <Wobbo> the first thing the coroutine has to do is reset the stdin/sdtout. That worked in the latest devbuild
L153[13:20:22] <Sangar> maybe allow an "initializer" function to be passed to .load
L154[13:20:36] <Sangar> that would be run in the coroutine before the actual program is started
L155[13:20:59] <Wobbo> That is a pretty good idea, that way the user can setup the environment the program has to run in
L156[13:21:16] * Kenny looked at the temperature outside and dived under the covers hehe
L157[13:22:40] ⇨ Joins: DaKaTotal (webchat@141.84.9.209)
L158[13:25:36] <Wobbo> Still in bed at 8:24? :P
L159[13:26:11] <Kenny> it is -18C here
L160[13:26:24] <Wobbo> Celsius? That is cold
L161[13:26:35] <Kenny> -2F
L162[13:27:22] <Wobbo> That tells me absolutely nothing. I only know that 100 F is supposed to be your temperature when you have a cold
L163[13:27:54] <Kenny> not necessarily hehe
L164[13:28:13] <Wobbo> Alright, I have a question for everybody here that knows OOP
L165[13:28:26] <Kenny> normal body temp is 98.6F (37C)
L166[13:28:34] <Kenny> leaves me out eheh
L167[13:28:55] <Wobbo> If you would have an object in Lua, and you would want to add a method to it, would you expect that to go to only that object, or to all objects?
L168[13:29:15] <Wobbo> If we have a distinction between object functions(methods) and class functions
L169[13:33:53] *** JoshTheEnder|BackInTheEther is now known as JoshTheEnder
L170[13:46:26] <Sangar> kinda like static vs instance methods?
L171[13:46:32] <Wobbo> Yes
L172[13:46:35] <Wobbo> Exactly
L173[13:47:32] <Sangar> well i personnaly would expect className.method to be static and className.new():method to be an instance method
L174[13:47:37] <Sangar> *personally
L175[13:48:33] <Wobbo> I am working on an OOP frame work that lets you create a prototype in a table and that wraps it all up for you into instance and static methods, where the static methods start with a _ in the prototype
L176[13:49:40] <Wobbo> Now I would like the user to add functions to objects after the object is initialised, but should the function then only go to the object you add it to, or also to the other objects?
L177[13:49:46] <Wobbo> of the same type of course.
L178[13:51:12] <Sangar> if it's added post construction i'd expect it to only count for that instance. i'd explicitly go to the metatable to add methods that should show on all instances of that class.
L179[13:51:24] <Sangar> but that's just me :P
L180[13:51:50] <Wobbo> You can do class:registerValue(key, value) to add methods to all objects of that class, including subclasses
L181[13:52:06] <Wobbo> So only that instance it is
L182[13:53:10] <Sangar> !voice DaKaTotal
L183[13:53:10] zsh sets mode: +v on DaKaTotal
L184[13:54:01] <Wobbo> so local inst = Class:new() inst:registerValue(key, value) (or inst[key] = value) would only change that instance. Is the most logical if you ask me to
L185[13:57:26] <Sangar> but like this you have to register the instance methods/values each time you create a new instance, or is that just in the example? if so, isn't that a little... odd? I'd kinda have expected 'local class = Class() class:register(key, value) local inst = class:new() assert(inst:key == value) inst.instanceKey = instanceValue or something along those lines, i.e. have an "factory object" that represents the class.
L186[13:58:11] <Wobbo> It would go like this:
L187[13:59:15] <Wobbo> local Class = class{extends = class.Object, name = "Class", foo = function(self) return 42 end, _bar = function(self) print("Hello!") end}
L188[13:59:34] <Wobbo> local inst = Class:new() inst:foo() -- 42
L189[13:59:48] <Wobbo> Class:bar() -- outputs Hello!
L190[14:00:30] <Wobbo> Class:registerValue("foobar", function(self) return 2* self:foo() end) inst:foobar() -- 84
L191[14:00:58] <Vexatos> What are you talking about? I don't want to read the whole chat log :D
L192[14:01:32] <Wobbo> Or you could just do function Class:foobar() return 2* self:foo() end to install it on all objects :P
L193[14:01:34] <Wobbo> OOP
L194[14:03:12] <Wobbo> I can show you a real example as soon as I tested my framework ;)
L195[14:08:08] *** Kenny is now known as mr_hazard2
L196[14:08:17] *** mr_hazard2 is now known as TinyIRC2
L197[14:08:38] *** TinyIRC2 is now known as stuff2
L198[14:09:00] *** stuff2 is now known as the_exiled_hillbilly2
L199[14:09:23] <Sangar> ah i see
L200[14:09:38] <Sangar> that's neat
L201[14:09:58] *** the_exiled_hillbilly2 is now known as Kenny
L202[14:10:48] <Wobbo> I haven't seen this done before. I guess most people come from c++/java where you use keywords, but in ObjC you just say that a method is static with a +, and that is just really clean. But that won't work in Lua, so I chose the _ :P
L203[14:12:39] *** Kenny is now known as TinyIRCishere
L204[14:12:58] *** TinyIRCishere is now known as Kenny
L205[14:14:53] <Wobbo> Sangar, what do you study? Just wondering
L206[14:15:13] <Sangar> computer science :P
L207[14:15:26] <Wobbo> Thought so :P
L208[14:16:52] <Vexatos> Surprise!
L209[14:18:59] *** Kenny is now known as Kenny|AFK
L210[14:19:47] <Wobbo> Not everybody here studies CS, so he could have done something else
L211[14:19:53] *** Kenny|AFK is now known as Kenny
L212[14:20:36] <Vexatos> I don't study at all just yet
L213[14:20:38] <Vexatos> :P
L214[14:20:53] <Wobbo> I mean from the people that do study :P
L215[14:21:05] <DaKaTotal> We have prepared a short Trailer for OpenComputers that shows some of the key features of the mod. Hope you like it. http://youtu.be/pbETzD-tuQo
L216[14:21:30] *** JoshTheEnder is now known as JoshTheEnder|BackInTheEther
L217[14:26:58] <Wobbo> Looks good!
L218[14:28:17] <Vexatos> That channel O.o
L219[14:28:26] <Vexatos> 60& English, 40% German
L220[14:28:27] <Vexatos> Heh
L221[14:31:24] <Kenny> DaKaTotal: Looks nice. Good work!
L222[14:32:18] <Vexatos> This is for the main MCForum page
L223[14:32:20] <Vexatos> :P
L224[14:33:22] <Vexatos> Hmmm
L225[14:33:35] <Vexatos> Sangar, could it be somehow possible for the adapter block
L226[14:34:04] <Vexatos> To show the component name to reference in the Computer in it's GUI once the block has been placed inside?
L227[14:34:35] * Kenny finished school way before Wobbo was born lol
L228[14:35:02] <Sangar> ah, thanks for the reminder. i wanted to change it so that using the analyzer would print information on the attached components.
L229[14:35:12] <Wobbo> I know that Kenny :P
L230[14:35:30] <Kenny> and before Sangar too lol
L231[14:37:19] <Vexatos> And probably before I was
L232[14:37:45] <Wobbo> But that is also not fair, you are way older then any of us :P
L233[14:38:04] <Vexatos> Sangar, I really like how the mod is making huge progress :D
L234[14:38:17] <Vexatos> He's maybe even older than all of us together O.o
L235[14:38:47] <Sangar> i really hate how it eats away the time i should spend on writing my thesis :P but it's just way too fun -.-
L236[14:39:44] <Wobbo> Well, Kenny is 57 and I am 19, so it really depends on Sangars and your age
L237[14:40:57] <Sangar> i doubt vexatos is *that* young :P
L238[14:41:11] <Wobbo> I doubt it to, but you may never know :P
L239[14:41:36] <Vexatos> I became 16 just today :D
L240[14:41:45] <Wobbo> And if you are working on your thesis… Master thesis or Bachelor Thesis?
L241[14:41:49] <Sangar> well happy birthday to you then
L242[14:41:52] <Vexatos> So that's 35
L243[14:41:55] <Wobbo> Congratulations Vexatos!
L244[14:41:55] <Sangar> diploma
L245[14:42:00] <Vexatos> Thanks :3
L246[14:42:05] <Vexatos> Sangar, how old are you?
L247[14:42:29] <Sangar> 28
L248[14:42:35] <Vexatos> Aww
L249[14:42:41] <Wobbo> I don't know that much about the german school system to know what that is in the american system(That the Netherlands is happily adopting :( )
L250[14:42:43] <Vexatos> 7 years too much :|
L251[14:42:57] <Sangar> sorry for being so old -.-
L252[14:42:58] <LordJoda> the german system a well...
L253[14:43:04] <Vexatos> Wobbo: bacheloe->Master is in german as well
L254[14:43:08] <Vexatos> diploma was the old one
L255[14:43:14] <Wobbo> Ah,
L256[14:43:25] <Vexatos> it was, well, like somehting inbetween
L257[14:43:40] <Vexatos> since there is no "bachelor" in that system
L258[14:43:48] <Vexatos> But it is almost like the master
L259[14:43:56] <Wobbo> Sounds like the system that we used to have.
L260[14:45:25] ⇦ Quits: daphee (~quassel@v22013051655012590.yourvserver.net) ()
L261[14:45:33] ⇨ Joins: daphee (~quassel@v22013051655012590.yourvserver.net)
L262[14:46:30] <Kenny> Happy Birthday to you
L263[14:46:34] <Kenny> Happy Birthday to you
L264[14:46:36] <Kenny> Happy Birthday dear Vexatos
L265[14:46:40] <Kenny> Happy Birthday to you
L266[14:46:46] <Kenny> hehe
L267[14:46:55] <Wobbo> And now in german! :P
L268[14:46:56] <Vexatos> Too many syllables :O
L269[14:47:13] <Vexatos> "Zum Geburtstag wünschen wir/
L270[14:47:19] <Vexatos> alles Gute und hier/
L271[14:47:25] <Wobbo> Zum Geburtstag viel gluck!
L272[14:47:28] <LordJoda> !
L273[14:47:28] <Vexatos> 'ne dicke Torte ohne Worte/
L274[14:47:37] <Vexatos> alles Gute wünschen wir!
L275[14:47:49] <LordJoda> noch nie gehört xD
L276[14:47:52] <Vexatos> :P
L277[14:48:09] <Vexatos> Ist aber lustiger als das "Original"
L278[14:48:19] <Wobbo> The fun part is, I understand what you are writing, but I could never produce it :P
L279[14:48:30] <Vexatos> Well, you're dutch
L280[14:48:35] <Vexatos> For me it's the same
L281[14:48:39] <Vexatos> In the Netherlands
L282[14:48:43] <Wobbo> I have had 5 years of German lessons
L283[14:48:44] <Kenny> Alles Gute zum Geburtstag
L284[14:48:47] <Kenny> Alles Gute zum Geburtstag
L285[14:48:48] <Vexatos> I can read 70% of the street signs
L286[14:48:50] <Kenny> Alles Gute zum Geburtstag liebe Vexatos
L287[14:48:53] <Kenny> Alles Gute zum Geburtstag
L288[14:49:00] <Vexatos> And I've never had any Dutch lessons
L289[14:49:10] <Vexatos> lieber*
L290[14:49:20] * Vexatos is not female
L291[14:49:25] <Kenny> and you will have to forgive is that is messed up but i had to use google translate
L292[14:49:32] <Vexatos> Heh
L293[14:49:35] <Vexatos> Never use that
L294[14:49:51] * Loonacy is totally female, honest!
L295[14:49:56] <Vexatos> Use en.pons.eu
L296[14:50:20] <Wobbo> Because in the Netherlands, if you do Atheneum(highest level in high school, without dead languages) you have to take Dutch, English and one modern foreign language. Since my French is even worse then my German…
L297[14:51:43] <Vexatos> O.o
L298[14:51:44] <Vexatos> No
L299[14:51:57] <Vexatos> German is such a freaking difficult language :|
L300[14:52:35] <Wobbo> German is pretty simple compared to Dutch :P Dutch is literally exception upon exception.
L301[14:53:11] <Wobbo> And German is closer to Dutch then French is.
L302[14:53:14] <Wobbo> So, yeah
L303[14:53:15] <Kenny> using that site would have really had my head spinning trying to translate it :P
L304[14:53:43] <Kenny> Happy birthday dear has so dang many listings i wouldn't know which one to use
L305[14:54:22] * Kenny thinks Wobbo is an exception upon exception upon exception hehe
L306[14:54:33] <Wobbo> That as well :P
L307[14:54:45] * Kenny just hasn't figure out the exception yet
L308[14:55:03] <Kenny> hehe
L309[14:55:21] <Wobbo> I also fail at Dutch grammar and stuff. That is why I am going to take a course in Natural Language Processing next year :P
L310[14:55:34] <Wobbo> So I won't have to process it myself :P
L311[14:55:38] <Kenny> no comment lol
L312[14:56:05] <Wobbo> Oh wait, that only goes from produced text to something the computer has to handle, not the other way around. Damn
L313[14:56:05] <Kenny> hell, i'm American and can't speak english hehe
L314[14:56:23] <Kenny> i speaks hillbilly
L315[14:56:36] <Wobbo> Sangar, it looks like my OOP is working :)
L316[14:56:54] <Vexatos> catch UnnaturalWobboException w {System.out.println("Wobbo: " + w.getStackTrace())}
L317[14:56:59] <Vexatos> Dangit
L318[14:57:03] <Vexatos> forgot the braces :|
L319[14:57:15] <Wobbo> And the semicolons!
L320[14:57:25] <Vexatos> The semicolon
L321[14:57:36] <Wobbo> ture
L322[14:57:38] <Wobbo> *true
L323[14:57:43] <Sangar> Wobbo: cool. i think shell.load is working.
L324[14:57:53] <Vexatos> O:
L325[14:57:54] <Wobbo> Neat
L326[14:58:08] <Vexatos> shell.load does what?
L327[14:58:34] * Kenny looks around, "Is this a madhouse where i'm being cloned"
L328[14:58:38] <Sangar> creates a coroutine that represents a program and returns the coroutine instead of running it automatically like shell.execute
L329[14:58:52] <Vexatos> So it runs the program
L330[14:58:54] <Sangar> allows for more flexible treatment of programs and should enable piping data between programs
L331[14:58:55] <Vexatos> without running it
L332[14:59:03] * Vexatos is confused
L333[14:59:06] <Sangar> :D
L334[14:59:14] <Kenny> hey, join the club :)
L335[14:59:17] <Sangar> it adds the coroutine to the table shell uses to track programs
L336[14:59:21] <Sangar> used by shell.running
L337[14:59:25] <Vexatos> Ah
L338[14:59:32] <Vexatos> so the program is running technically
L339[14:59:35] <Kenny> they lost me 3 days ago
L340[14:59:36] <Vexatos> just not doing anything
L341[14:59:43] <Sangar> basically, yes
L342[14:59:53] <Vexatos> What would that be useful for?
L343[15:00:10] <Sangar> piping data between programs, essentially
L344[15:00:31] <Sangar> the goal is to be able to do stuff like ls /bin | grep a in the shell
L345[15:01:35] <Sangar> for that the caller has to have some way of messing with how the callee is executed, and to mess with its environment, which can then be done via an initializer function passed to shell.load
L346[15:01:46] <Wobbo> Or just open a program as a side process to communicate with.
L347[15:01:48] <Sangar> for this case that'd be used to set io.input and output
L348[15:01:56] <Sangar> or that, yes
L349[15:02:14] <Wobbo> Basically, it will be the replacement for io.popen
L350[15:02:17] <Sangar> makes the shell usable for people who wish to implement a multitasking os
L351[15:03:34] <Sangar> well, not a complete replacement, popen will still have to take of redirecting the i/o streams, but yeah, parts of what popen would have to do itself otherwise
L352[15:03:58] <Wobbo> That is true
L353[15:08:00] *** alekso56_off is now known as alekso56
L354[15:12:19] <Wobbo> Alright, inheritance works, but inheritance of metamethods doesn't
L355[15:13:20] <Kenny> Sangar, question. is x the row or col when get the cursor location?
L356[15:13:56] <Kenny> i ask because i'm ripping edit apart to use it for my menu system hehe
L357[15:14:02] <Wobbo> x should be col.
L358[15:14:19] <Kenny> okey dokey
L359[15:14:50] <Wobbo> Unless Sangar approached it from a linear algebra perspective, but I don't think that that is likely
L360[15:15:06] ⇨ Joins: ping (~pixel@2601:4:4500:887:427:b12e:41aa:ed38)
L361[15:27:48] <Sangar> yeah, x is col, y is row
L362[15:39:57] <Kenny> I'm going to use edit and convert it over to my menu system :)
L363[15:40:30] *** prasselpikachu is now known as prassel|off
L364[15:40:49] <Wobbo> Could you make it more like vim? Using MacVim and edit side by side is kinda annoying :P
L365[15:41:18] <Kenny> ?
L366[15:41:23] <Wobbo> Never mind
L367[15:41:42] <Sangar> but esc is used to close the gui ^^
L368[15:42:05] <Wobbo> But w is not used to write!
L369[15:42:08] <Kenny> i'm creating a menu system to run my platform quarry :)
L370[15:42:11] <Wobbo> That is really annoying!
L371[15:42:17] <Sangar> :P
L372[15:42:33] <Sangar> Kenny: good luck. edit is pretty much the most complex of the built-in programs :P
L373[15:43:08] <Kenny> it wasn't hard. Just create a text file with the commands in it and have edit read that file hehe
L374[15:43:37] <Kenny> and bingo, you now have a list of the copmmands to arrow up and down hehe
L375[15:44:25] <ping> GUI be easy
L376[15:44:50] <Kenny> ping, do you have any idea what the hell i'm doing? Sangar does
L377[15:45:14] <ping> "i'm creating a menu system to run my platform quarr"
L378[15:45:54] <Kenny> right, i'm controlling the platform from my base, so there is other code involved as wel
L379[15:45:54] <ping> i assume its a bunch of frames with miners
L380[15:45:56] <Kenny> well*
L381[15:46:02] <Kenny> nope
L382[15:46:11] <ping> i saw a video on one that was 5 chunks wide
L383[15:46:19] <Kenny> it's a single platform with a quarry on it
L384[15:46:40] <ping> :/
L385[15:46:54] <Kenny> platform is 32x32 with a 16x16 hole in the center to run a BC quarry in
L386[15:47:08] <Kenny> it mines a single chunk in 20 minutes
L387[15:47:21] <Wobbo> Sangar: An example and the code for my OOP framework: https://gist.github.com/Wobbo/8690777
L388[15:47:32] <ping> not exactly endgame
L389[15:47:41] <Kenny> wasn't meant to be
L390[15:47:52] <Wobbo> No privacy or anything yet, I leave that up to the users to use it responsible :P
L391[15:48:17] <Kenny> normally i don't even play the game. I just make test builds of crazy ideas i come up with
L392[15:48:20] <ping> Wobbo, OOP in lua is ineficient
L393[15:49:10] <Vexatos> Multitasking OS sounds interesting
L394[15:49:14] <Vexatos> I want walrOS to do this
L395[15:49:22] <ping> Vexatos, yup :3
L396[15:49:22] <Vexatos> Or maybe a WobbOS?
L397[15:49:33] <Vexatos> VexatOS is planned :P
L398[15:50:17] <Wobbo> WobbOS would be such a big project, I'm not even going to start work on that :P
L399[15:50:53] <Wobbo> Ping, it might be inefficient, but check out my framework, it looks really nice, if you ask me :P
L400[15:51:03] <Vexatos> >_>
L401[15:51:18] <Vexatos> <Wobbo> I like my work, it looks good in my opinion
L402[15:51:26] <Wobbo> :P true
L403[15:51:32] <Wobbo> Well, not everything
L404[15:51:34] <ping> Wobbo, the reason i hate OOP is because you have to go through multiple indexes and metacalls in order to get a constant
L405[15:51:39] <ping> which imo is retarded
L406[15:51:52] <Vexatos> indexes <-- Worst English word ever
L407[15:52:15] <ping> walruses <-- Best English word ever
L408[15:52:21] <Wobbo> Then you should write a framework that copies everything, I don't think that that is much better
L409[15:52:59] <Wobbo> OOP in Lua is inefficient, I give you that. But I do think that it is sometimes the right tool for the job, and then you should just use it
L410[15:54:00] <Vexatos> OOP in Lua?
L411[15:54:06] <Vexatos> How is that even possible?
L412[15:54:20] <Wobbo> Metatables
L413[15:55:28] <ping> you can control what things can be done with a table
L414[15:55:36] <ping> for example, you can call one as a function
L415[15:55:54] <Wobbo> local Foo = class{name = "Foo"} :D
L416[15:56:07] <Wobbo> Where class is actually a table that holds the module
L417[15:56:13] <ping> setmetatable({},{__call=function() print("nope") end})() -> nope
L418[15:56:41] <ping> class=setmetatable({potato=true},{__call=function() print("nope") end})
L419[15:56:46] <ping> class -> nope
L420[15:56:54] <ping> class.potato -> true
L421[15:57:11] <ping> though thats kinda stupid
L422[15:57:18] <Vexatos> Implement Java into lua :D
L423[15:57:26] <Vexatos> So you have Java running in Lua running in MC
L424[15:57:30] <Vexatos> O.o
L425[15:57:33] <ping> you dont have to have functions and table using the same name
L426[15:57:35] <Wobbo> Vexatos: https://gist.github.com/Wobbo/8690777
L427[16:00:51] <Vexatos> What the
L428[16:00:53] <Vexatos> >___>
L429[16:00:55] <Vexatos> Why?
L430[16:03:25] <Wobbo> Java in Lua :P It not Java, but it comes close
L431[16:03:28] <Wobbo> Somewhat
L432[16:04:26] <ping> not even
L433[16:04:42] <ping> java is overly verbose, OOP is supposed to make things less verbose
L434[16:12:33] <Wobbo> I see you like java ping :P
L435[16:12:44] <ping> no.
L436[16:16:59] *** alekso56 is now known as alekso56_off
L437[16:42:06] *** alekso56_off is now known as alekso56
L438[16:50:38] *** JoshTheEnder|BackInTheEther is now known as JoshTheEnder
L439[16:51:34] ⇦ Quits: Lunatrius (~Lunatrius@cpe-46-164-9-136.dynamic.amis.net) (Ping timeout: 207 seconds)
L440[16:52:06] *** JoshTheEnder is now known as JoshTheEnder|BackInTheEther
L441[16:57:59] <Kenny> Hey Sangar, i got it working except for setting the exit option :)
L442[16:58:18] <Sangar> congrats. and who needs that anyway :P
L443[16:58:20] <Kenny> although it does exit, just with an error lol
L444[16:58:59] <Kenny> i made the mistake of taking out the Ctrl+w exit option and now have to find out how to put it back in
L445[17:00:01] <Kenny> Menu works, now to work at getting it to send the command to the platform
L446[17:00:21] <Kenny> also, this is a generic menu system which anyone could use :)
L447[17:02:41] ⇦ Quits: LordJoda (webchat@141.84.9.209) (Ping timeout: 198 seconds)
L448[17:06:44] ⇦ Quits: DaKaTotal (webchat@141.84.9.209) (Ping timeout: 198 seconds)
L449[17:16:56] *** JoshTheEnder|BackInTheEther is now known as JoshTheEnder
L450[17:17:33] *** JoshTheEnder is now known as JoshTheEnder|BackInTheEther
L451[17:18:10] *** JoshTheEnder|BackInTheEther is now known as JoshTheEnder
L452[17:21:19] *** Lathanael|Away is now known as Lathanael
L453[17:37:57] <Kenny> is there a way to strip out unnecessary spaces at the beginning and end of a line?
L454[17:41:09] <Kenny> hello?
L455[17:41:28] <Kenny> damn, everybody died
L456[17:41:30] <Wobbo> Using regex
L457[17:42:18] <Kenny> and how doi i do that? I'm used to having a function trhat does it, like rtrim ot ltrim
L458[17:42:33] *** SuPeRMiNoR2|Away is now known as SuPeRMiNoR2
L459[17:42:54] <Kenny> SuPeRMiNoR2 I got that menu system going
L460[17:43:05] <Wobbo> there is text.trim
L461[17:43:06] <SuPeRMiNoR2> Yay :D
L462[17:43:35] <Kenny> i took the edit.lua from inside the zip file and stripped it down to what i needed.
L463[17:43:51] <Kenny> i went one further in kind of making it generic
L464[17:44:09] <Kenny> the menu is taken from a text file that is loaded in
L465[17:44:32] <Kenny> so yu set up menu.txt and then execute the menu script
L466[17:45:29] <Kenny> it loads in the file (which is the menu) and you have your menu :)
L467[17:46:23] <Kenny> next is to make it totally generic where it loads in the menu.txt file and also loads in what should be executed for that menu selection
L468[17:49:14] <Kenny> Wobbo, i'm going to shoot you
L469[17:49:37] *** JoshTheEnder is now known as JoshTheEnder|Noms
L470[17:49:48] <Kenny> there is already a string function in lua to do just what i ask about
L471[17:51:45] * Wobbo makes mental note to stay away from Kenny
L472[17:52:00] <Wobbo> is there a string.trim?
L473[17:52:33] <Wobbo> Anyway, I posted my OOP framework on the forums
L474[17:53:27] <Kenny> the lua wiki says yes but i made my own and guess what?
L475[17:53:41] <ping> its more of an API than framework
L476[17:53:48] <ping> .NET is a framework
L477[17:54:10] <Kenny> MY PLATFORM CONTROL MENU WORKS!
L478[17:54:28] <Kenny> ping, why are always such a nay sayer?
L479[17:54:37] <Wobbo> congrats ;)
L480[17:54:42] <ping> Kenny, i said it wasnt a framework...
L481[17:55:05] <Kenny> you always find the negative in something...
L482[17:55:28] <Kenny> do you have such a low self-esteem you have to try and bring everyvody down to your leve;
L483[17:55:37] <Kenny> level*
L484[17:56:14] <ping> ...
L485[17:57:17] <ping> i always have to say something negative in something because all i hear is positive things
L486[17:57:33] <Wobbo> This is a fine line we are talking about, but saying framework might generate expectations. I changed it to module.
L487[17:57:33] <ping> most of what i say is positive
L488[17:57:46] <Kenny> so he called it a framework, so fucking what. let him call it what he wants, he wrote.....
L489[17:58:10] <Kenny> i don't see you posting any code like that
L490[17:58:14] <ping> a module is technically a physical object, but idgaf at this point
L491[17:58:57] <ping> OH and i figured out how it would be possible to emulate setfenv
L492[17:59:43] <ping> if you initialize a sandbox so that everything is loaded with a new table and it will be tracked in a weak table
L493[18:00:16] <ping> when doing setfenv you can modify the env that was already created
L494[18:02:52] <Wobbo> Did you test it?
L495[18:02:53] <ping> though you would probably have to do bytecode injection for some objects which requires loadstring to allow bytecode :/
L496[18:03:07] <ping> Wobbo, test wat
L497[18:03:21] ⇨ Joins: Bio|Ingame (~EiraIRC@188.113.81.176)
L498[18:03:28] <ping> le Bio
L499[18:03:34] <Wobbo> For setfenv?
L500[18:03:42] <ping> nop
L501[18:03:50] <Wobbo> Also, it is a module, that is how Lua calls its libraries.
L502[18:03:59] <Sangar> to clarify: there's no string.trim in lua, i think the reasoning i read on the mailing list was something along the lines of "there's so many different way to implement it with different ups and downs so we leave it to everyone to pick the implementation that suits their usecase best". but i thought it'd be useful to have, so i picked one of the implementations from the wiki and threw it into the text module.
L503[18:04:24] <Wobbo> Although the reference uses library, module and package interchangeably
L504[18:04:42] ⇨ Joins: Lunatrius (~Lunatrius@cpe-46-164-39-216.dynamic.amis.net)
L505[18:06:03] *** JoshTheEnder|Noms is now known as JoshTheEnder
L506[18:06:17] <Wobbo> In Lua 5.2, every function runs within its own environment, and you can't change that environment. So I don't think that you idea for setfenv will work, except for the functions that are in the chunk that you declared it in.
L507[18:06:41] <Kenny> Sangar: i didn't know which one you used so i wrote my own hehe
L508[18:07:26] <Kenny> it's 3 lines long :)
L509[18:07:51] <Kenny> function trim(s)
L510[18:07:51] <Kenny> return (s:gsub("^%s*(.-)%s*$", "%1"))
L511[18:07:51] <Kenny> end
L512[18:08:18] <Kenny> damn, i'm glad that worked :) thought i might get kicked for flodding hehe
L513[18:08:25] <Kenny> flooding*
L514[18:08:49] <Kenny> that strips white spaces from both ends of a string
L515[18:09:24] <Kenny> and i finally got my menu working and controling the platform :)
L516[18:09:58] <Wobbo> wouldn't return s:match("^%s*(.-)%s*$") work the same?
L517[18:10:19] <Kenny> no clue, got that from the wiki hehe
L518[18:10:35] <Wobbo> XD
L519[18:10:46] * Kenny is nowhere near as proficient in lua as you
L520[18:11:14] * Kenny is c-lua-less
L521[18:11:18] <Wobbo> Im not that proficient.
L522[18:11:25] <Kenny> ^
L523[18:11:30] <ping> i probably know more than Wobbo l_l
L524[18:11:34] <Wobbo> That are three programming jokes in one sentence
L525[18:12:43] <Wobbo> But Kenny, it is not important what you know, it is important what you achieve with it ;)
L526[18:13:06] <Wobbo> I have yet to write something that has to cope with an environment outside of the computer
L527[18:15:05] <Kenny> Wobbo, i don't think anyone will ever be able tol do that hehe
L528[18:15:42] <Kenny> we simply deal with the environment the best we can :)
L529[18:16:28] <Wobbo> I want to write fully autonomous robots that are embedded in their environment, and when I get my hands on a camera for OC, I will try it :P
L530[18:17:57] <Kenny> how good can you code in java?
L531[18:18:09] <Wobbo> Not that well
L532[18:18:53] <Wobbo> I learned OOP in Java, and I understand the concepts and the syntax of the language, but I don't know the exact specifics
L533[18:18:57] <Kenny> there was a mod put out by Kavaetor a while back called CCTV, that is exactly what it did. put a camera ikn the game
L534[18:19:08] <Kenny> i beleive he dropped it
L535[18:19:30] <Kenny> it was basically a wireless camera system
L536[18:19:36] <Wobbo> I want a camera that I can link to the computer, for image processing, and I actually meant the camera that Sangar made for CC ;)
L537[18:19:56] <Kenny> so port it from CC to OC
L538[18:20:05] <Sangar> that camera isn't a "real" camera, though :P in that it doesn't give you actual images ;)
L539[18:20:10] <Wobbo> I know
L540[18:20:43] <Sangar> i'm planning to port it as an example addon, once 1.2 is final. unless someone else wants to :P
L541[18:20:54] <Vexatos> http://www.minecraftforum.net/topic/1334653-147-cameracraft-23-take-photos-in-minecraft/
L542[18:20:56] <Wobbo> Might even be easier, otherwise I would have to build a large network with perceptrons to do image processing, now a simple classification network will do the job :P <- neural networks btw
L543[18:20:57] <Vexatos> Camera
L544[18:21:05] <Sangar> anyway, afk dinner
L545[18:21:19] <Kenny> Snagar, you might look into that old CCTV mod. possible the code could be adapted to use with OC
L546[18:21:24] <Wobbo> I am going as well, be back in an hour or two
L547[18:21:45] <Kenny> okey dokey
L548[18:25:57] <Vexatos> Wow
L549[18:26:03] <Vexatos> A real CCTV in Minecraft
L550[18:26:12] <Vexatos> showing through a superior screen :D
L551[18:40:17] <Kenny> well, Kavaetor's CCTV showed real time images from the camera, as does the rendering for the portals in Portal Gun
L552[18:40:32] ⇨ Joins: LordJoda (~lordjoda@178-26-182-118-dynip.superkabel.de)
L553[18:40:32] zsh sets mode: +o on LordJoda
L554[18:40:37] <Vexatos> Hi
L555[18:40:45] <LordJoda> ho
L556[18:40:51] <Vexatos> Hö
L557[18:40:57] <Kenny> who
L558[18:41:09] <Kenny> :)
L559[18:41:32] <Bio|Ingame> can i send a text message from CC to OC?
L560[18:41:38] <Vexatos> Yes
L561[18:41:42] <Vexatos> Via the relay
L562[18:41:47] <Bio|Ingame> trying to, but i can only send numbers
L563[18:41:50] <Bio|Ingame> for some reason
L564[18:42:43] <Bio|Ingame> hmm
L565[18:42:55] ⇦ Quits: Bio|Ingame (~EiraIRC@188.113.81.176) (Remote host closed the connection)
L566[18:43:01] <Biohazard> aaaaand fail
L567[18:43:19] <Vexatos> ?
L568[18:43:51] <Biohazard> wrong key combo
L569[18:43:53] <Biohazard> accidentally closed MC
L570[18:44:40] <Biohazard> mm, right. i didnt do anything wrong
L571[18:44:41] *** alekso56 is now known as alekso56_off
L572[18:44:59] <Biohazard> i just failed
L573[18:46:27] ⇨ Joins: Bio|Ingame (~EiraIRC@188.113.81.176)
L574[18:48:05] <Biohazard> woot, i did it :D
L575[18:52:11] *** alekso56_off is now known as alekso56
L576[19:02:05] ⇦ Quits: Bio|Ingame (~EiraIRC@188.113.81.176) (Read error: Connection reset by peer)
L577[19:03:49] <Biohazard> working on a way to use OpenPeripherals in OC through CC :p
L578[19:04:52] <Biohazard> meh
L579[19:07:47] *** AngieBLD|Off is now known as AngieBLD
L580[19:09:10] <AngieBLD> \
L581[19:09:13] <AngieBLD> \o *
L582[19:10:40] ⇨ Joins: Bio|Ingame (~EiraIRC@188.113.81.176)
L583[19:13:54] *** prassel|off is now known as prasselpikachu
L584[19:14:29] *** prasselpikachu is now known as prassel|off
L585[19:14:53] *** prassel|off is now known as prasselpikachu
L586[19:22:01] ⇦ Quits: Bio|Ingame (~EiraIRC@188.113.81.176) (Remote host closed the connection)
L587[19:24:36] *** prasselpikachu is now known as prassel|off
L588[19:24:50] *** prassel|off is now known as prasselpikachu
L589[19:25:15] ⇨ Joins: Bio|Ingame (~EiraIRC@188.113.81.176)
L590[19:28:35] *** alekso56 is now known as alekso56_off
L591[19:35:32] ⇦ Quits: Vexatos (~Vexatos@p5B31DD48.dip0.t-ipconnect.de) (Quit: Greetings from Pastry Fork, Inc. ✔)
L592[19:39:22] *** prasselpikachu is now known as prassel|off
L593[19:44:02] <Wobbo> And I'm back
L594[19:45:07] <LordFokas> Biohazard, what about 'porting' OpenPeripherals to OC or even better, convincing the dev to support both mods? :p
L595[19:45:26] <Bio|Ingame> i could try porting it later :p
L596[19:46:14] <Sangar> we asked in https://github.com/OpenMods/OpenPeripheral/issues/94 this issue how they'd stand to modifying op to support oc. let's see if there's an answer :P
L597[19:46:37] <Wobbo> Sangar, the error message when you don't have universal electricity installed mentions something about support for build craft and so on, what kind of support is this?
L598[19:46:53] <LordJoda> energy^^
L599[19:46:53] <Sangar> the one ue brings with it.
L600[19:47:03] <Sangar> i.e. you can use the power from those other mods, too
L601[19:47:15] *** prassel|off is now known as prasselpikachu
L602[19:47:46] <Wobbo> But I can't use an adapter to read the energy of an engine?
L603[19:48:13] <Sangar> the power converter should accept power from bc, ic2, te and ue if ue3 is installed.
L604[19:48:31] <LordJoda> adapter is not for energy
L605[19:48:34] <LordJoda> ah
L606[19:48:34] <LordJoda> sry
L607[19:48:36] <LordJoda> misread
L608[19:48:37] <LordJoda> no
L609[19:48:47] <Sangar> :P
L610[19:49:35] <Wobbo> That would be fun though, instead of using individual gates, have a computer manage a whole energy network :P
L611[19:51:33] <Sangar> not 100% sure i know what you mean, but i think we'd need separate power and networking cables for that, and it's way to late for that :P this is fully interwoven internally.
L612[19:52:04] <LordJoda> and additionaly UE wouldn't help for the api of the engines
L613[19:52:24] <Sangar> oh, LordFokas, I think i forgot to answer, but yeah, I'm aware of cc's portable computers ^^
L614[19:53:01] <Wobbo> I mean that you place an adapter next to an engine(not on the energy producing side, but maybe only the back or something) and that you can read its produced energy, stored energy and heat.
L615[19:53:42] <Wobbo> But if EU doesn't support that, then I guess it would be like implementing OpenPeripheral into the core of OpenComputers
L616[19:54:49] <Sangar> ah, you're not talking about the actual power supply logic but interacting with it as a peripheral/component?
L617[19:54:58] <Wobbo> Yes
L618[19:54:59] <Sangar> ue wouldn't be necessary for that to work.
L619[19:55:04] <Sangar> that's completely unrelated.
L620[19:55:31] <Wobbo> I don't known how all these API's work :P I only play the mods, I don't write them
L621[19:55:55] <Sangar> hehe
L622[19:56:17] ⇦ Quits: Bio|Ingame (~EiraIRC@188.113.81.176) (Remote host closed the connection)
L623[19:58:27] <LordJoda> but either with OP or in a different way, I definitly want to provide the functionality you mentioned^^
L624[19:58:52] <Wobbo> But Sangar, would it actually be possible to base the value returned by the camera on the texture of the block instead of its block id?
L625[19:59:10] <Wobbo> That would make for better generalisation and stuff for machine learning algorithms :)
L626[19:59:17] <Sangar> not really, because the server has no textures.
L627[19:59:30] <Sangar> there'd have to be some communication with the client
L628[19:59:34] <LordJoda> that's more a impossible^^
L629[19:59:39] <Sangar> but that then again depends on the client's texture pack
L630[19:59:43] <Wobbo> That is a same.
L631[20:00:14] <Wobbo> *shame
L632[20:00:29] <Wobbo> Because block id's can't be used for generalisation :(
L633[20:00:52] <Sangar> yeah, only very artificially
L634[20:00:57] <Sangar> rng ftw
L635[20:01:02] <LordJoda> you could use the unlocalized name and subid
L636[20:01:46] <LordJoda> (or at least I think^^ I don't know for what exactly^^)
L637[20:02:41] <Wobbo> I want to use a neural network that gets data from the camera and then classifies it as worth mining or not worthing mining
L638[20:03:01] <Wobbo> Or even better: as what kind of block it is, eg stone, dirt, coal ore
L639[20:03:02] <Sangar> as in: does it look like an ore block?
L640[20:03:08] <Wobbo> Yes
L641[20:03:28] <LordFokas> btw Sangar, how are we on multi-terminal mainframes? nothing yet?
L642[20:03:44] <LordJoda> hmm with access to the recipe library?^^
L643[20:03:48] <Sangar> yeah, that'd be pretty cool. but the only way to do that would be to somehow get the texture sample from the client.
L644[20:04:15] <Sangar> LordFokas: server rack is in, multiple servers, one portable terminal per server.
L645[20:04:16] <Wobbo> And because of the noisy data from the camera, a neural netwerk would be perfect, since they handle noise very well and can generalise over the training set
L646[20:04:42] <LordJoda> well basicly... the less you have of the ore the more likly it's relevant^^
L647[20:05:22] <Sangar> huh?
L648[20:05:25] <Wobbo> I do not want to use a normal database, only neural networks on the robot :P
L649[20:07:17] <Wobbo> Autonomous moving blocks that have a simple (biologically implausible) "brain" :)
L650[20:08:29] <LordJoda> well... I don't know if that works but you could look at the texture name (not sure if this is available on the server^^) and "hope" that the name contains ore^^
L651[20:09:23] <LordFokas> you can do better. Get the block id and meta, make an itemstack, and see if there's an entry in OreDict for that stack with 'ore' in it.
L652[20:09:39] <Wobbo> Use the name of the block as a source instead of the block id, I guess that would be possible… But I don't know, I don't mod
L653[20:10:48] <Sangar> but the whole point is not to do a plain lookup :P the idea is to have the block in the world, calibrate the robot to it by sampling snapshots of it and then using that for reference when "looking at" other blocks. or so i thought ^^
L654[20:11:14] <Wobbo> That is indeed the idea.
L655[20:11:23] <Wobbo> Train the robot to detect ores
L656[20:11:34] <Wobbo> Machine learning ftw!
L657[20:11:37] <LordJoda> but then you will need a database^^
L658[20:11:45] <LordJoda> (of some kind)
L659[20:12:01] <Sangar> well yes, you have to store the calibration data on the robot
L660[20:12:11] <LordFokas> then there's an even better way
L661[20:12:19] <Wobbo> A neural network is not a database :P It is a collection of units that are trained to classify inputs
L662[20:12:47] <Sangar> a database is something that stores data. a neural network is also data in some shape or form ;)
L663[20:13:06] <LordFokas> the more blocks of one kind you see, the less 'value' they have... it'd work like a database but it would evolve and learn over time...
L664[20:14:39] <Wobbo> Sangar, I learned one thing during Philosophy of cognitive science, and that is that definitions are the key in discussions :P I don't agree with your definition of database, that is what the argument is about.
L665[20:15:22] <Sangar> hah. well what's a database for you, then, out of curiosity?
L666[20:15:28] <LordJoda> your brain is a database as well...^^
L667[20:16:33] <Wobbo> To me, a database is like a sql database, a place where you store your data according to keys, the data is ordered and can easily be recalled using the correct key
L668[20:16:48] ⇨ Joins: Bio|Ingame (~EiraIRC@188.113.81.176)
L669[20:19:33] <Kenny> a neural network isn't a database, it is the conduit to the storage areas
L670[20:19:44] <Wobbo> Depends on your definition, if you include neural networks in a database, then yes, your brain is a database, because your brain is a large neural network
L671[20:19:55] <Sangar> i didn't say a neural network is a database
L672[20:20:20] <Wobbo> That last comment was for LordJoda btw
L673[20:20:27] <Sangar> i said that a neural network is data, with which i meant it can be broken down into a format that can be stored in a database
L674[20:20:52] <Kenny> my bad. but the neural network is actually the link to the databases, isn't it?
L675[20:21:49] <Kenny> the data is stored in cells and then accessed from each memory cell via a neural network
L676[20:22:14] <Wobbo> The data is stored in the weights and activation of each cell yes.
L677[20:22:28] <Wobbo> New input chance the activation, and therefore the output
L678[20:23:12] <Kenny> hey, i'm not as dumb as i thought i was :)
L679[20:23:13] <Wobbo> And if you are still learning, you use a learning rule to chance the weights.
L680[20:23:41] <Kenny> a person is learning right up to the day they die
L681[20:24:27] <Wobbo> An artificial neural network normally isn't, but then again, the learning rules are biologically implausible anyway :P
L682[20:25:10] <Kenny> gtg heading out to the store back after bit
L683[20:25:14] <Wobbo> Although there are some plausible ones.
L684[20:25:15] *** Kenny is now known as Kenny|AFK
L685[20:25:26] <Wobbo> The store, at 21:30? :P
L686[20:25:40] <Kenny|AFK> yep, store is open 24/7
L687[20:25:54] <Kenny|AFK> and it is 13:30 :P
L688[20:25:59] <Kenny|AFK> 15:30*
L689[20:26:22] <Wobbo> I know, you are across that large body of water we keep trying to keep of our land :P
L690[20:27:06] <Kenny|AFK> but there are 2 large bodies of water :P
L691[20:27:30] <Kenny|AFK> depends on which direction you go
L692[20:27:44] <Wobbo> We only try to keep one of our land :P
L693[20:28:06] ⇦ Quits: Bio|Ingame (~EiraIRC@188.113.81.176) (Remote host closed the connection)
L694[20:32:33] <LordJoda> well I think no matter what you are trying to achieve with neural networks you sill have to store the learned stuff... so that you can later compare your new input with the saved values... and this for me is a database
L695[20:33:01] <Wobbo> But you don't compare the learned instances with the saved values
L696[20:33:35] <Wobbo> at least not directly
L697[20:34:42] <LordJoda> but you still need it and have to access it some how
L698[20:34:49] <LordJoda> and also filter by relevance
L699[20:37:03] <Sangar> ok, lets put this another way: when you implement your neural network you'll use variables and most likely tables. it's not magic after all. if you plan to continue using that neural network and not create a new one each time you start your program (which is what we're talking about here) you'll store that stuff on disk somehow. in - dun dun dun - a database, for example.
L700[20:38:00] <LordJoda> and yes of course it's not a mysql database (or at least doens't have to) but excel also can be a database^^
L701[20:38:11] <Wobbo> It works like this, you present your new instance to the networks input layer. The input layer calculates its new activation, which is the input for the second layer. Then the second layer computes its activation, which is input for the third layer, and so on. Until you get to the activation of the output layer, which is your classification/action you have to perform/picture you wanted to recall/whatever. Normally you just use a whole lot of
L702[20:38:12] <Wobbo> matrix/vector calculations
L703[20:38:45] <Wobbo> Sangar, I thought we had persistence so I wouldn't need to save my data on a file :P
L704[20:39:01] <LordJoda> the other way round^^
L705[20:39:03] <Sangar> well if you're confident your program will never crash, of course :D
L706[20:39:09] <LordJoda> it's persistent because it can be stored^^
L707[20:39:32] <Wobbo> I mentioned a file :P
L708[20:41:17] <Wobbo> But like I said before, it is mostly dependent on definition. I think a database should have ordered data,
L709[20:41:29] <LordJoda> well that file would be the minecraft world save^^
L710[20:41:47] <Wobbo> Touche, that is true
L711[20:42:16] ⇦ Parts: Sangar (~Sangar@188-193-65-80-dynip.superkabel.de) ())
L712[20:42:23] ⇨ Joins: Sangar (~Sangar@188-193-65-80-dynip.superkabel.de)
L713[20:42:24] zsh sets mode: +o on Sangar
L714[20:44:10] *** prasselpikachu is now known as prassel|off
L715[20:47:16] <Wobbo> Anyway, I want another name for my module, anyway that has a good idea? :/
L716[20:57:29] ⇨ Joins: Bio|Ingame (~EiraIRC@188.113.81.176)
L717[20:58:45] ⇦ Quits: Bio|Ingame (~EiraIRC@188.113.81.176) (Client Quit)
L718[21:00:03] <Wobbo> Does anyone know a good reference for markdown?
L719[21:14:05] *** Kenny|AFK is now known as Kenny
L720[21:21:03] *** JoshTheEnder is now known as JoshTheEnder|Shower
L721[21:28:04] <Wobbo> Haha, my module now works in normal Lua :)
L722[21:29:12] <Sangar> as it should ^^ i suppose you found something for markdown by now?
L723[21:29:24] <Wobbo> Something, but not much
L724[21:29:55] <Wobbo> Also, I had to remove the checkArg, since that is not standard Lua
L725[21:30:14] <Sangar> ah right, checkArg.
L726[21:30:39] <Sangar> for markdown i usually refer to http://daringfireball.net/projects/markdown/syntax and https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet
L727[21:31:00] <Wobbo> thnx!
L728[21:31:42] <Sangar> np. usually more the latter since i only use markdown for readmes to show up nicely on github :P
L729[21:36:01] <Wobbo> What do you think I will use it for? :P
L730[21:36:30] <Wobbo> If I need to markdown normal documents I would use LaTeX, because turing complete typesetting system :P
L731[21:44:57] <Kenny> to mark yourself down?
L732[21:45:19] <Wobbo> Off course! what else?
L733[21:45:34] <Kenny> yep, you're off course :)
L734[21:45:58] <Wobbo> :P English is my bestestest language
L735[21:46:17] <Kenny> it should be mine to but i screw it up all the time lol
L736[21:46:22] <Kenny> too*
L737[21:46:38] <Kenny> that's cause i speak Hillbilly :)
L738[21:48:03] <Kenny> and for the record, to those of you who make mistakes with english, i'm just joking around with you when i comment about it :)
L739[21:48:23] <Wobbo> I know :P
L740[21:49:08] <Kenny> yeah, but i wanted to make sure all knew, wobbo. It helps to stop arguments and bad fellings later on
L741[21:49:35] <Kenny> i have learned one thing in my life and that is to respect another's culture and ethnic origin
L742[21:50:03] <Kenny> it has been my mainstay for keeping out of trouble and understanding other people
L743[21:50:25] <Kenny> also one of the reasons i love irc....
L744[21:50:41] <Kenny> you get to meet people from all over the world :)
L745[21:51:53] <Kenny> besides, i'm just an overgrown kid :)
L746[21:52:47] <Kenny> hey Wobbo, do you know much about using the redstone features in OC?
L747[21:53:03] <Wobbo> Not really, haven't played around with that yet
L748[21:53:24] <Wobbo> But I believe you can set the analog strength of a signal
L749[21:53:28] <Kenny> i want to find a way so that if a color is active it will go inactive
L750[21:53:41] <Wobbo> Ask Sangar :P
L751[21:53:42] <Kenny> but i need to do it with jst one line of script
L752[21:53:53] <Wobbo> why just one line?
L753[21:54:15] <Kenny> i'm using it in my menu and i went it so that if i select a color and it is on it will turn off
L754[21:54:44] <Wobbo> also, wouldn't that be something like redstone.set(math.min(0, (redstone.get-15)))
L755[21:55:00] <Wobbo> Where redstone.set would set the value, and redstone.get would get the value
L756[21:55:11] <Kenny> but i also want it to work to turn it o if it is off
L757[21:55:16] <Kenny> it on*
L758[21:55:32] <Kenny> basically ORing the value
L759[21:55:37] <Kenny> i think
L760[21:55:47] <Wobbo> Ah, I don't think you can do that with one line, unless you use semicolons between statements.
L761[21:55:56] <Wobbo> Although, this is lua, you can leave those out
L762[21:56:15] <Sangar> event.listen("redstone", function() if component.redstone.getBundledInput(sides.???, colors.???) == ??? then computer.shutdown() end end) possibly (untested)
L763[21:57:03] <Kenny> and i made a mistake in my question
L764[21:57:15] <Kenny> i mean working with bundeled cables
L765[21:57:38] <Kenny> but Sangar knew hehe
L766[21:58:38] <Wobbo> Sangar, Kenny, could you read the read me for COLua and see if it makes sense? including grammar wise? MacVim doesn't have spellcheck
L767[21:58:45] <Wobbo> https://github.com/Wobbo/COLua
L768[21:58:49] <Kenny> basically all that needs changed is the signal strength
L769[22:02:02] <Kenny> Wobbo: I see 5 errors. mostly grammatical but 2 i know are spelling
L770[22:02:17] <Wobbo> Can you tell me where they are?
L771[22:02:20] <Kenny> i'll copy the article and make the corrections thjen post to paste bi
L772[22:02:30] <Wobbo> Alright
L773[22:05:45] <Kenny> http://pastebin.com/QiVWZUYh
L774[22:06:02] <Wobbo> thnx!
L775[22:06:12] <Kenny> now to get exactly which line numbers :)
L776[22:06:15] <ping> \o/
L777[22:06:31] <Wobbo> mvimdiff :P
L778[22:06:45] <Kenny> ok
L779[22:07:15] <Kenny> in the first spot you had the ( you ) instead of (your )
L780[22:07:34] <Kenny> in another spot you has namesas instead of names as
L781[22:07:51] <Kenny> at the end you had mispelled convenience
L782[22:08:18] <Kenny> and in one spot you referred to the _ as him where the correct usage should be it
L783[22:08:36] <Kenny> can't think of the last one right off hand
L784[22:08:54] <Kenny> but it was also a grammatical erro not spelling
L785[22:09:11] <Kenny> error*
L786[22:09:26] <Kenny> see even i screw up the english language lol
L787[22:09:49] *** JoshTheEnder|Shower is now known as JoshTheEnder
L788[22:10:41] <Wobbo> thanks for reading it ;)
L789[22:10:46] <Kenny> but for english not being your native tongue, you did a damn good job :)
L790[22:11:24] <Kenny> no prob. i help where i can
L791[22:12:20] <Kenny> would this work for setting the color with just one line: setBundledOutput(sides.back, colors.red, (0 ? 200))
L792[22:12:45] <Wobbo> what does the (0 ? 200) do?
L793[22:12:55] <Wobbo> Do you mean if 0 then 200?
L794[22:12:56] <Kenny> so that if it is 0 strength it sets it to 200, if 200 it sets it to 0
L795[22:13:04] <Wobbo> ah.
L796[22:13:07] <Kenny> 0 (or) 200
L797[22:13:29] <Wobbo> Can it only be 0 or 200 or all kinds of values in between?
L798[22:13:31] <Kenny> 0 would turn it off and 200 turn it on
L799[22:13:40] <SuPeRMiNoR2> vdc
L800[22:13:51] <Kenny> the 200 could be any value but i use 200
L801[22:14:24] <Kenny> the 0 and 200 are the signal strength, the larger the number the further it will travel
L802[22:14:46] <Wobbo> Because 0 ? 200 in that notation won't work, but if you rewrite that to valid Lua, the it would
L803[22:14:49] <Wobbo> *then
L804[22:15:04] <Kenny> that;s what i though lol
L805[22:15:09] <Kenny> that's*
L806[22:15:13] <Kenny> thought*
L807[22:16:55] <Kenny> how about if i used the math statement inside of that area like this: setBundledOutput(sides.back, colors.red, (math.max(0, 200)))
L808[22:17:24] <Wobbo> math.max would always return 200 in this case
L809[22:17:32] <Kenny> not sure what all math functions there are but i believe there might be one to fit
L810[22:17:49] <Wobbo> you have to do something like: (input == 0) and 0 or 200
L811[22:17:49] <Wobbo> where input is the current input
L812[22:17:55] <Kenny> this i knew, wasn;t sure of the math functions so i just picked one hehe
L813[22:21:02] <Kenny> how about this: setBundledOutput(sides.back, colors.red, (math.or(0, 200)))
L814[22:22:14] <Wobbo> There is no math.or. what are you trying to do using that?
L815[22:22:40] *** prassel|off is now known as prasselpikachu
L816[22:25:42] <Kenny> 0 or 200. if 0 then 200. if 200 then 0
L817[22:26:04] *** prasselpikachu is now known as prassel|off
L818[22:26:23] <Wobbo> Then you will at least need a variable to compare with, like the example I gave with (input == 0) and 0 or 200
L819[22:27:09] <Kenny> but how would i unclude it in that line where the math part is?
L820[22:27:30] <Wobbo> instead of the math part, you use that snippet
L821[22:28:50] <Kenny> going to test it hehe
L822[22:29:45] <Kenny> i about 3 minutes. takes MC that long to load lol
L823[22:29:50] <Kenny> in*
L824[22:32:44] *** SuPeRMiNoR2 is now known as SuPeRMiNoR2|Away
L825[22:35:11] *** Biohazard is now known as `
L826[22:35:49] <Kenny> that didn't work :(
L827[22:36:07] <Wobbo> Did it error or something?
L828[22:36:22] <Wobbo> oh wait, switch the 0 and the 200 in the and or part
L829[22:36:33] <Wobbo> so leave (input == 0)
L830[22:37:04] <Kenny> WOBBO, YOU WON'T BELIEVE THIS
L831[22:37:09] <Kenny> oop
L832[22:37:12] <Kenny> oops*
L833[22:37:26] <Kenny> all i had to do was put (0 or 500)
L834[22:38:07] <Wobbo> What? that, doesn't make any sense. now, when the input is 0, you make the output 0
L835[22:38:09] <LordJoda> kenny that can't work
L836[22:38:24] <Kenny> you right, i was wrong
L837[22:38:29] <LordJoda> you compare two fixed values against each other
L838[22:39:03] <Kenny> but i tried the (input == 0) and 0p or 500. it didn't owrk either
L839[22:39:04] <LordJoda> if you want to make this based on the imput you have to compare the input against a value
L840[22:39:21] <LordJoda> you have to set the input to the current input
L841[22:40:14] <LordJoda> input = redstone.getBundledInput(sides.back,colors.red) (where redstone is the variable of the component)
L842[22:41:29] <SpiritedDusty> woah whoever made that OC trailer did an amazing job
L843[22:41:42] *** SuPeRMiNoR2|Away is now known as SuPeRMiNoR2
L844[22:43:24] <LordJoda> ore all in one redstone.setBundledOutput(sides.back,colors.red,(redstone.getBundledInput(sides.back,colors.red)==0) and 255 or 0)
L845[22:43:27] <Kenny> ok. will try that :)
L846[22:44:39] <LordJoda> SpiritedDusty: that was DaKaTotal! he also edited the tutorials for me ;)
L847[22:44:54] <SpiritedDusty> awesome
L848[22:55:00] <Kenny> thany you, LordJoda, the way you did it workd fine :)
L849[22:55:05] <Kenny> worked*
L850[22:57:15] <LordJoda> you're welcome
L851[22:57:37] <LordJoda> (finaly a lua related youestion I understood xD)
L852[22:57:50] <LordJoda> *question ... OK time for bed
L853[22:58:03] <LordJoda> night...
L854[22:58:14] ⇦ Quits: LordJoda (~lordjoda@178-26-182-118-dynip.superkabel.de) ()
L855[23:02:46] *** JoshTheEnder is now known as JoshTheEnder|BackInTheEther
L856[23:08:55] <Kenny> ok. that was tghe final touch on my network menu :)
L857[23:08:58] <Kenny> the*
L858[23:09:15] <Kenny> and them menu is generic, anyone can use it hehe
L859[23:09:44] <Wobbo> Post it on the forum ;)
L860[23:10:37] <Wobbo> Anyway, I am going as well
L861[23:10:41] <Wobbo> Speak you all later!
L862[23:15:03] *** SuPeRMiNoR2 is now known as SuPeRMiNoR2|Away
L863[23:15:10] <Kenny> nite Wobbo
L864[23:15:29] <Kenny> and thanks for your help
L865[23:15:57] <Kenny> Sangar, thank you also. :)
L866[23:16:54] <Sangar> ah, you got it working? nice :)
L867[23:17:07] <Kenny> http://pastebin.com/U9PjKNm4
L868[23:17:21] <Kenny> that is the code. and it works perfectly now :)
L869[23:17:47] <Kenny> i pruned your edit.lua code to fit what i needed
L870[23:18:28] <Sangar> glad it served as a useful basis ;)
L871[23:18:56] <Kenny> :)
L872[23:19:21] <Kenny> i can now fully control the platform from my base :)
L873[23:19:33] <Sangar> congratulations!
L874[23:20:21] <Kenny> now for my next trick. to set the platform code up to send a signal back to the base informing you of what stage of progress it is in hehe
L875[23:20:29] <Kenny> thank you :)
L876[23:20:45] <Sangar> good luck with that! i'll say goodnight for today, too. see you tomorrow :)
L877[23:20:53] <Kenny> nite :)
L878[23:21:06] ⇦ Quits: Sangar (~Sangar@188-193-65-80-dynip.superkabel.de) (Quit: Leaving.)
L879[23:51:05] <ping> i am the walrus
<<Prev Next>> Scroll to Top