Open in new window / Try shogun cloud
--- Log opened Wed Apr 09 00:00:14 2014
-!- HeikoS [~heiko@] has joined #shogun00:01
-!- mode/#shogun [+o HeikoS] by ChanServ00:01
-!- kislay [~kislay@] has joined #shogun00:09
-!- HeikoS1 [~heiko@] has joined #shogun00:11
-!- HeikoS [~heiko@] has quit [Ping timeout: 240 seconds]00:11
-!- HeikoS1 [~heiko@] has quit [Ping timeout: 240 seconds]00:17
-!- HeikoS [] has joined #shogun00:27
-!- mode/#shogun [+o HeikoS] by ChanServ00:27
-!- HeikoS [] has quit [Client Quit]00:31
-!- rho_ [~quassel@] has quit [Read error: Connection reset by peer]00:47
lisitsynthoralf: hey00:47
thoralfHey lisitsyn00:47
lisitsynthoralf: I see some singleton issue :)00:47
thoralfYeah. :)00:48
thoralfI opened the battle.00:48
thoralfWanna join? ;)00:48
lisitsynthoralf: actually we can go ahead and just make shogun itself instantiable00:49
lisitsynrun multiple shoguns :D00:49
thoralfYeah, that's true.00:49
lisitsynwell that's natural extension00:49
thoralfWe would loose that.00:49
lisitsyneverything that's single will get multiple00:49
lisitsynsomebody wise should have said that before I bet00:49
lisitsynlike karl marx haha00:50
lisitsynOpenSSL is written by monkeys
lisitsyncan't resist to share00:51
lisitsynah and if anybody is interested I dumped my c++ssy brain again00:53
thoralflisitsyn: The monkey-story is great.01:00
lisitsynthoralf: yeah they sucked a big time01:02
lisitsynour bugs lead to wrong nothing01:03
lisitsynbut their bugs are like important :)01:03
thoralfYeah. :)01:03
thoralfBut really, I still don't know why every object needs to have all this crap.  I never used serialization *or* model-selection *or* parameter framework to compare objects.01:04
lisitsynthoralf: they should have one thing01:04
lisitsynshogun instance ;)01:04
lisitsynwhich has vresion parallel etc01:04
thoralfI was about to fork shogun and rip it of.01:05
lisitsynthoralf: it is a known syndrome01:05
thoralfOr making it de-configurable by -DDISABLE_PARAMETER and -DDISABLE_MODEL_SELECTION.01:05
thoralfI decided against forking, because I want better code... not worse. ;)01:05
lisitsynit is called shogun forking disorder01:06
lisitsynsometimes referred as shogunophrenia01:06
thoralfYou're suffering this as well?01:07
lisitsynwell I am mentally disabled since I got ill01:07
lisitsynsometimes I walk into walls01:08
lisitsynok actually yes everybody in shogun wanted to rewrite this f'ing s't01:08
thoralfHmm.  So why are we (everybody except me) putting more sh't in instead of removing it?01:09
thoralfWell, wiking is good in consolidating I guess.01:10
lisitsynhave you seen my commits lately? ;)01:10
thoralfAnd cleaning up.01:10
thoralflisitsyn: You're still committing?01:10
thoralfI thought you're just hanging up here because you're used to. :D01:10
lisitsynnot really :D01:10
lisitsynnot really to both01:11
thoralfAre you using shogun somewhere?01:11
lisitsynno :)01:11
lisitsynthat's a major point01:11
lisitsynthoralf: I have nothing to use it for01:12
lisitsynthoralf: but I am not just hanging up I am just sloooooow01:12
thoralfThat's a bad starting point for discussing improvements. ;)01:12
lisitsynI am sloowly getting to some solution for modular shogun01:13
lisitsynthat's what I devote my life for hahah01:13
lisitsynthoralf: I use it pretty rarely but nothing advanced01:13
lisitsynwell though I have some vague understanding what our users need01:14
lisitsynso you are mostly right ;)01:14
thoralfSo does it mean you're joining the battle to improve something that has no effect on you? ;)01:15
lisitsynthoralf: I am pretty far away from all the battles01:15
lisitsynthoralf: well I have some idea how software should look like - that's what I am based on01:16
thoralfA good-code based life form? :)01:17
thoralfI know carbon-based life forms... they don't perform well.01:17
lisitsynthoralf: I am not sure what you mean ;) I don't put my opinion on things that affect user experience01:19
lisitsynif someone says X would be better I would believe that01:19
thoralfHmm.  Interesting approach.01:20
thoralfSaves a lot of hassle.01:20
lisitsynso I believe I am not that harmful ;)01:20
-!- parijat [671b082a@gateway/web/freenode/ip.] has quit [Quit: Page closed]01:21
thoralfI should adapt this.01:22
thoralfCool thing.01:23
thoralfWill try this out tomorrow at work. :D01:23
-!- Khalednasr [~khalednas@] has quit [Quit: Leaving]02:07
-!- HeikoS [~androirc@] has joined #shogun02:41
-!- mode/#shogun [+o HeikoS] by ChanServ02:41
-!- thoralf [] has quit [Ping timeout: 240 seconds]02:59
-!- zxtx [] has quit [Ping timeout: 240 seconds]03:49
-!- mode/#shogun [+o sonney2k] by ChanServ03:49
-!- soumyaC [uid15286@gateway/web/] has quit [Quit: Connection closed for inactivity]04:45
-!- zxtx [] has joined #shogun04:56
-!- zxtx_ [] has joined #shogun05:27
-!- zxtx__ [] has joined #shogun05:35
-!- zxtx__ [] has quit [Remote host closed the connection]05:36
-!- zxtx__ [] has joined #shogun05:40
-!- zxtx__ [] has quit [Client Quit]05:40
-!- zxtx_ [] has quit [Quit: ZNC -]05:41
-!- zxtx_ [] has joined #shogun05:42
-!- zxtx [] has quit [Quit: Leaving]06:14
-!- zxtx [] has joined #shogun06:15
-!- zxtx [] has quit [Client Quit]06:16
-!- zxtx_ [] has quit [Quit: Strong teeth for a strong nation]06:22
-!- zxtx [] has joined #shogun06:23
-!- kislay [~kislay@] has quit [Remote host closed the connection]06:28
-!- kislay [~kislay@] has joined #shogun06:29
-!- kprah [67157d55@gateway/web/freenode/ip.] has joined #shogun06:48
-!- kprah [67157d55@gateway/web/freenode/ip.] has quit [Ping timeout: 240 seconds]06:53
-!- kislay [~kislay@] has quit [Remote host closed the connection]07:02
-!- pl8787 [9fe22b60@gateway/web/freenode/ip.] has joined #shogun08:39
lisitsynHeikoS: hey09:19
-!- kislay [~kislay@] has joined #shogun09:19
lisitsynHeikoS: it seems we have some weight, they always give us what we want :D09:20
-!- kislay [~kislay@] has quit [Ping timeout: 240 seconds]09:45
-!- thoralf [] has joined #shogun09:48
-!- thoralf [] has quit [Ping timeout: 240 seconds]10:00
-!- soumyaC [uid15286@gateway/web/] has joined #shogun10:04
sonne|worklisitsyn: yeah we are a fat cow that cannot be stopped10:34
lisitsynsonne|work: a fat cow on speed10:34
sonne|workyeah magic potion overdose10:35
-!- lisitsyn [~lisitsyn@] has quit [Ping timeout: 246 seconds]10:53
-!- lambday [67157f54@gateway/web/freenode/ip.] has joined #shogun11:38
-!- HeikoS1 [~heiko@] has joined #shogun11:39
lambdayHeikoS1: hi11:39
lambdayI was just going to mail you and Dino..11:39
-!- HeikoS1 [~heiko@] has quit [Ping timeout: 250 seconds]11:43
-!- HeikoS1 [] has joined #shogun11:59
lambdayHeikoS1: hi.. there?12:03
-!- HeikoS2 [~heiko@] has joined #shogun12:04
-!- HeikoS1 [] has quit [Ping timeout: 246 seconds]12:04
-!- lisitsyn [] has joined #shogun12:05
lisitsynHeikoS HeikoS2 !12:05
-!- HeikoS2 [~heiko@] has quit [Ping timeout: 240 seconds]12:08
-!- HeikoS1 [] has joined #shogun12:22
-!- shogun-notifier- [] has joined #shogun12:27
shogun-notifier-shogun: Wu Lin :develop * 39c3e90 / / (6 files):
shogun-notifier-shogun: add the helper function for unit test12:27
shogun-notifier-shogun: Wu Lin :develop * 6181673 / / (2 files):
shogun-notifier-shogun: fix12:27
shogun-notifier-shogun: Wu Lin :develop * 8160ed1 / src/shogun/mathematics/Math.cpp:
shogun-notifier-shogun: minor fix12:27
shogun-notifier-shogun: Heiko Strathmann :develop * 59e9f13 / / (7 files):
shogun-notifier-shogun: Merge pull request #2115 from yorkerlin/develop12:27
shogun-notifier-shogun: a helper function for unit test12:27
-!- newlido [~quassel@] has joined #shogun12:46
-!- PirosB3 [] has joined #shogun12:48
lisitsynwe need kaggle team12:54
lisitsynHeikoS: wiking: besser82: lambday: sonne|work: we need kaggle team!12:54
lambdaylisitsyn: who's competing? :-o12:55
wikinglisitsyn: for which task?12:56
lisitsynwiking: any12:57
wikingwe cannot do that ;P12:58
lisitsynwell small steps12:58
lisitsynwe can just start from these simple test tasks12:58
lisitsynthat's the way we can improve our API12:58
HeikoS1lisitsyn: I agree :)13:00
wikinglisitsyn: let's start a python notebook ;)13:00
wikingfor the task13:01
wikingthat would be the best i think13:01
HeikoS1wiking: I agree :)13:01
wikinglisitsyn: new repo?13:04
wikingshogun-kaggle ?13:04
lambdaysounds great!13:05
lisitsynlet me create that13:05
lisitsynHeikoS: wiking: besser82: lambday: sonne|work: ok and another thing - we have to get distributed13:06
wikinglisitsyn: hah u were faster :)13:06
wikinglisitsyn: what do u mean? :)13:06
wikinglisitsyn: btw we would need a team as well13:07
wikingi mean on kaggle13:07
wikingi have a kaggle account13:07
wikinganybody else?13:07
lisitsynI have13:07
lambdayI do13:07
lisitsynhmm guys13:07
lisitsynjust an idea13:07
lisitsyncan we create some roles in our team?13:07
lisitsynhmm e.g. HeikoS knows about X13:08
lisitsynand you wiking know about Y13:08
lisitsynso we delegate responsibilitie13:08
lisitsynI have vague idea but want to share13:08
lisitsynwiking: ok actually may be we should denote maintainers for modules13:09
lisitsynwhat do you think about that?13:09
wikingsounds like a plan13:09
wikingbtw anybody has a fucking dashboard on kaggle? )13:10
lisitsynI mean I should be responsible for multiclass things13:10
lisitsynand everybody should kick me to care about that13:10
wikingyeah that'd be good13:10
lisitsynokay may be we can go on later13:10
wikingso that we dont have scary merges13:10
lisitsynI have no clue what's the dashboard on kaggle13:10
wikingme neither13:11
wikingok fuck13:12
wikingi've found it :D13:12
wikinganybody care to give me his kaggle account?13:13
wikingor rather the email addr u use for kaggle?13:14
lambdaywiking: mine is heavensdevil6909@gmail.com13:14
lambdayrahul-de is the username13:14
wikinglisitsyn: ping?13:14
lisitsynmy login is no-idea13:14
lisitsynjust a sec13:14
wikinglisitsyn: email u used for kaggle13:14
lisitsynI feel idiot when clicking forgot username13:15
wikinglambday: u should receive an email13:15
lambdaygot it13:15
lisitsynwiking: lisitsyn.s.o@gmail.com13:15
wikinglisitsyn: sent the invite13:15
wikingseems we cannot have permanent teams13:15
wikingonly per competition teams13:15
wikinglisitsyn: yeah seems like13:16
lambdayholy crap that's a long list of rules13:16
wikingheheh accept it13:16
lambdayyeah did :D13:16
wikingok so now we have a team13:16
wikingand we can do submissions13:16
lambdayonly the outputs are to be submitted iirc13:18
wikingso now the task is pretty easy13:18
lisitsynyeah win it13:18
lisitsynthat's the easy part13:18
wikingi mean read in file13:18
wikingand the output file creator13:18
wikingthat's like step -113:18
wikingand then we'll see the rest13:18
wikingbtw any ideas of the structure for the repo ?13:19
wikinglike each competition a separate directory?13:19
wikingand the data should be always like13:19
wikingcompetiton-name/data directory13:19
wikingsince we are not allowed to distribute the data13:19
lisitsynuhmm github will kill us13:20
lisitsynif we put data13:20
wikingso everybody has to download that for ourselves13:20
wikinglisitsyn: nana we are not allowed i think13:20
lambdaybtw why notebook? I mean the data is usually *H-U-G-E*..13:20
lisitsynwiking: yeah we are not allowed as well13:20
wikinglambday: well the notebook was just for having a great way to present our solution already13:20
wikingso it's not just messy code13:20
wikingbut somebody can right away like check the whole solution13:20
wikingof course it'll make things much more complicated13:21
wikingso maybe it's not the good idea13:21
wikingas honestly coding and doing experiments with a notebook13:21
wikingi think is a bit pain...13:21
lambdaywe need to submit multiple solutions with different approaches..13:22
lambdayand the best one is our score13:22
wikinglambday: well that's easy13:22
wikingthat'll put us somewhere on the leaderboard already :PPP13:22
lisitsynah guys13:23
lambdaydoesn't matter13:23
wikingyeah that's what i was about to ask13:23
lisitsynhmm matters13:23
wikinggo hardcore and do everything in c++13:23
wikingor be more subtle and python13:23
wikingyeah i'm for python as well13:23
lambdaywill take ages to process GBs of data13:23
wikinglambday: where do u see the gigs of data?13:24
lisitsyn10 mb13:24
lisitsyn5.63mb train13:24
lisitsyn2.02 test13:24
lambdaylast competition I participated in had 500MB compressed data13:24
lisitsynthat's not big data13:24
lambdaythis one is easy then :D13:24
lambdaypython +113:24
wikingl-rw-r--r-- 1 wiking staff  46M Feb 18 09:37 train.csv13:25
lisitsynI told you zip13:25
wikingso the first thing we need to do is fix the readline :)))))13:25
lisitsynI can start with IO actually13:25
HeikoS1just talked to dino, who is also interested13:25
lisitsynHeikoS1: are you in?13:26
-!- sejDino [] has joined #shogun13:26
lisitsynhey sejDino13:26
wikingok please register on kaggle and give me email addr that u used for registering on kaggle.com13:26
wikingso i can invite u guys to the team13:26
lambdaysejDino: hi :)13:26
HeikoS1lisitsyn: yes I would like to join this stuff13:26
HeikoS1good way to make shogun more usable for some more applied things :)13:26
lisitsynokay employ more guys and we will win13:27
HeikoS1I guess we will come up with a list of things that would be useful to have and discover loads of bugs ;)13:27
lisitsynwe need a tracker13:29
lisitsynto distribute tasks and so on13:29
lisitsynwho's up to use github?13:29
wikinglisitsyn: github/issues and create a new label called kaggle?13:30
wikingor since it's a different repo13:30
wikingwe can do that there13:30
lisitsyncreated milestone13:30
lisitsynand label13:30
wikingand if we need to fix a bug within shogun because we found it because of kaggle task we can still label it kaggle13:31
wikingso that we know what might be a priority bug to fix13:31
wikingand for later statistics13:31
wikingto see how many bugs we actually found/fixed because of kaggling13:31
wikinglisitsyn: sounds like a plan13:31
sejDinoso is the plan to go for allstate challenge or risky business or both? :)13:32
wikingsejDino: we cannod to risky business13:32
wikingas it's only for master members of kaggle13:32
wikingand none of us has that XP points on kaggle :P13:33
wikingsejDino: but we can do other 'educational' task as well13:33
sejDinoI see - oh, well - now we'll start building those XP pts quickly :)13:33
wikingjust to promote shogun13:33
wikinglisitsyn: is on fire13:33
sejDinothat sounds like a good idea as well13:33
lisitsyndump your mind here13:34
lisitsynwho's up describing the input /output data?13:34
lisitsynin the #213:34
lisitsynsooo whoo13:35
lisitsyndo we need a cluster?13:35
wikinglisitsyn: no ... worst case we use fatbot :P13:36
wikingteh amount of data is really not so much13:36
lisitsynwiking: want to describe dataset?13:36
wiking665250 data/train.csv13:36
wiking-1 because it has header13:36
wikinglisitsyn: yeah sure i'm up for that13:36
lisitsynsejDino: HeikoS: HeikoS1: you are scientific guys13:38
lisitsynso waiting your input
HeikoS1lisitsyn: happy to do :) Ill talk to sejDino a bit later today and then well give some output13:39
lisitsynHeikoS: assigned you responsible for this issue ;)13:39
sejDinolisitsyn: yep, will work on it :)13:39
lisitsynok that's going much funny now13:40
sejDinoit seems like an interesting problem actually - each customer samples a bunch of these "options" and then they pick one of those (or a new one)13:41
lisitsynHeikoS1: okay lets organize it this way13:41
sejDinoso it's not really a standard classification/regression task13:41
lisitsynwe discuss it in #213:41
lisitsynthen everything that is worth trying13:41
lisitsynis forked to a new task13:41
sejDinolisitsyn: sounds good13:42
lisitsynsejDino: cool thanks13:42
lisitsynlambday: mind to start notebook?13:43
lisitsynor other words13:44
lisitsynwant to be responsible for notebook?13:44
lambdaylisitsyn: what should we start with?13:44
lambdayyeah I can do that13:44
lisitsynlambday: hmm okay actually13:44
lisitsynyou could create some draft13:44
lisitsynand make sure everybody can work on notebook in one click13:45
wikinglambday: use the template and put it in shogun-kaggle/allstate13:45
lisitsynso makefile or sth like that13:45
wikinglambday: and u can have the assumption that the data is in shogun-kaggle/allstate/data13:45
lisitsynI want to organize it that way13:45
lisitsynso we have some 'library'13:45
lisitsynthat is used in notebook13:46
wikinglisitsyn: yeah13:46
lisitsynso we can hide some routine things13:46
lisitsynthat's it13:46
wikinglisitsyn: yeah i think all the .py + ipynb should be in shogun-kaggle/allstate13:46
wikingand then u can from . import load_dataset13:46
lisitsynokay will be back a bit later13:47
wikingin the notebook13:47
wikinglisitsyn: thing is though13:47
wikinglisitsyn: this dataset is more or less a timeline13:47
wikinglisitsyn: so actually a pandas dataframe would be the best option to store the data ;)13:47
wikingnot CFeatures of any kind13:48
wikingalthough this is just the first thought i had now looking at the dataset13:48
-!- HeikoS1 [] has quit [Ping timeout: 246 seconds]13:51
pl8787hi, see issue Dose any one has any suggestion?13:51
-!- newlido [~quassel@] has quit [Ping timeout: 246 seconds]13:53
pl8787I think add a subclass of CFeatures may solve this problem. Such as CIndexFeatures13:53
pl8787If CIndexFeatures pass in CCustom::init, we just change the subset of the kernel matrix, and then get_kernel_matrix will return the right value.13:55
-!- HeikoS1 [~heiko@] has joined #shogun14:18
-!- sejDino [] has left #shogun []14:25
-!- PirosB3 [] has quit [Quit: PirosB3]14:36
-!- HeikoS1 [~heiko@] has quit [Ping timeout: 246 seconds]14:43
-!- HeikoS1 [] has joined #shogun14:58
-!- PirosB3 [] has joined #shogun15:23
-!- shogun-notifier- [] has quit [Quit: transmission timeout]15:27
-!- kislay [~kislay@] has joined #shogun15:30
-!- HeikoS1 [] has quit [Read error: Connection reset by peer]15:30
-!- newlido [~quassel@] has joined #shogun15:47
-!- lisitsyn [] has quit [Read error: Connection reset by peer]16:00
-!- lisitsyn [] has joined #shogun16:01
-!- pl8787 [9fe22b60@gateway/web/freenode/ip.] has quit [Quit: Page closed]16:07
-!- lisitsyn [] has quit [Quit: Leaving.]16:25
-!- prams [~pratheekm@] has joined #shogun17:13
-!- newlido [~quassel@] has quit [Remote host closed the connection]17:27
-!- prams [~pratheekm@] has quit [Ping timeout: 246 seconds]17:42
-!- dhruv13j [dhruv13j@gateway/shell/bnc4free/x-zivjvwoyvehjepue] has joined #shogun18:06
-!- lisitsyn [~lisitsyn@] has joined #shogun18:07
-!- PirosB3 [] has quit [Quit: PirosB3]18:25
-!- PirosB3 [] has joined #shogun18:26
-!- PirosB3 [] has quit [Client Quit]18:29
-!- kislay [~kislay@] has quit [Quit: Leaving]18:36
@besser82wiking, ping?18:43
-!- kislay|exams [~kislay@] has joined #shogun18:48
-!- khalednasr [~k.nasr92@] has joined #shogun18:56
-!- kislay|exams [~kislay@] has quit [Read error: Connection reset by peer]19:23
-!- pl8787 [9fe22b60@gateway/web/freenode/ip.] has joined #shogun19:27
-!- lambday [67157f54@gateway/web/freenode/ip.] has quit [Ping timeout: 240 seconds]19:38
-!- zxtx [] has quit [Quit: Strong teeth for a strong nation]19:57
-!- zxtx [] has joined #shogun19:58
wikingkhalednasr: thnx for joinng the pr review process20:05
khalednasrwiking, no problem, I'm happy to participate :)20:06
wikingkhalednasr: u can join as well the kaggle team if u fancy and have time :)20:07
khalednasrwiking, there's a kaggle team? :)20:07
@besser82wiking, WTF is kaggle?!?20:08
wikingkhalednasr: we've just started today20:08
wikingbesser82: kaggle.com20:08
@besser82wiking, thx!  Will have a look  ;)20:09
khalednasrwiking, do you guys have a specific competition in mind?20:12
wikingkhalednasr: we've started with allstate20:14
khalednasrwiking, thanks for inviting me! I'll take a look at it20:17
-!- khalednasr [~k.nasr92@] has quit [Quit: Leaving]20:32
-!- Khalednasr [~khalednas@] has joined #shogun20:36
-!- Khalednasr [~khalednas@] has quit [Ping timeout: 240 seconds]20:41
-!- khalednasr [~k.nasr92@] has joined #shogun20:51
-!- lambday [67157f54@gateway/web/freenode/ip.] has joined #shogun20:59
-!- sunil1337 [0e8bd055@gateway/web/freenode/ip.] has joined #shogun21:29
sunil1337lambday: hey!21:30
lambdaysunil1337: hi!21:31
sunil1337lambday: please review
lambdaysunil1337: checking21:32
sunil1337lambday: okay! fails at compiling class_list.cpp because we have 3 defs of eigen3 and naive. need a work around there21:32
lambday3 defs of eigen3 and naive?21:33
sunil1337lambday: partial specialization they py scripts adds them to class_list.cpp21:33
lambdaysunil1337: you could have just left the sparse thing for now21:34
lambdaythe code won't be same for dense and sparse21:34
lambdayas in, we can't use map21:34
sunil1337lambday: yeah.. i just called existing sparse_dot for now21:34
sunil1337lambday: i've commented the problem please take a look21:35
lambdaysunil1337: could you please split the definition and declarations?21:36
lambdayinto separate .h and .cpp21:36
lambdayeach class - one .h one .cpp21:37
sunil1337lambday: sure..21:37
wikingbtw u could use macros21:37
sunil1337wiking: for new calls ?21:38
lambdaysunil1337: umm you didn't need to add VectorDotOperator already... first just VectorDotProduct and Eigen3DotProduct which would work independently21:39
lambdaythen we would add CLinearAlgebra factory class21:39
lambdayafter that we'll add VectorDotOperator21:39
lambdayunder LinearOperator interface21:39
lambdaythis iterative approach makes it easy to find bugs21:40
lambdayNaive - we don't really need.. I just added in the gist for demonstration purpose21:40
sunil1337lambday: okay! :)21:40
lambdaythis looks good :)21:41
lambdaygood work :)21:41
sunil1337lambday: thanks :) naive is already there in existing SGVector class...21:41
lambdaybut if you could please send patches containing those two first21:41
lambdayit would make it so much easier21:41
sunil1337lambday: will do.. :)21:41
lambdayyeah - no one needs a sophisticated interface to do naive things ;)21:41
sunil1337lambday: :)21:42
lambdaysunil1337: we *don't* need to put VectorDotProduct under SGObject21:45
-!- thoralf [] has joined #shogun21:46
lambdayand please avoid using __ in #ifndef __CLASSNAME_H__... make it #ifndef CLASSNAME_H_21:46
sunil1337lambday: okay :)21:46
lambdaythoralf: hi...21:53
lambdaythoralf: where are we about the singleton issue?21:54
thoralflambday: We didn't decide anything... currently we're collecting arguments. ;)21:57
thoralflambday: Do you have an optinion about it?21:57
-!- iglesiasg [] has joined #shogun21:58
-!- mode/#shogun [+o iglesiasg] by ChanServ21:58
lambdaythoralf: not particularly.. I agree with HeikoS's suggestion21:59
lambdaybut I am eager to see what sonney2k says about this22:00
thoralfMe too :)22:08
-!- soumyaC [uid15286@gateway/web/] has quit [Quit: Connection closed for inactivity]22:25
-!- iglesiasg [] has quit [Ping timeout: 252 seconds]22:27
-!- iglesiasg [] has joined #shogun22:34
-!- mode/#shogun [+o iglesiasg] by ChanServ22:34
thoralflisitsyn: Awake?22:57
lisitsynthoralf: yes22:57
thoralfHello :)22:57
thoralfI just realized we're having global variables anyway and are just copying them to each object.22:57
thoralfSo it does means we cannot have multiple shoguns even right now.22:58
thoralfAnd the difference between global variables and singletons is artificial for this discussion. ;)22:58
lisitsynwe have it tied together already23:00
thoralfWe're doomed anyway.  So let's change it while everybody is sleeping. :D23:04
lisitsynthoralf: what exactly?23:10
lisitsynI am completely lost in discussions23:10
thoralfRemoving SGIO, Version, Parallel members from CSGObject.23:11
lisitsynthoralf: want to do that?23:12
thoralfWrong question.23:13
thoralfWant to write a ticket for that? :D23:13
lisitsynahh students23:13
lisitsynthoralf: that's the same thing happens at my job23:13
lisitsynconstantly forgetting I have 3 programmers to delegate job23:14
thoralflisitsyn: To me honest, I'm a bit lost how to improve this "thing" and I want to discuss which options we have (without making it worse by adding another 1000 classes).23:15
thoralfChanging it would only be the technical part.23:16
lisitsynthoralf: I think making SGContext a singleton first23:16
lisitsynwould work23:16
thoralfI have no concerns about this.23:18
thoralfPutting Version, Parallel, SGIO into it.23:18
thoralfMost functionality on these things is based on macros, so easy to change without touching many classes.23:19
thoralfAnd then we would naturally lose the duplication of SG_SINFO/SG_INFO, etc., because everything is depending on the singleton.23:21
thoralfWhat?  Did I miss something?23:22
lisitsynwell if we don't want multiple contexts23:22
lisitsynit should work23:22
lisitsynI overlooked the SG_SINFO/SG_INFO thing23:22
lisitsynthoralf: if we use the singleton in SG_INFO23:23
lisitsynthis member of SGObject makes no sense23:23
lisitsynwon't be used23:23
thoralfSo we can remove it.  Hooray :)23:24
lisitsynthis denies multiple contexts23:25
lisitsynI would be ok with multiple contexts23:25
lisitsynso that's disputable23:25
thoralfOkay, how would it work with multiple contexts?23:25
thoralfLets say, you have machine1 from context1 and machine2 from context2.  How would each machine create a new CLabel of the right context?23:26
lisitsynwe should ask for labels in context23:28
lisitsynthat sounds like a factory23:28
thoralfSounds like JavaEE23:28
thoralfCLabels l = context.register(new CLabels);23:29
thoralfCLabels l = context.getInstanceOf(class CLabels);23:29
lisitsynthoralf: actually there is a lot of beauty in that :D23:32
lisitsynmakes things really extensible23:32
lisitsynthoralf: if we go modular23:33
lisitsynwe'd need factories anyway23:33
thoralfCorrect me if I'm wrong, but this doesn't make things simpler. ;)23:33
lisitsynthoralf: this makes things extensible ;)23:33
thoralfCorrect me if I'm wrong, but this doesn't make things simpler. ;)23:33
thoralflol, okay.23:34
thoralfNo free lunch.23:34
lisitsynwell the simplest thing is no objects23:34
lisitsynbut the issue is that we really need factories to go modular23:34
lisitsynsay I wrote SuperSVM23:34
lisitsynhow do I spawn it?23:35
lisitsynthere is no SuperSVM in headers/interfaces23:35
lisitsynI can only ask for SVM23:36
-!- newlido [~quassel@] has joined #shogun23:39
thoralfYou're playing in the opposite team.23:39
thoralfI'm on simplification (white circle on white background)23:39
thoralfYou're on, well, you're on maximum extensible. ;)23:40
lisitsynthoralf: we need plugins23:41
lisitsynto not wait \infty before it compiles23:41
lisitsynand to use only what you want :)23:41
lisitsynplugins are not only about extensibility but to put development on speed23:42
thoralfBut this involves *many* design decisions that haven't been met.  For example: simple "data" classes like vectors, matrices, etc. that need to be fast.  No need to ask daddy every time you want to create an instance.23:44
lisitsynbut they are not sgobjects, right?23:45
lisitsynI am talking only about sgobjects because they are not lightweight23:45
lisitsynand never been :)23:45
thoralfI got your point.23:47
lisitsynokay destination bed23:50
thoralfGood night.23:52
-!- newlido [~quassel@] has quit [Remote host closed the connection]23:58
--- Log closed Thu Apr 10 00:00:15 2014