|
Parrot 4.4.0 "Banana Fanna Fo Ferret" | parrot.org | Log: irclog.perlgeek.de/parrot | #parrotsketch meeting Tuesday 19:30 UTC Set by moderator on 12 June 2012. |
|||
| dalek | rrot/whiteknight/io_cleanup1: eca5d48 | Whiteknight++ | / (2 files): Fix Socket.get_bool. Remove a readline test from t/pmc/socket.t which was absolutely not doing the right thing. |
00:07 | |
| rrot/whiteknight/io_cleanup1: 9aeede6 | Whiteknight++ | / (4 files): Fix Parrot_io_socket semantics to return 1 on success. Add in a Parrot_io_socket_handle legacy wrapper with the old behavior. Re-implement Socket.socket. Some TODO notes. |
|||
| whiteknight | blah, the socket tests are hanging and I don't know why | 00:08 | |
| It does not appear to me that they are doing anything different from what they are doing before | |||
|
00:11
Khisanth joined
00:42
TonyC joined
00:49
nopaste joined
|
|||
| dalek | rrot/whiteknight/io_cleanup1: 82035c2 | Whiteknight++ | / (6 files): Use separate flags for adding read/write buffers to handles by default. Remove the ad hoc buffer STRING nonsense from socket.pmc, replaced by actual buffer logic. |
00:52 | |
| whiteknight | blah, these socket tests are annoying the heck out of me | 00:59 | |
| recv() is hanging on the client. I'm not sure what's the holdup on the server | |||
| recv() may be hanging there too | |||
| whatever. goodnight | 01:07 | ||
|
01:45
kid51 joined
|
|||
| dalek | : c217bf3 | jimmy++ | src/gencode.c: fixed segfault |
02:31 | |
| : 047b18e | jimmy++ | / (2 files): changed unuse_reg to free_reg and use_reg to alloc_reg |
|||
|
02:37
crab2313 joined
04:37
Chin joined
04:45
Chin left
05:32
rurban joined
05:51
dduncan joined
05:53
dduncan left
06:05
crab2313 joined
06:32
birdwindupbird joined
08:03
kjs joined
08:10
lucian joined
08:11
brrt joined
08:57
kjs joined
|
|||
| dalek | d_parrot: f95fa2f | (Bart Wiegmans)++ | / (6 files): Add ParrotLanguage option based on suffix |
10:00 | |
| : 959bd8d | kjs++ | src/ (3 files): updates to multidimensional array handling. |
10:26 | ||
|
10:27
JimmyZ joined
|
|||
| JimmyZ | hello kjs | 10:27 | |
| kjs | hi Jimmy | 10:28 | |
| hi JimmyZ :-) | |||
| JimmyZ | kjs: did you see this gist? gist.github.com/2581153 | 10:30 | |
| kjs | JimmyZ: nope. thanks for pointer, i'll have a look | 10:31 | |
| JimmyZ | ;) | ||
|
10:34
brrt left
|
|||
| kjs | JimmyZ: I agree with cotto that we shouldn't have ops (yet!) for calling conventions | 10:34 | |
| for m0cc :-) | |||
| then we'll fall into the same trap as with PIR | |||
| and I don't like macros so I dont want to implement them in M1 :-) | 10:35 | ||
| JimmyZ | kjs: I agreed with cotto too. | 10:36 | |
| kjs | I like the idea of an M0 debugger. | 10:37 | |
| that would be VERY handy to have now we're running into problems with calling and returning values | |||
| JimmyZ | kjs: nbrown had a debugger, but not complete | 10:38 | |
| kjs | is it checked in? | ||
| JimmyZ | kjs: github.com/parrot/parrot/tree/m0-debugger | 10:39 | |
| kjs | JimmyZ: have you tried that? | 10:40 | |
| JimmyZ | kjs: cotto++ tried it | 10:41 | |
| kjs: I didn't | |||
| kjs | JimmyZ: I'll try it over the weekend. | 10:42 | |
| JimmyZ: t-a-w.blogspot.ie/2007/03/how-to-co...ggers.html | |||
| JimmyZ | kjs: nice article | 10:43 | |
| kjs: m0-debugger doesn't use ptrace | 10:45 | ||
| kjs | no i just realized that probably doesnt make much sense | ||
| basically you need an M0 interpreter but one that stops after each step, and be able to print what's in the registers. | |||
| step = instruction | |||
| JimmyZ | aye | 10:46 | |
| kjs | well from the list of M0 testing todo: the recursively doing something thing can be checked off :-) | 10:50 | |
| JimmyZ | yeah, M1 have fib! | 10:52 | |
| kjs | and fact | 10:53 | |
| JimmyZ | :) | 10:57 | |
| dalek | : c359637 | kjs++ | / (2 files): add jimmy++ to credits. Add a few notes to pddxx_m1 so these wont be forgotten. |
11:13 | |
|
11:53
schm00ster joined
12:12
whiteknight joined
|
|||
| whiteknight | good morning, #parrot | 12:14 | |
|
12:22
kid51 joined
12:32
bluescreen joined
12:45
crab2313 joined
12:52
kjs joined
12:59
bluescreen joined
13:10
Psyche^ joined
13:25
estrabd joined
13:26
kid51 joined
13:52
dmalcolm joined
13:59
kid51 joined
|
|||
| dalek | kudo/nom: a2bacb6 | duff++ | CREDITS: update to github username |
14:15 | |
|
14:19
PacoAir joined
14:39
brrt joined
|
|||
| dalek | : bafb467 | kjs++ | src/ (4 files): add code for bitwise not operator (~). M0 needs support. |
14:39 | |
|
14:44
dduncan joined
14:51
jashwanth joined
|
|||
| jashwanth | Hello dukeleto | 14:53 | |
|
15:13
whiteknight joined
|
|||
| whiteknight | good morning, #parrot | 15:13 | |
| brrt | good afternoon, whiteknight | 15:15 | |
| whiteknight | hello brrt, how are things going today? | ||
| brrt | pretty well, except for the rain :-) | 15:16 | |
| i've added two new configuration options | |||
| i'm in the process of adding real error reporting (i.e., to the apache logs) | 15:17 | ||
| how are things going with you? | 15:18 | ||
| dukeleto | jashwanth: howdy | 15:19 | |
| brrt | i've had a real discussion going on the modules-dev mailing list, which was unfruitful because i got it by digest (i.e., 1,5 days after) | 15:27 | |
|
15:34
brrt1 joined
15:36
brambles joined
15:42
brambles_ joined
15:53
mtk joined
15:54
jashwanth joined
15:56
darbelo joined
15:58
kid51 joined
|
|||
| brrt1 | hey, is there an obvious way to load a bytecode file as a library? i used to think it was loadlib but i appear to be wrong | 16:10 | |
| whiteknight | load_bytecode | 16:12 | |
| brrt1 | lets see | 16:13 | |
| dukeleto | msg jashwanth please ask your questions in here so others can help you if I am not around | 16:14 | |
| aloha | OK. I'll deliver the message. | ||
| jashwanth | ok dukeleto | 16:15 | |
| dukeleto | brrt1: beware, load_bytecode (last time I checked) didn't throw an error if it doesn't find the library | ||
| jashwanth: i saw the code you wrote, nice progress! | |||
| whiteknight | dukeleto: It should, I thought | ||
| maybe that's the new variant | |||
| or maybe it returns null | |||
| I can't remember | |||
| brrt | it works, it sems | ||
| dukeleto | jashwanth: what is the current error that you are running into? | 16:16 | |
| jashwanth | dukeleto:whiteknight helped me to fix it | 16:17 | |
| dukeleto:github.com/jashwanth9/parrot-lapac...mat.winxed | |||
| dukeleto | whiteknight++ | ||
| jashwanth: firstly, we need to create a file with tests for the dgetrf function | 16:18 | ||
| jashwanth: it should be called t/winxed/dgetrf.t | |||
| jashwanth | dukeleto:ok | 16:19 | |
| brrt | oh, how i do love not having implemented error reporting properly | ||
| jashwanth | dukeleto:so basically what should the test to | ||
| dukeleto | jashwanth: the test uses the implementation (mat.winxed) to do a computation, and then it verifies the correct thing happened | 16:20 | |
| jashwanth: are you familiar with what dgetrf does, i.e. LU factorization ? | 16:21 | ||
| jashwanth | yes | ||
| dukeleto, yea I am | |||
|
16:21
zby_home joined
16:22
mtk joined
|
|||
| dukeleto | jashwanth: basically, we want to run the dgetrf function, get the return values and make sure they look correct. | 16:22 | |
| jashwanth: one basic test could be that the return values are not the zero matrix, because if you do the LU factorization of a matrix with non-zero determinant, the L and U matrices must also have non-zero determinant | |||
| jashwanth: also, make sure that the L is in fact lower triangular and that U is in fact upper triangular | 16:23 | ||
| jashwanth | dukeleto:ok there is a variable info which checks if the function has executed correctly | ||
| dukeleto | jashwanth: which you could do by making sure all entries above the diagonal in L are zero and that all entried below the diagonal in U are zero | ||
| jashwanth: yes, verify that as well. Basically, don't believe anything and check as much as you can :) | 16:24 | ||
| jashwanth: also, math terms sometimes change drastically in different spoken languages, so please tell me if I am using a math word that you don't understand | |||
| jashwanth | dukeleto: I think I get it so you want me to double check the result right | ||
| dukeleto | jashwanth: yes. writing tests is like "double checking" that what you wanted to happen actually happened :) | 16:25 | |
| jashwanth: since I am a mathematician, i like to think of tests as the proof that your code works | |||
| jashwanth: tests are not quite mathematical proofs, but they are the closest we can get when writing code | 16:26 | ||
| jashwanth: make sense? | |||
|
16:28
jashwanth_ joined
|
|||
| dukeleto | jashwanth_: howdwy | 16:29 | |
| jashwanth_: your test will look very similar to github.com/letolabs/parrot-libgit2...001_load.t | |||
| jashwanth_: so you can copy that file and modify it to use parrot-lapack and call the dgetrf function | 16:30 | ||
| jashwanth_: one of your tests should be that info==0 | |||
|
16:33
jashwanth joined
|
|||
| jashwanth | dukeleto: yes I got it | 16:33 | |
| dukeleto | jashwanth: we also need to think of how we want to organize these functions | ||
| jashwanth | dukeleto: I was wondering about that today | 16:34 | |
|
16:35
darbelo joined
|
|||
| jashwanth | also the LAPACK defining this DGETRF computes an LU factorization of a general M-by-N matrix a using partial pivoting with row interchanges. | 16:35 | |
| dukeleto | jashwanth: let's do the simplest possible thing | 16:36 | |
| jashwanth: give the DGETRF a 1x1 identity matrix | |||
| jashwanth | dukeleto:but when I checked the result it seens to be doing a colomn exchanges | ||
| dukeleto | jashwanth: then L=I, U=I, where I = "the 1x1 identity matrix" | ||
| jashwanth | 1 sec | ||
| dukeleto | jashwanth: hmmm. there may be a mixup where somethig is in row-major form but something else expect column-major | 16:37 | |
| jashwanth: i suggest writing the 1x1 test first. It is the simplest possible thing and it will give you a feel for how testing works | |||
| jashwanth | dukeleto: am doing that | 16:38 | |
| dukeleto | jashwanth: awesome | ||
| jashwanth: your test will look like this: self.assert.equal(info,0); | 16:39 | ||
| jashwanth: and then you should look at the element inside each of the 1x1 L and U matrices and write a similar test: self.assert.equal(element,1) | |||
| jashwanth | dukeleto:do you want me to just test the result first on the mat.winxed or write the test function *.t | 16:40 | |
| dukeleto | jashwanth: always write the tests down in the test file *.t | ||
| jashwanth: much of your gsoc project will be writing those test files :) | |||
| moritz | it's funny how key words like "row-major" instantly remind me of my bad old days of mixing C++ with FORTRAN code :-) | ||
| dukeleto | jashwanth: and documentation :) | ||
| moritz: yeah, it gives me flashbacks to linear algebra and the DIMENSION THEOREM (dun dun DUN!) | 16:41 | ||
| jashwanth: your test will need to load the mat.pbc bytecode file at the top, so it knows how to call the dgetrf function | 16:42 | ||
| jashwanth | dukeleto: will go throught the code you sent me | ||
| dukeleto, how do i get a pbc bytecode file from a *.winxed | 16:43 | ||
| dukeleto reads some FORTRAN | |||
| jashwanth | dukeleto, I didnt get that | ||
| dukeleto | jashwanth: $load "./src/mat.pbc" | 16:44 | |
| jashwanth | dukeleto, I ment how do I generate such a file mat.pbc | ||
| dukeleto | jashwanth: the *.pbc files are generated when you type "winxed setup.winxed build" | 16:45 | |
| jashwanth: but, for that to work, you need to move mat.winxed to ./src/LAPACK | |||
|
16:45
darbelo joined
|
|||
| dukeleto | jashwanth: git mv mat.winxed src/LAPACK | 16:46 | |
| jashwanth: git add src/LAPACK/mat.winxed | |||
| jashwanth: git commit -m "move mat.winxed to the correct directory" | |||
| jashwanth: please do that right now and then do: git push origin master | |||
| jashwanth | dukeleto, so basically I need to run the setup.winxed file to check if the test file works am i right | 16:47 | |
| dukeleto | jashwanth: winxed setup.winxed test # this runs the tests | 16:48 | |
| jashwanth | ok | 16:49 | |
| dukeleto | jashwanth: winxed setup.winxed build # this builds the *.pbc files and anything else | ||
| jashwanth: please type the above git commands and let me know when you are done (the git mv, git add, git commit and git push) | 16:51 | ||
| jashwanth | dukeleto, "error: failed to push some refs to 'git@github.com:jashwanth9/parrot-lapack.git' | ||
| To prevent you from losing history, non-fast-forward updates were rejected | |||
| Merge the remote changes (e.g. 'git pull') before pushing again. See the | |||
| 'Note about fast-forwards' section of 'git push --help' for details. | |||
| " | |||
| dukeleto, I got that when I did git push | 16:52 | ||
| dukeleto | jashwanth: yes, type "git pull origin master" first | ||
| jashwanth: whenever you see that error, that means the remote (Github) has more stuff than your local branch, so if you pushed, you might lose data, delete commits, etc | 16:53 | ||
| jashwanth: git works very hard to make sure you don't lose data | |||
| jashwanth: what happens after you type "git pull origin master" ? | |||
| jashwanth | dukeleto, remote: Counting objects: 11, done. | 16:54 | |
| remote: Compressing objects: 100% (7/7), done. | |||
| remote: Total 9 (delta 6), reused 5 (delta 2) | |||
| Unpacking objects: 100% (9/9), done. | |||
| From github.com:jashwanth9/parrot-lapack | |||
| * branch master -> FETCH_HEAD | |||
| Auto-merging src/LAPACK/mat.winxed | |||
| CONFLICT (content): Merge conflict in src/LAPACK/mat.winxed | |||
| Automatic merge failed; fix conflicts and then commit the result. | |||
| dukeleto | jashwanth: yay, your first merge conflict :) | ||
| jashwanth: this means you need to open src/LAPACK/mat.winxed in your editor and fix the conflict | 16:55 | ||
| jashwanth: are you pushing to your github repo from multiple computers? I am wondering why you are getting conflicts from your own repo | |||
| jashwanth: have you ever fixed a merge conflict with git before? | |||
| jashwanth: it is easy, just wondering if you have, so I know how much help to give you | 16:56 | ||
| jashwanth | dukeleto, this is the only comp I am working on this project | ||
| dukeleto | jashwanth: if you want, paste the entire file on gist.github.com/ and then paste the gist link in here | ||
| jashwanth: ok. | |||
| jashwanth | dukeleto, no this is my first meeting with them | 16:57 | |
| dukeleto | jashwanth: create a gist of the mat.winxed file and I can help you | ||
| jashwanth: basically, git saw that you did one thing on your local repo, but something else happened to the file on github, and it couldn't resolve them automatically | |||
| jashwanth: this usually happens when two people change the same line of code, and then Git says "I don't know what to do here" which is called a "merge conflict" | 16:58 | ||
| jashwanth: it sounds a lot worse than it actually is :) | |||
| jashwanth: you should see some lines like ====, <<<<, >>>> | |||
| jashwanth: that is where it tells you what each version of the file had for various pieces of the file | 16:59 | ||
| jashwanth | dukeleto, yes I am seeing those | ||
| Coke loves having beyond compare tied into tortoisegit so I can use the GUI to resolve those. ;) | |||
| dukeleto | jashwanth: ok, gist the file and I can help | ||
| jashwanth: also, you should read this page later to get some background on how this all works: git-scm.com/book/ch3-2.html | 17:00 | ||
| jashwanth | dukeleto, ok the original code file right | ||
| dukeleto | Coke: mergetool is a lovely thing | ||
| jashwanth | dukeleto, thanks for that | ||
| dukeleto++ | |||
| dukeleto, gist.github.com/2937581 | 17:01 | ||
| dukeleto, do you want me to give u the file with >>>>>>> ===== one | 17:02 | ||
| dukeleto | jashwanth: not really, it seems that you removed them already :) | 17:04 | |
| jashwanth: does the file still work? Can you run it? i.e. make sure you didn't introduce a syntax error | |||
| jashwanth | dukeleto, I had am other copy thsi is the original file | ||
| dukeleto | jashwanth: if it still works, then you need to add the file to tell Git "I resolved the merge conflict": git add mat.winxed | 17:05 | |
| jashwanth | dukeleto, It sure does | ||
| dukeleto | jashwanth: and to finish telling it you fixed the conflict, make the commit: git commit -m "fix merge conflict" | ||
| jashwanth: awesome! | |||
| jashwanth | dukeleto, gist.github.com/2937601 the file where merge comflict occered | 17:06 | |
| dukeleto | jashwanth: ok. once you commit the fix, do this: git push origin master | 17:09 | |
| jashwanth: and let me know when you do it :) | |||
| jashwanth | dukeleto, ok | ||
|
17:10
kid51 joined
|
|||
| jashwanth | dukeleto, ok done | 17:11 | |
| dukeleto, should I send u a pull request | 17:12 | ||
| dukeleto | jashwanth: not yet :) | 17:15 | |
| jashwanth: ok, mat.winxed isn't a great name, and the way setup.winxed works now, it wants the file to be called Common.winxed | 17:16 | ||
| jashwanth | dukeleto, github.com/jashwanth9/parrot-lapac...mat.winxed | ||
| dukeleto, so change the file name to .... | |||
| dukeleto | jashwanth: so you should now do: cd src/LAPACK; git mv mat.winxed Common.winxed; git add Common.winxed; git commit -m "give file a better name"; git push | ||
| jashwanth | dukeleto, | 17:17 | |
| dukeleto | jashwanth: and you will notice that "git push" does the same as "git push origin master", because the default remote for all git commands is "origin" and the default branch is "master" | ||
| jashwanth: yes, I see your changes :) | |||
| jashwanth: once you do the above commands, run "winxed setup.winxed build" and gist the output | 17:18 | ||
| jashwanth | dukeleto, ok | ||
| dukeleto, but there is already a Common.winxed file in theis directory | 17:19 | ||
| dalek | : a6fe3e4 | kjs++ | src/gencode.c: add more explanation for code generation on multidimensional arrays. |
||
| jashwanth | dukeleto, so can I give it any other name or this specific one Common.winxed | 17:22 | |
| dukeleto | jashwanth: call it Common.winxed for now, so other stuff works | ||
| jashwanth: i am trying to minimize your work :) | |||
| jashwanth: setup.winxed assumes it is called Common.winxed right now | 17:23 | ||
| jashwanth | but there is already a file named with that | 17:24 | |
| dukeleto, it says "fatal: destination exists, source=src/LAPACK/mat.winxed, destination=src/LAPACK/Common.winxed" | |||
| dukeleto | jashwanth: ah! My mistake | 17:25 | |
| jashwanth | dukeleto, so should I delete that file | ||
| dukeleto | jashwanth: ok, lets call the file Double.winxed, for LAPACK function which operate on doubles | ||
| jashwanth: no, don't delete it. It will be useful | |||
| jashwanth | dukeleto, ok | ||
| dukeleto | jashwanth: git mv mat.winxed Double.winxed | ||
| jashwanth | dukeleto, I will call it | ||
| dukeleto, ok done | 17:27 | ||
| dukeleto | jashwanth: ok, do a "git push" too | 17:28 | |
| jashwanth: i just made this commit: github.com/leto/parrot-lapack/comm...bad1b081d8 | |||
| dalek | : c689da2 | kjs++ | src/gencode.c: fixed rows and columns mixup in doc. add a bit of code. |
||
| jashwanth | dukeleto, ok then now this doule name is also accepted | 17:29 | |
| dukeleto | jashwanth: ok, get ready to learn some more Git! | ||
| jashwanth | dukeleto, to get that file should I download that file | ||
| dukeleto | jashwanth: no, we have Git to do that :) | ||
| jashwanth | dukeleto, ok am ready | ||
| dukeleto | jashwanth: type this command: git remote add upstream git://github.com/leto/parrot-lapack.git | 17:30 | |
| moritz | dukeleto: you should add notifications for that repo; see github.com/perl6/mu/blob/master/mi...k-push.txt for instructions | ||
| dukeleto | jashwanth: that tells your Git repo how to talk to my git repo | ||
| moritz: just did, before you asked :) | |||
| moritz++ for suggesting, though :) | |||
| jashwanth: then type: git fetch --all | |||
| jashwanth | dukeleto, it says"fatal: remote upstream already exists." | 17:31 | |
| dukeleto | jashwanth: ha! Maybe I already told you to do that. do a "cat .git/config" and make sure upstream is pointed at git://github.com/leto/parrot-lapack.git | ||
| jashwanth: what happens when you type "git fetch --all" ? | 17:32 | ||
| jashwanth | dukeleto, it did fetch some stuff | 17:33 | |
| dukeleto, from "From git://github.com/leto/parrot-lapack" | 17:34 | ||
|
17:34
lucian joined
|
|||
| dukeleto | jashwanth: yay! | 17:36 | |
| jashwanth: ok, now type: git merge upstream/master | |||
| jashwanth | dukeleto, done | ||
| dukeleto | jashwanth: if everything works, then you will have my latest commit in your local git repo | 17:37 | |
| cotto | ~~ | ||
| dukeleto | jashwanth: do you see my commit when you type "git log -p" ? | ||
| cotto: mornin' | |||
|
17:37
not_gerd joined
|
|||
| not_gerd | hello, #parrot | 17:38 | |
| dukeleto | cotto: how do you feel about implementing bitwise NOT in M0 as two's complement minus 1? | ||
| jashwanth | dukeleto, I think I do | ||
| dukeleto | cotto: should bitwise NOT be an M0 op ? kjs wants it in m1 | ||
| jashwanth: awesome! | 17:39 | ||
| jashwanth: what happens when you type: "winxed setup.winxed build; winxed setup.winxed test" | |||
| cotto: github.com/parrot/parrot/issues/793 | |||
| jashwanth | dukeleto, sending u a gist of this | 17:40 | |
| dukeleto | jashwanth: in general, when you want to update your repo with changes from my repo: git fetch --all; git merge upstream/master | ||
| cotto | dukeleto, looking | ||
| dukeleto | jashwanth: you might get merge conflicts sometimes, but you know how to deal with those now :) | 17:41 | |
| kjs | dukeleto: I want to be able to access it in M1 | ||
| jashwanth | dukeleto, yes I do partially now | ||
| dukeleto, gist.github.com/2937779 | |||
| I need to make the changes where there is >>> with === ones right | 17:42 | ||
| cotto | hio kjs | ||
|
17:43
bluescreen joined
|
|||
| jashwanth | dukeleto, I think I got to know why I did get a merge conflict | 17:43 | |
| dukeleto | jashwanth: hmmm, that is an error from Rosella | ||
| jashwanth | dukeleto, I had edited it in the gui then committed there on the website | 17:44 | |
| dukeleto | jashwanth: did you create a t/winxed/dgetrf.t file yet? | ||
| jashwanth: aha! That makes more sense. I was wondering if there was 2 of you or something :) | 17:45 | ||
| jashwanth | dukeleto,:D | ||
| dukeleto, no did not till now | |||
| dukeleto | jashwanth: for now, create a t/winxed/dgetrf.t file that calls the dgetrf function and then run the test like this: winxed t/winxed/dgetrf.t | ||
| jashwanth: ok, go and create the file. You are making good progress. Keep it up! | 17:46 | ||
| msg whiteknight do you know what is up with this? gist.github.com/2937779 | |||
| aloha | OK. I'll deliver the message. | ||
| jashwanth | dukeleto, thanks for the help | ||
| dukeleto | jashwanth: you learned a lot about Git today. Reward yourself :) | ||
| jashwanth | dukeleto, thanks to you I did | 17:47 | |
| dukeleto | jashwanth: basically, the next few steps are to write tests for the dgetrf function, like I mentioned above about the 1x1 matrices. | ||
| jashwanth: that is what mentors are for :) | |||
| cotto | kjs, did you see dukeleto's suggestion about binary NOT in m0? github.com/parrot/parrot/issues/793 | ||
| jashwanth | dukeleto, morning was wondering how I would be integrating all this and how others would be using my code | 17:48 | |
|
17:48
mtk0 joined
|
|||
| dukeleto | jashwanth: that will become clear soon enough :) | 17:51 | |
| jashwanth: concentrate on making small improvements every day | |||
| cotto: how is startup life? | |||
| cotto: what are you coding in? | |||
| whiteknight | dukeleto: Weird error. I wonder why that is | 17:52 | |
| dukeleto | jashwanth: don't get demotivated when you hit an error. Try something else, change the way you think about it, work on something else and come back later | ||
| whiteknight | dukeleto: I haven't touched Rosella in a few weeks. I'll stare at it tonight | ||
| dukeleto | jashwanth: just don't let errors stop you. Keep going. Make something work. | ||
| jashwanth | dukeleto, thanks for the motivation 0:) | 17:53 | |
| dukeleto | whiteknight: ok, it is not a total blocker, but I haven't seen that error before | ||
| jashwanth: :) | |||
| jashwanth: once you get a few tests written, everything will make a lot more sens | |||
| sense | |||
| whiteknight | dukeleto: I haven't seen the error either. Troubling that it's happening in the test harness | 17:54 | |
| dukeleto | whiteknight: could it be from not cleaning before building+testing? | ||
| cotto | dukeleto, crazy with a capital k | ||
| whiteknight | I have no idea. I doubt it | ||
| dukeleto | cotto: sounds about right. | ||
| cotto | I'm hacking on some drupal code | ||
| it doesn't help that everyone else is a git newbie | 17:55 | ||
| jashwanth | dukeleto, morning was wondering why and how will my project help the community but now makes some sense to me | 17:56 | |
| cotto | A startup seems to be a device that converts money into panic. | 17:58 | |
| jashwanth | cotto, did you refer that to me | 17:59 | |
| cotto | jashwanth, sorry. talking with dukeleto | ||
| jashwanth | cotto, sorry there is nothing like that | 18:00 | |
| cotto, :) | |||
| kjs | hi cotto | 18:01 | |
| dukeleto | cotto: well, this might be a good time to mention that I am looking for work and that I do git consulting ;) | 18:02 | |
| cotto | dukeleto, that's interesting. I'll bring that up. | 18:03 | |
| dukeleto is currently a free agent and looking for contract, part and full-time gigs | |||
| cotto | did your startup go kaboom? | 18:04 | |
| dukeleto | cotto: i give all clients a free first hour and open sourcey shops get a discount too :) | ||
| cotto | also interesting | 18:05 | |
| whiteknight | dukeleto: Go on kickstarter. See if people will pay you to work on parrot fulltime for a while | ||
| dukeleto | cotto: the startup I was working at wasn't treating me right, so I decided to walk away. | ||
| whiteknight: not a bad idea. | |||
| whiteknight: or maybe petridish.org | |||
| whiteknight | sure, whichever. I'm not sure the venue matters so much | 18:06 | |
| dukeleto | whiteknight: have you seen try.haxe.org ? | 18:09 | |
| whiteknight | no sir | ||
| looks fantastic | |||
| dukeleto | whiteknight: I have a dream of making try.parrot.org be a pretty interface to my App::Parrot::Create | 18:10 | |
| whiteknight | What we don't really have right now is a nice way to limit processes, like a built-in timelimit or something | ||
| dukeleto | whiteknight: it would be a pretty, friendly portal where you can generate the skeleton of a new Parrot language/library/etc and have links to the latest docs and best practices/etc | ||
| whiteknight | If we get working security contexts going, a timeout would be a great setting | ||
| dukeleto | whiteknight: perhaps I could make a small kickstarter/petri for making that a reality. | 18:11 | |
| whiteknight | So we have a main program that sets up a child context with a timeout (and severe limitations on IO) and run user code in that | ||
| dukeleto | +1 to setting a timeout on child interps | ||
| whiteknight | this kind of thing would work extremely well with threads | 18:12 | |
| (I haven't seen nine in a few days. I may merge threads without him at some point) | |||
| jashwanth | dukeleto, ur test is to test about the git right | 18:18 | |
| benabik | ~~ | ||
|
18:20
rich joined
|
|||
| jashwanth | dukeleto, can you help me with the start of it | 18:20 | |
|
18:20
brrt joined
18:23
contingencyplan joined
|
|||
| jashwanth | whiteknight, dukeleto was telling me to write a test was wondering with the starting of it could you help | 18:27 | |
| whiteknight | sure. Did he give you any direction about what libraries to use? | 18:28 | |
| or, did the repo he set up have any test examples? | 18:29 | ||
| ...it doesn't look like it | |||
| jashwanth | no none but he gave me some example | 18:30 | |
| github.com/letolabs/parrot-libgit2...001_load.t | |||
| whiteknight | ah, okay. So he's using Rosella. Good | ||
|
18:31
kid51 joined
|
|||
| jashwanth | he told me to write a simple test for an Identity matrix first of order 1x1 | 18:32 | |
| whiteknight | gist.github.com/2938052 | ||
| that's a skeleton file to use | |||
| Every function in the MyTests class is a test | |||
| Every test passes unless something goes wrong | 18:33 | ||
| jashwanth | ok | ||
| got that part | |||
| whiteknight | okay, good | 18:34 | |
| jashwanth | I think that errors of the files I encountered while installing PLA was some test function failure right | ||
| whiteknight | In that first_test() method, create a new NumMatrix2D, 1x1 as an identity matrix | ||
| Then you can do tests by writing assertions | 18:35 | ||
| self.assert.equal(x.rows, 1); self.assert.equal(x.cols, 1); | |||
| self.assert.equal(x[0, 0], 1); | |||
| and that's your first test | 18:36 | ||
| kid51 | Does anyone know what $< would mean in a shell or Makefile context? | ||
| Examples: | |||
| vi +685 config/gen/makefiles/root.in | 18:37 | ||
| jashwanth | ok doing that | ||
| not_gerd | kid51: first prerequisite | ||
| useful for stuff like: %.o : %.c ; $(CC) -c $< | 18:38 | ||
|
18:38
patspam joined
|
|||
| kid51 | Is it doing something like xargs? | 18:38 | |
| not_gerd | kid51: it's Makefile syntax | ||
| kid51 | Ah! I thought it was shell. | 18:39 | |
| And I couldn't find anything about that. | |||
|
18:39
patspam joined
|
|||
| kid51 | patspam++ for the link | 18:40 | |
| jashwanth | whiteknight, $load "rosella/test.pbc"; | 18:44 | |
| $load "./src/mat.pbc"; | |||
| class MyTests { | |||
| var identity_matrix=new NumMatrix2D; | |||
| identity_matrix.initialize_from_args(1,1, | |||
| 1.0); | |||
| function first_test() { | |||
| self.assert.equal(x.rows, 1); | |||
| self.assert.equal(x.cols, 1); | |||
| self.assert.equal(x[0, 0], 1); | |||
| } | |||
| function main[main](var args) { | |||
| using Rosella.Test.test; | |||
| test(class MyTests); | |||
| } | |||
| whiteknight, sorry my mistake | |||
| dalek | : 94fedf2 | kjs++ | src/gencode.c: more work on multidimensional arrays. |
||
| brrt | jashwanth: pastebin :-) | ||
| jashwanth | brrt, what is that I could not get it | 18:46 | |
| cotto | aloha, nopaste? | ||
| aloha | cotto: nopaste is is nopaste.snit.ch (works with the script in $_PARROT/tools/dev/nopaste.pl) | ||
| jashwanth | whiteknight, gist.github.com/2938111 | 18:47 | |
| whiteknight | that code has to appear inside the function | 18:48 | |
| jashwanth | oh | ||
| gist.github.com/2938111 | 18:49 | ||
| whiteknight | you have to rename "x" in the assertion calls | ||
| you used the variable name identity_matrix | |||
| jashwanth | oh me bad | 18:50 | |
| done with that now how do I do the checking of this test | 18:51 | ||
| whiteknight | run it like a normal .winxed file | ||
| jashwanth | ok | 18:52 | |
| nopaste | "kjs" at 193.1.104.2 pasted "x[1][2] = 3 segfaults. Replace I5 with I0 (destroying old value of I0) and it works." (29 lines) at nopaste.snit.ch/144102 | 18:53 | |
| kjs | cotto: I'm trying to hand-code x[1][2] = 3, but it's segfaulting on a weird thing. When replacing a register it seems to work. WOuld you have a minute? | 18:54 | |
| cotto | looking | 18:55 | |
| brrt | i have a commit pending that is teh awesome | 18:56 | |
| i am excited! | |||
| jashwanth | whiteknight, gist.github.com/2938111 | ||
| whiteknight | okay. Test runs. All tests pass | 18:57 | |
| Add that file to git and push it. | |||
| jashwanth | ok will do that | 18:58 | |
| kjs | cotto: when inserting a line set I5, I0, x just before add_i I5 ..., it works. | ||
| .. but that shouldn't matter, according to the spec anyway (pdd32) | |||
| whiteknight | jashwanth: Now we need to add a test for dgetrf. Create a new test file dgetrf.t and add a new test for that function | 19:00 | |
| prove that it works and produces the correct values | |||
| jashwanth | ok doing that | 19:01 | |
| cotto | kjs, no luck. I'll give it another shot later today when there's less $dayjob to do. | 19:04 | |
| kjs | cotto: sure no problem, thanks | 19:05 | |
| dalek | rrot/implicit_c2str: 9c713a4 | jkeenan++ | config/gen/makefiles/root.in: Change the suffix rule for c2str to be a pattern rule. |
19:09 | |
| Coke is happy to see GSOC work in channel. | 19:10 | ||
| jashwanth | whiteknight, there NumMatrix2D looks like an object but how do I call this function in a test | 19:12 | |
| whiteknight | what do you mean? | ||
| jashwanth | whiteknight, i.e the code written Double.winxed | 19:13 | |
| whiteknight | a test is just a program. You write code the same way in a test you would in a normal .winxed file | ||
| dalek | d_parrot: 795627b | (Bart Wiegmans)++ | / (8 files): Somewhere intermediate for both error reporting and direct writing |
||
| d_parrot: 8ab0012 | (Bart Wiegmans)++ | / (6 files): Writing using NCI |
|||
| jashwanth | ok here then I need to call the dgetrf function and then test the cases on it right | 19:14 | |
| whiteknight | yes | ||
| jashwanth | whiteknight, github.com/jashwanth9/parrot-lapac...ble.winxed | 19:16 | |
| almost a similar code like this but more prone to all the test cases right | |||
| whiteknight | jashwanth: Do you have a build script yet? | ||
| You can comple Double.winxed to .pbc, then load Double.pbc from your test and use it | 19:17 | ||
| jashwanth | yes I think I saw the .pcb file of it generate | 19:18 | |
|
19:18
not_gerd left
|
|||
| whiteknight | okay | 19:18 | |
| jashwanth | duke asked me to use this command "$load "./src/mat.pbc";" | ||
| whiteknight | okay, then do that | ||
| jashwanth | oh this is the other way of testing right | 19:19 | |
| whiteknight | yes | 19:20 | |
| jashwanth | but had a doubt in this way | ||
| whiteknight | ok | ||
| jashwanth | how do I cal or use this cone written in the other file | ||
| *code | 19:21 | ||
| whiteknight | Double.winxed probably needs to change | 19:22 | |
| You want it to be a library, not a program. | |||
| programs have a main function. Libraries should use namespaces instead | 19:23 | ||
| jashwanth | whiteknight, ok you want me to change the code on Double.winxed to something like the example on "whiteknight.github.com/Rosella/winx...ples.html" | 19:27 | |
| brrt | hey, is there a default builtin sub for reading a line in winxed? | 19:28 | |
| whiteknight | jashwanth: Factor out the logic to call dgetrf into a separate function so you can call it | 19:29 | |
|
19:29
travis-ci joined
|
|||
| travis-ci | [travis-ci] parrot/parrot#436 (implicit_c2str - 9c713a4 : jkeenan): The build is pending. | 19:29 | |
| [travis-ci] Change view : github.com/parrot/parrot/compare/5...713a432265 | |||
| [travis-ci] Build details : travis-ci.org/parrot/parrot/builds/1630405 | |||
|
19:29
travis-ci left
|
|||
| whiteknight | brrt: Most handle types should have a .readline method | 19:29 | |
|
19:30
kid51 joined
|
|||
| brrt | well, my question was actually aiming at something different :-) | 19:31 | |
| point in fact.. i want to know where read() requests are dispatched too, if they are objects | |||
| s/oo/o/ | |||
| because print() and say() are dispatched to puts() | |||
| whiteknight | read | 19:32 | |
| brrt | great :-) | ||
| whiteknight | github.com/parrot/parrot/blob/mast...api.c#L473 | ||
| that's part of the mess I've been rewriting, but in master that's what it is | |||
| brrt | .. i have some notion now :-) | 19:34 | |
| this is GREAT :-D i'm excited as... well | |||
|
19:35
darbelo_ joined
|
|||
| whiteknight | :) | 19:35 | |
| brrt | you know what would be even more awesome? an emacs mode for winxed | 19:38 | |
|
19:39
davidfetter joined
|
|||
| whiteknight | brrt: You can put one together, if you've got the free time | 19:40 | |
| brrt | oh, but my emacs-lisp-fu is horriible | ||
| i stil cannot read those regexpes | 19:41 | ||
| whiteknight | heh | ||
| brrt | maybe one day.. for now javascript-mode works nicely enough | 19:42 | |
| whiteknight | yeah, it should be similar enough | 19:43 | |
| brrt | winxed just has a /lot/ more syntax | 19:44 | |
| whiteknight | most of the time I've been able to copy javascript syntax highlighters and just add in a bunch of keywords | 19:46 | |
| brrt | hmm | ||
| obviously an option | |||
| anyway... who here has guessed why mod_parrots test system is in pudding? | 19:49 | ||
| whiteknight | because yogurt was busy | 19:52 | |
| because Jell-o is too wiggly | |||
|
19:54
darbelo joined
|
|||
| brrt | because its where the proof is | 19:54 | |
| :-) | |||
| whiteknight | heh | ||
| Coke | brrt: *groan* | 19:59 | |
| brrt | well, i at least found it hilarious | 20:07 | |
| readall() seems to be special | 20:18 | ||
| leave & | 20:19 | ||
|
20:19
brrt left
|
|||
| whiteknight | yes, "special" | 20:21 | |
|
20:21
kjs joined
21:50
patspam joined
|
|||
| pmichaud | kid51++ # white camel award winner! | 22:03 | |
|
22:12
lucian joined
|
|||
| benabik | white whatnow? | 22:26 | |
|
23:55
dduncan joined
|
|||