00:02:06 | Araq | never mind, I think its github |
00:04:20 | Araq | ok, I should trigger it again? |
00:04:34 | dom96 | Araq: headers too please |
00:04:38 | dom96 | No. Don't. |
00:06:07 | Araq | I can push something and then it gets a small diff that doesn't crash nimbot, right? |
00:06:13 | dom96 | yes |
00:06:19 | flaviu | How much time is left until the release |
00:06:34 | Araq | Varriount: please make that forum announcement |
00:07:12 | Araq | flaviu: my ticker.txt says 2014-04-20 is the new release date ... |
00:07:46 | fowl | 420!! |
00:10:43 | Araq | good night |
00:11:26 | * | psquid quit (Ping timeout: 246 seconds) |
00:14:17 | dom96 | same here, good night |
00:16:53 | * | psquid joined #nimrod |
00:18:24 | Styled | I got another issue I downloaded https://github.com/nimrod-code/csources compiled it then copied it over to nimrod_0.9.2.zip extracted bin folder. Then when I ran code echo "hello geek" in test.nim with nimrod c -r test.nim I received this error lib/system/excpt.nim(327, 1) Error: expression expected, but found ',' |
00:21:35 | flaviu | Styled: That's strange |
00:21:41 | Varriount | Araq, dom96: Forum announcement made at http://forum.nimrod-lang.org/t/417 |
00:21:52 | flaviu | Try `echo("hello geek")` |
00:22:25 | Varriount | Styled: What OS are you running on? |
00:22:33 | fowl | ? |
00:22:43 | fowl | you put new csources with 0.9.2 release? for what? |
00:23:23 | Styled | so I could get past the original error of semfold.c:(.text+0x1273): undefined reference to `lrint' |
00:24:19 | Styled | because the https://github.com/nimrod-code/csources only has the c_code folder |
00:25:17 | fowl | Styled, jsut use the instructions here https://github.com/Araq/Nimrod#compiling |
00:25:23 | flaviu | Styled: Delete everything and start over, copying the instructions exactly |
00:28:27 | * | DAddYE quit () |
00:33:55 | Varriount | fowl, flaviu: Styled could also use one of the dev builds available on http://build.nimrod-lang.org/ to bootstrap the compiler (That's what I do) |
00:34:30 | flaviu | I just successfully bootstraped like in the readme, so I'm recommending that since its the simplest |
00:35:18 | fowl | Varriount, not from 0.9.2 sources |
00:35:34 | fowl | Varriount, er nvm |
00:35:44 | fowl | Varriount, you do that each time you update? |
00:35:59 | Varriount | fowl: If I don't have a nimrod copy available, yeah. |
00:36:19 | Varriount | (I just accidentally had git delete my nimrod executables) |
00:36:42 | * | DAddYE joined #nimrod |
00:37:03 | Varriount | *shrug* using the devel builds just involves downloading the zip, placing the nimrod executable in your local nimrod copy's 'bin' directory, add it to the PATH, then run 'nimrod c --run koch boot -d:release" |
00:37:12 | fowl | $ du -hs Nimrod 43M Nimrod |
00:37:21 | fowl | not bad |
00:37:52 | fowl | Varriount, maybe you want to update the std lib too |
00:38:02 | Varriount | fowl: That's what git is for. |
00:38:25 | flaviu | fowl: Half of that is git's record-keeping |
00:38:42 | Varriount | I only use the above method for a brand new installation. For my personal installation, I just 'git pull' and 'koch boot' |
00:40:46 | Varriount | Ok, that's the Win32 and Win64 builders up. Now for the installer generators. |
00:42:52 | fowl | Varriount, why did you have to have 64bit binaries for allegro, does there need to be any consideration for that in the wrapper? |
00:43:29 | Varriount | fowl: I use 64 bit binaries of nimrod. |
00:43:51 | * | EXetoC quit (Read error: No route to host) |
00:43:55 | Varriount | Thus, the wrapper will be wrapping a 64 bit version of allegro. |
00:44:24 | fowl | so, personal taste then? |
00:45:03 | Varriount | fowl: I'm going to guess that most modern computers have 64 bit CPU's. If so, why is it that we run 32 bit programs on them? |
00:45:19 | fowl | so we can access more memory? |
00:45:38 | Varriount | 32 bit programs are still limited to 4gb. |
00:45:58 | Styled | no success compiling again |
00:46:14 | Styled | here is what happens |
00:46:17 | Varriount | I /deplore/ the lack of consideration for native 64 bit architectures that certain libraries have. |
00:46:17 | Styled | ____________________________________________ |
00:46:19 | Styled | Hint: system [Processing] |
00:46:19 | Styled | Error: cannot open '/home/geek/nimrodcompile/lib/system.nim' |
00:46:19 | Styled | so I copied it to the contents of nimrod_0.9.2.zip extracted to access the systtem.nim contained within and got these errors: |
00:46:19 | Styled | config/nimrod.cfg(37, 2) Hint: added path: '/home/geek/.babel/pkgs/' [Path] |
00:46:19 | Styled | Hint: used config file '/home/geek/nimrod/config/nimrod.cfg' [Conf] |
00:46:20 | Styled | Hint: used config file 'koch.nimrod.cfg' [Conf] |
00:46:22 | Styled | Hint: system [Processing] |
00:46:23 | fowl | Styled, use pastebin please |
00:46:24 | Styled | lib/system/excpt.nim(327, 1) Error: expression expected, but found ',' |
00:46:26 | Styled | ____________________________________________ |
00:46:27 | fowl | oh jeez |
00:46:40 | flaviu | Varriount: Because lots of programs are not compiled for 64bit |
00:47:02 | Varriount | flaviu: And why is that? Laziness? |
00:47:17 | fowl | Styled, that is not the correct way to install. even it works, you're putting a new compiler on top of an old standard library |
00:47:19 | flaviu | Yes, and apparently some C programs have the pointer size hardcoded or something |
00:47:51 | Varriount | flaviu: Or cast a pointer to an int. |
00:47:57 | fowl | Styled, please follow these directions https://github.com/Araq/Nimrod#compiling |
00:49:06 | flaviu | in C if you want a 64 bit integer, you have to use long long |
00:49:19 | flaviu | most people just used long int |
00:49:32 | Varriount | Which is.. what? |
00:49:49 | Varriount | a 48 bit int? |
00:50:22 | flaviu | according to wikipedia, char = int8, short int = int16, int = int16, long int = int32, long long int = int64 |
00:50:50 | flaviu | and long long int was not in the spec until 1999 |
00:50:52 | Varriount | Huh. I had always assumed that an 'int' in C was an int32 |
00:50:59 | * | q66 quit (Ping timeout: 252 seconds) |
00:51:06 | flaviu | It can be 32 bits |
00:51:13 | flaviu | but the spec only requires 16 |
00:51:48 | renesac | Varriount, 64 bit programs also use more memory |
00:51:56 | renesac | because 64 bit pointers |
00:52:21 | flaviu | I haven't used C, just going off wikipedia. I might be subtly wrong or something |
00:52:36 | renesac | there is all this talk about X32 abi because of that: http://en.wikipedia.org/wiki/X32_ABI |
00:52:38 | * | EXetoC joined #nimrod |
00:52:51 | flaviu | But C is a mess of undefined behavior |
00:53:12 | renesac | oh, it seems it is already merged to the kernel |
00:54:03 | Varriount | And that's another gripe of mine - the lack of consideration of Windows in so many open source projects. |
00:54:25 | fowl | windows is hard to develop on |
00:54:39 | Varriount | Howso? |
00:54:55 | fowl | like git is hard is to use, so we make reactormonk do the hard stuff |
00:55:14 | Varriount | Git has a command line interface on windows, just like on linux. |
00:55:42 | fowl | o..k? |
00:55:56 | renesac | Varriount, how you expect people to submit patches to windows kernel? |
00:56:05 | renesac | if it was x32 that spiked your criticism |
00:56:11 | Varriount | renesac: No, it was not. |
00:57:12 | Varriount | I'm talking about open source projects whose build instructions on windows amount to "Ok, here's the dependancies. We haven't tested a build in 5 years, and the build process has radically changed since then. Have fun!" |
00:58:08 | renesac | well, when it is the other way arround, usually the open source project is bound by some proprietary microsoft api |
00:58:28 | renesac | and there is no way to compile on linux except by rewriting that part of the program |
00:59:37 | renesac | if no main developer works with a given OS, it is hard to expect good support for it |
01:00:02 | renesac | Mac OS is no different |
01:00:17 | renesac | see the state of nimrod there |
01:03:45 | flaviu | Varriount: Windows doesn't have a decent shell |
01:03:59 | flaviu | and cgywin is horrible |
01:04:11 | Varriount | flaviu: Powershell? |
01:04:23 | * | askatasuna joined #nimrod |
01:04:28 | Varriount | Or the Sh version that Msys provides. |
01:04:39 | Varriount | Also, what do you consider a "good" shell? |
01:05:03 | Varriount | renesac: How is nimrod support for Mac deficient? |
01:05:14 | flaviu | I use fish, but bash is fine |
01:05:52 | renesac | I hear some mac only bugs here that would not happen in windows or linux |
01:05:55 | fowl | fish :> |
01:06:07 | flaviu | it provides scripting and the unix utilities |
01:08:15 | flaviu | Powershell provides scripting I guess, but who wants to learn another set of utilities and maintain another build script? |
01:12:30 | Styled | fowl, okay thanks for your advice got it to compile "hello geek" |
01:12:32 | Varriount | flaviu: Have you heard of Msys and MinGW? |
01:14:50 | Varriount | Gah |
01:15:14 | Styled | the executable is 137 kb for echo "hello geek" can it be made smaller? |
01:15:30 | renesac | Styled, have you compiled in debug mode? |
01:15:33 | renesac | or release mode? |
01:16:02 | flaviu | Those seem like they come close to a unix enviroment, isn't it possible to just use the unix installation instructions then? |
01:16:12 | renesac | Which option to use for the smallest executable? |
01:16:12 | renesac | For the standard configuration file, -d:quick --opt:size does the trick. |
01:16:27 | renesac | <-- from the site's faq |
01:17:03 | Varriount | Don't you mean -d:release? |
01:17:05 | renesac | -d:release for speed optimized builds, that will likely be smaller than debug builds |
01:17:18 | renesac | he asked for size |
01:18:19 | Styled | nimrod c -d:release test.nim got it down to 42kb great! |
01:18:43 | flaviu | Styled: add --deadCodeElim:on |
01:19:07 | flaviu | nimrod c --opt:size -d:release --deadCodeElim:on ./test.nim gets me 24K |
01:19:35 | Varriount | I wonder how much of that is setting up things like the stack and such. |
01:19:36 | renesac | -d:quick works? |
01:19:47 | * | DAddYE quit (Remote host closed the connection) |
01:19:56 | flaviu | Nope, 40K |
01:20:21 | * | DAddYE joined #nimrod |
01:21:26 | Varriount | I think quick is for a quick compilation |
01:21:53 | renesac | the smallest possible executable for linux is 45bytes |
01:21:53 | * | bstrie_ joined #nimrod |
01:21:53 | * | krusipo_ joined #nimrod |
01:22:03 | Styled | flaviu thanks that worked great |
01:22:06 | Varriount | Hi krusipo |
01:22:16 | * | krusipo quit (Ping timeout: 265 seconds) |
01:22:16 | * | rixx quit (Ping timeout: 265 seconds) |
01:22:18 | * | bstrie quit (Ping timeout: 265 seconds) |
01:22:34 | Varriount | Is it just me, or are github's git servers slow? |
01:22:41 | * | rixx joined #nimrod |
01:22:41 | renesac | of course, you have to use many dirty tricks to get that low |
01:22:59 | renesac | it is not a typical 'hello world' |
01:23:27 | renesac | from C the same person got a 2604 bytes executable (no printf, etc) |
01:23:44 | renesac | http://www.muppetlabs.com/~breadbox/software/tiny/teensy.html |
01:25:04 | Styled | its about 9kb if compressed |
01:25:39 | renesac | Styled, xz? |
01:25:46 | * | DAddYE quit (Ping timeout: 240 seconds) |
01:25:56 | flaviu | Styled: also add --gc:none |
01:26:03 | flaviu | 16K |
01:27:08 | Styled | that brings it down to about 5kb compressed |
01:29:23 | renesac | very nice |
01:30:18 | renesac | I will try to port an arithmetic coder to nimrod latter, so I can compare it's binary size with C++ and D |
01:30:24 | Varriount | Hm. How do you guys feel about adding more information to certain exceptions Eg, when a file cannot be found, actually printing the missing file. |
01:31:01 | renesac | C++ was 13kb, DMD binary was 230kb and GDC binary was 1322kb |
01:32:22 | Demos | Varriount: that is what the msg string is for |
01:32:31 | EXetoC | Varriount: seems silly to omit that part |
01:32:44 | Demos | is the purge done? |
01:32:58 | Varriount | yes, however I'm having trouble getting the Win64 builder running |
01:33:16 | Varriount | It keeps complaining about a missing file (and doesn't say what the missing file is) |
01:33:48 | flaviu | Varriount: That sounds good, but have you tried --listCmd? |
01:35:15 | Demos | 37.2MB not half bad |
01:35:38 | Varriount | flaviu: This is with the actual builder program, not the compiler |
01:35:51 | EXetoC | Varriount: including it in msg and then also storing it in a separate field would be nice, but then we need something more specific than EIO |
01:35:55 | Varriount | the build bot that bootstraps and tests the compiler for each revision |
01:37:09 | Demos | is there a new bootstrap procedure or do I still get csources from the nimrod-code org |
01:37:28 | Varriount | Gah. Just get a minimal compiler from the build site. |
01:37:40 | Varriount | Why must people do it the hard way. |
01:37:41 | flaviu | Demos: Same everything, cloning is much faster |
01:38:24 | Demos | could use the old 0.9.2 release for bootstrapping as well |
01:38:56 | * | Styled quit (Remote host closed the connection) |
01:39:41 | Varriount | Anyone have any good fantasy/fiction audiobooks to recommend? |
01:39:53 | Demos | it looks like the windows builders are having problems pllig from the git repo |
01:40:48 | Varriount | Demos: Figured out the problem. The builder exe needed a pre-placed nimrod exectable in it's local target nimrod repository. |
01:41:03 | Demos | wow my "u" key failed for a moment there. This is what I get for buying a $100 gameing keyboard instead of a $15 dell thing |
01:42:03 | Demos | how do I download a build from nimbuild |
01:42:18 | Varriount | http://build.nimrod-lang.org/ |
01:42:28 | Varriount | click one of the little commit hashes in the grid at the top |
01:42:57 | Demos | oh. that grid does not render properly in internet explorer 11 |
01:43:04 | * | Demos hides |
01:43:13 | Varriount | And... why are you using internet explorer?! |
01:43:45 | Demos | IE11 is really good for casual browseing (like less than 30 tabs) |
01:44:20 | renesac | I think I never used IE11 |
01:44:45 | renesac | the last I remember using was IE9 |
01:44:51 | renesac | for things like downloading firefox |
01:44:55 | Varriount | One of the first things I do when I install windows is disable internet explorer, and install firefox and chrome |
01:45:48 | Demos | chrome is horrid |
01:45:50 | renesac | yeah, I have chrome for when my extension overloaded firefox fails in some page |
01:46:03 | reactormonk | Skrylar, I'm messing with the JS once in a while, and usually -d:release gives better code to debug |
01:46:03 | Demos | usues too much memory |
01:46:08 | flaviu | Has youtube center been working for you? |
01:46:17 | renesac | how I can pretty print json in nimrod? |
01:46:30 | renesac | *can I |
01:46:32 | flaviu | renesac: jsonast.pretty |
01:47:01 | renesac | thanks, I will look into it |
01:47:09 | renesac | I need to fix my firefox profile |
01:47:24 | renesac | it probably got corrupted somehow |
01:48:15 | Varriount | Demos: Why is Chrome horrid? |
01:48:51 | Demos | it uses lots of memory and seems to reimplement every single operateing system service |
01:48:56 | flaviu | Varriount: Memory, closed source, addons are horrible |
01:49:03 | Demos | pretty much |
01:49:06 | Varriount | And what about Chromium? |
01:49:15 | Demos | uses even more memory than chrome |
01:49:27 | Demos | it is insane |
01:49:27 | flaviu | Suffers from 2/3 of what I said |
01:49:35 | flaviu | I trust mozilla much more than google too |
01:49:37 | Demos | FF is meerly OK |
01:49:56 | * | brweber2 joined #nimrod |
01:50:08 | flaviu | I know a guy who has 20 windows of firefox open at a time, the memory is pretty reasonable |
01:50:41 | Demos | yeah FF does really well with tons of tabs |
01:50:49 | Demos | IE does really well with few' |
01:51:00 | Demos | esp since IE does not page out the tabs, so switching is fast |
01:52:04 | renesac | firefox is fine with up to 800 tabs |
01:52:11 | renesac | more than that it starts crashing often |
01:52:12 | Demos | I want my default web browser to be quick to start above all and IE is that. I use FF for when I need "heavy duty" browsing (like downloading mods for games (someone should make a nimrod program to make that eaiser) or reading a forum) |
01:52:25 | Demos | renesac: sure you are not just OOM |
01:52:30 | Varriount | Gotta go. Sleep callms. |
01:52:47 | renesac | Demos, yeah, this seems a possible reason for the crashes |
01:53:06 | flaviu | One of the best parts of firefox is about:*, about:memory is really nice |
01:53:21 | Demos | I run my linux box without swap and I have only 4G of ram so when I run out things get "interesting" |
01:54:08 | flaviu | I have a swap partition, but I'm too lazy to enable it. Zswap is good enough |
01:56:41 | Demos | yeah I actually can not use a swap partition since btrfs does not support them |
01:56:47 | Demos | I may be able to use a swapfile though |
01:57:41 | flaviu | Why would btrfs cause issues? Swap is a separate partition |
01:57:54 | Demos | dun know |
01:58:10 | flaviu | Oh, Btrfs has subvolumes, which it doesn't support swap in |
01:58:10 | renesac | swap has it's own filesystem too |
01:58:32 | * | Styled joined #nimrod |
01:58:35 | EXetoC | death to swap |
01:58:37 | flaviu | If you shrunk Btrfs, you would be able to have swap |
01:58:45 | renesac | I don't see why btrfs would care for another partition with a different filesystem |
01:58:55 | Demos | yeah, anyway I have an ssd and I figure that if I am swapping I am screwed anyways, so I just let the system burn and then fix the buggy app |
01:59:07 | Demos | flaviu: I will just use a swapfile if I need it |
01:59:15 | flaviu | For me no swap has worked pretty well |
01:59:20 | reactormonk | Demos, that's how I do it |
01:59:35 | reactormonk | except if memory usage is > 90% because I'm looking at too many pictures in reddit, the system freezes |
02:00:34 | flaviu | I have enough ram that if I run out of memory, its because a program is broken. Swap makes everything grind to a halt, and without it the OOM killer fixes things instantly |
02:00:55 | reactormonk | flaviu, only got 4GB |
02:00:59 | reactormonk | wait, 8 |
02:01:05 | reactormonk | how the fuck can I run outta ram :-( |
02:01:12 | flaviu | What distro? |
02:02:53 | Styled | there is mention on the site that it is possible to comment out a block of code with when false: statement but no example. How to do that exactly? |
02:03:46 | flaviu | Styled: Exactly like it sounds.https://github.com/Araq/Nimrod/blob/3e8f8d10d24200245f65a56c8bfe7a7df78f0271/tests/generics/tgenericrefs.nim |
02:03:47 | EXetoC | http://build.nimrod-lang.org/docs/manual.html#when-statement_toc |
02:05:06 | Styled | okay that was easy |
02:05:13 | Styled | just had to indent |
02:05:15 | * | brson quit (Quit: leaving) |
02:05:40 | EXetoC | yup, block as block |
02:05:44 | * | brson joined #nimrod |
02:06:36 | Styled | how about using the ''' ''' for commenting out blocks easy since the """ """ is already in use. |
02:07:00 | renesac | you can use discard """ """ |
02:07:23 | reactormonk | flaviu, an arch with kde on top |
02:07:38 | renesac | no need for ''' ''' for comments |
02:08:20 | Demos | flaviu: how do I get the OOM killer? |
02:08:43 | flaviu | Demos: Use linux :P |
02:08:44 | flaviu | http://www.oracle.com/technetwork/articles/servers-storage-dev/oom-killer-1911807.html |
02:09:03 | flaviu | I guess that link will let you configure it, IDK |
02:09:50 | Demos | I have linux but in OOM the system stops responding and I have to REISUB |
02:15:00 | flaviu | error: ‘true’ undeclared |
02:15:00 | flaviu | How does C work? |
02:15:50 | reactormonk | flaviu, 1 is true |
02:15:56 | reactormonk | except in bash, 0 is true |
02:16:29 | * | EXetoC quit (Quit: WeeChat 0.4.3) |
02:16:46 | flaviu | Well, I can understand that. But really, why not make 1 a sucessful program return code? |
02:17:33 | Demos | for returns I use EXIT_FAILURE and EXIT_SUCCESS |
02:17:33 | * | brson_ joined #nimrod |
02:17:40 | Demos | for maximum portability |
02:18:00 | Demos | and because it means I do not have to remember what zero or one mean |
02:18:26 | * | brson quit (Ping timeout: 252 seconds) |
02:19:26 | flaviu | Demos: The OOM killer works fine for me |
02:19:45 | flaviu | I malloc'd a ton, and it killed the program quickly |
02:23:40 | * | brson joined #nimrod |
02:25:04 | * | brson quit (Client Quit) |
02:25:18 | * | brson joined #nimrod |
02:26:35 | * | brson_ quit (Read error: Connection reset by peer) |
02:30:32 | * | brson quit (Ping timeout: 252 seconds) |
02:31:26 | * | brson joined #nimrod |
02:41:59 | * | brson quit (Ping timeout: 250 seconds) |
02:43:55 | * | brson joined #nimrod |
02:55:53 | * | flaviu quit (Quit: Leaving.) |
02:56:05 | * | flaviu joined #nimrod |
03:29:01 | Skrylar | wheee, i think i finally got the stemmer working |
03:29:14 | Skrylar | and now my GCC has grown a weird annoyance where it says i don't have a drive installed |
03:38:48 | * | xenagi quit (Quit: Leaving) |
03:47:32 | * | rta quit (Ping timeout: 246 seconds) |
03:52:00 | * | brson quit (Quit: leaving) |
03:57:28 | fowl | Skrylar, you must perform the ritual, give your hard drives to gnu |
03:58:03 | flaviu | Why does GCC care about hard drives? |
03:58:53 | runvnc | lol |
04:04:37 | Skrylar | fowl, flaviu: because somebody derped with the latest mingw builds and got their I: drive in the build list apparently |
04:04:58 | Skrylar | so now a bunch of installed GCCs are trying to read someone's home folder that doesn't exist |
04:09:09 | fowl | compiling things on windows is too much of a chore for me |
04:09:36 | * | brweber2 quit (Quit: brweber2) |
04:10:40 | Skrylar | fowl: i don't have too many problems unless derpage is occuring |
04:15:02 | * | flaviu quit (Ping timeout: 252 seconds) |
04:36:19 | * | psquid quit (Ping timeout: 252 seconds) |
04:52:22 | Styled | no methods for class objects... then how to write a method for an object? |
04:53:31 | runvnc | styled did you have a chance to read the nimrod manual or nimrod tutorial? |
04:54:01 | runvnc | to write a method for a class, ie a proc |
04:54:28 | runvnc | proc read*(db: TRedis):PStringTable = |
04:54:33 | runvnc | that goes in your module definition |
04:54:38 | runvnc | by using the asterisk * |
04:54:45 | runvnc | it means that proc is exposed |
04:55:04 | runvnc | the way nimrod works, when you write something like myDB.read() |
04:55:14 | runvnc | its the same as if you wrote read(myDB) |
04:55:34 | runvnc | in that example myDB is a TRedis |
04:55:50 | runvnc | or a TRedisDB was actually what I was trying to write but same difference |
04:56:24 | runvnc | so calling a method on an object is the same as calling a procedure and giving the object as the first argument |
04:56:26 | runvnc | get it? |
04:56:58 | Demos | there is also the method keyword, which makes the method use multiple dispatch (on all params) |
04:57:22 | Styled | runvnc, yes it has clicked. Thanks |
04:57:43 | runvnc | ok thanks demos didn't know about that |
04:57:51 | runvnc | seems like there are a lot of features for me to learn |
04:57:54 | runvnc | np styled |
04:58:08 | runvnc | maybe I should read the manual lol |
04:58:39 | Demos | I doubt methods work all that well atm |
04:58:52 | Styled | what is the meaning of multiple dispatch |
04:59:14 | runvnc | not particular to nimrod, google it, thats what I did |
04:59:31 | Demos | calling something like foo(a,b,c,d) will use the dynamic types of a,b,c, and d to look up the correct function to call |
04:59:54 | Demos | like virtual methods in other languages but it works on all the parameters |
05:00:14 | Demos | which I think is how most people expect it to work actually |
05:06:45 | * | askatasuna quit (Ping timeout: 252 seconds) |
05:08:41 | * | Demos quit (Remote host closed the connection) |
05:13:51 | * | rta joined #nimrod |
05:31:09 | fowl | what is everybodys lua and luajit dll names |
05:32:13 | runvnc | you mean actual dll not including linux right |
05:32:19 | runvnc | anyway I dont think I installed lua |
05:32:20 | fowl | yea |
05:37:35 | fowl | thats cool |
05:45:56 | Styled | TProc = (proc (x, y: int)) if i made var z: TProc how to use z? |
05:46:56 | fowl | Styled, http://build.nimrod-lang.org/docs/manual.html#procedural-type |
05:48:31 | fowl | Styled, it would be a function reference, it could be nil, you call it with z(arg_x, arg_y) |
06:08:45 | * | nande quit (Read error: Connection reset by peer) |
06:11:12 | * | DAddYE joined #nimrod |
06:13:27 | * | Styled quit (Ping timeout: 250 seconds) |
06:42:21 | * | DAddYE quit (Ping timeout: 276 seconds) |
06:47:12 | * | ehaliewicz joined #nimrod |
06:57:29 | * | Matthias247 joined #nimrod |
07:39:26 | * | Matthias247 quit (Read error: Connection reset by peer) |
08:20:00 | fowl | @ Araq this issue still pops up and is annoying https://github.com/Araq/Nimrod/issues/1072 |
09:05:14 | * | Universety joined #nimrod |
09:07:24 | Universety | Device = createDevice(EDT_OPENGL, dimension2d<u32>(800,600),32,false,false,false,&receiver); code line from irrlicht 3d engine. Is it possible to tranlsate dimension2d<u32>(800,600) into nimrod code? |
09:11:16 | * | taapa left #nimrod (#nimrod) |
09:42:58 | * | zahary_ joined #nimrod |
09:43:40 | zahary_ | hey, is 0.9.4 out already? |
09:52:31 | BitPuffin | don't think so |
09:53:20 | zahary_ | don't forget that we need to take a look at the mac homebrew problem - I'm extremely busy this week, but I can try to do it tonigh |
09:54:30 | BitPuffin | I'm just hoping my template issue doesn't show up for anyone else |
09:54:40 | BitPuffin | really difficult to debug |
10:01:51 | * | io2 joined #nimrod |
10:02:44 | BitPuffin | zahary_: there is also still the ordinal type expected thing |
10:04:06 | BitPuffin | lol |
10:04:08 | BitPuffin | lib/pure/math.nim(197, 7) Hint: 'math.gettime(dummy: ptr cint): cint' is declared but not used [XDeclaredButNotUsed] |
10:17:58 | runvnc | I switched gettime with epochTime from the time(s) module |
10:18:06 | runvnc | so probably my fault for not taking that out of the file |
10:19:28 | runvnc | oh but it is still being used in the test so I am not sure why it would say not used |
10:20:47 | runvnc | BitPuffin: or is this the 'orginal type expected thing' |
10:31:37 | * | ehaliewicz quit (Ping timeout: 252 seconds) |
10:34:00 | BitPuffin | runvnc: do you get that error? |
10:54:41 | * | faassen joined #nimrod |
10:55:24 | * | EXetoC joined #nimrod |
10:55:48 | runvnc | BitPuffin: actually no I do not |
10:55:52 | runvnc | when I run nimrod c math.nim |
11:03:36 | * | Matthias247 joined #nimrod |
11:04:13 | * | Matthias247 quit (Read error: Connection reset by peer) |
11:05:26 | * | Matthias247 joined #nimrod |
11:09:42 | * | Universety quit (Ping timeout: 258 seconds) |
11:39:24 | BitPuffin | runvnc: then no |
12:37:36 | * | brweber2 joined #nimrod |
12:41:03 | BitPuffin | Araq: it would be nice if the compiler worked with linagl before we release the compiler |
13:02:18 | * | askatasuna joined #nimrod |
13:05:59 | * | Skrylar quit (Ping timeout: 246 seconds) |
13:23:14 | * | brweber2 quit (Quit: brweber2) |
13:36:20 | * | darkf quit (Quit: Leaving) |
13:46:26 | * | [1]Endy joined #nimrod |
14:13:04 | * | brweber2 joined #nimrod |
14:13:26 | * | brweber2 quit (Client Quit) |
14:15:06 | * | BitPuffin quit (Ping timeout: 240 seconds) |
14:27:58 | * | [2]Endy joined #nimrod |
14:31:30 | * | [1]Endy quit (Ping timeout: 240 seconds) |
14:39:11 | reactormonk | anyone needs a bit of git help? http://git-man-page-generator.lokaltog.net/ |
14:39:47 | reactormonk | fowl, http://git-man-page-generator.lokaltog.net/ |
14:54:50 | * | cark quit (Ping timeout: 246 seconds) |
14:55:45 | * | cark joined #nimrod |
15:00:15 | * | isenmann quit (Quit: Leaving.) |
15:16:02 | * | Mat3 joined #nimrod |
15:16:12 | Mat3 | hllo everybody |
15:16:15 | Mat3 | ^hello |
15:29:51 | * | faassen quit (Quit: Leaving.) |
15:30:34 | * | BitPuffin joined #nimrod |
15:59:53 | dom96 | hello |
16:12:15 | * | rta quit (Ping timeout: 252 seconds) |
16:25:32 | * | rta joined #nimrod |
16:26:42 | Mat3 | what's new |
16:27:25 | dom96 | git repo has been purged |
16:30:21 | * | Demos joined #nimrod |
16:30:23 | Mat3 | after reading the logs about these immense GIT related problems, wouldn't a switch to Mercurial or Fossil be better ? |
16:30:33 | Demos | EXetoC: ping |
16:30:42 | Mat3 | hi Demos |
16:30:46 | Demos | Mat3: not really, darcs may be able to handle it |
16:30:49 | Demos | but erm darcs |
16:31:33 | Mat3 | darcs ? |
16:31:44 | Demos | DVCS with no notion of time |
16:32:12 | dom96 | Are there any DVCS which handle binaries without a huge increase in repo size? |
16:32:28 | Demos | well Hg's largefiles, and git annex |
16:32:42 | Demos | but for us it was just a mistake to check in those files |
16:32:47 | Demos | they were not binaries afaik |
16:32:54 | EXetoC | Demos |
16:32:56 | dom96 | they were |
16:32:59 | Demos | oh |
16:33:00 | EXetoC | another glfw question? |
16:33:05 | Demos | EXetoC: well it does not compile |
16:33:20 | dom96 | But yeah, it's not a git problem. The problem is that we committed binaries |
16:33:21 | Demos | line 283 var handles = cast[ptr array[count.int - 1, PMonitorHandle]](handlesPtr) |
16:33:26 | Demos | suprised that ever worked |
16:33:27 | Mat3 | hi EXetoC |
16:33:49 | Demos | should be cast[ptr array[1000000, PMonitorHandle](handlesPtr) or something |
16:34:40 | Mat3 | dom96: I see the problem (do not understand why this was necessary however) |
16:34:48 | EXetoC | Mat3: hi |
16:34:55 | EXetoC | Demos: something must've changed very recently then |
16:35:32 | Demos | error is "can not eval at compile time "count" |
16:36:45 | Demos | which is good because it is a system dependent FFI call, strange that it ever worked |
16:36:57 | * | flaviu joined #nimrod |
16:41:16 | EXetoC | bounds checking should be possible in this case in one way or another imo |
16:41:18 | EXetoC | I'll fix this |
16:41:35 | dom96 | Mat3: What do you not understand? Why we committed binaries? |
16:43:05 | * | Mat3 quit (Ping timeout: 250 seconds) |
16:43:56 | Demos | EXetoC: not really, you only know the length at runtime. You bounds check later when you fill out the seq |
16:44:55 | EXetoC | bounds-checking is still relevant |
16:49:13 | EXetoC | Araq: was "ptr array[runtimeRange, T]" indeed a bug? |
16:50:29 | EXetoC | done |
16:53:37 | Demos | is it in babel |
16:55:48 | EXetoC | nim-glfw? it has been for a couple of months |
16:56:27 | Demos | no the fix |
16:57:58 | EXetoC | it has been pushed to github, so yes it's available via babel too |
17:13:17 | * | Demos quit (Read error: Connection reset by peer) |
17:15:00 | * | DAddYE joined #nimrod |
17:17:20 | * | foodoo joined #nimrod |
17:20:40 | * | q66 joined #nimrod |
17:20:40 | * | q66 quit (Changing host) |
17:20:40 | * | q66 joined #nimrod |
17:22:59 | Varriount | fowl: Ping |
17:33:38 | * | q66 quit (Ping timeout: 252 seconds) |
17:35:25 | * | Mat3 joined #nimrod |
17:36:58 | * | q66 joined #nimrod |
17:36:58 | * | q66 quit (Changing host) |
17:36:58 | * | q66 joined #nimrod |
17:39:08 | * | [2]Endy quit (Ping timeout: 252 seconds) |
17:44:36 | * | DAddYE quit (Remote host closed the connection) |
17:45:51 | * | DAddYE joined #nimrod |
17:46:46 | * | Mat3 quit (Ping timeout: 245 seconds) |
17:46:54 | * | CARAM joined #nimrod |
17:50:30 | fowl | Varriount, pong |
17:52:03 | Varriount | fowl: Your allegro library lacks stuff for windows, such as dll names. :/ |
18:00:05 | fowl | Varriount, i know, BitPuffin dropped dropped the ball |
18:06:57 | BitPuffin | fowl: how is that my fault lol |
18:07:00 | BitPuffin | I can still get on it |
18:07:02 | BitPuffin | chill dawg |
18:07:04 | EXetoC | "<param group="BufferUsageARB"><ptype>GLenum</ptype> <name>usage</name> </param>". that's the only place where this group appears. not very helpful |
18:12:29 | * | Mat3 joined #nimrod |
18:24:27 | * | Demos joined #nimrod |
18:25:48 | Demos | yall can just explicitly link to the dll on 'doze |
18:26:30 | * | Skrylar joined #nimrod |
18:26:41 | * | brson joined #nimrod |
18:29:02 | Skrylar | meep |
18:33:43 | reactormonk | Mat3, make it easier to clone it over, without requiring 200MB to be transferred over the wire |
18:33:55 | EXetoC | bacon |
18:34:01 | reactormonk | innuendo |
18:34:42 | reactormonk | I'll give whoever understands the connection between those two words a few isk. |
18:35:15 | EXetoC | bacon and innuendo? |
18:35:46 | Skrylar | your silly eve currency |
18:35:59 | dom96 | how much? |
18:36:02 | flaviu | reactormonk: Google says https://www.youtube.com/watch?v=vmZQXyWaoIg |
18:37:34 | * | dom96 should tweet about the purge |
18:38:26 | Skrylar | dom96: do we have fast string searching in a module already? |
18:38:46 | dom96 | I don't think so, no. |
18:38:51 | Skrylar | blerp. |
18:38:55 | Skrylar | time to port one over |
18:40:50 | BitPuffin | I know isk |
18:41:01 | Mat3 | reactormonk: As long as compilation is not affected this reads great |
18:41:30 | Varriount | Mat3: All the change did was remove bad stuff from git's history |
18:42:07 | Varriount | Mat3: And lead me to send out 38 emails, 18 issues, and 1 website comment |
18:43:08 | dom96 | Varriount: Thanks for doing that btw. |
18:44:55 | Mat3 | Varriount: Good job ! |
18:45:26 | * | Mat3 hope the translation is right |
18:45:30 | Varriount | Gotta go now, Calculus calls. |
18:46:43 | * | ics quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
18:50:11 | Skrylar | fowl: when you did the binding for sdl2, did you just get it to compile or did you rename all the identifiers and whatnot to blend in? |
18:53:51 | * | Mat3 is now known as Mat3-bbl |
18:53:55 | * | Mat3-bbl quit (Quit: Verlassend) |
18:55:31 | Demos | reactormonk: is it a reference to the ol' log monitoring programs. |
18:57:27 | fowl | Skrylar, i ran it through c2nim and removed prefixes (SDL_RenderGetLogicalSize => GetLogicalSize) |
18:57:39 | Skrylar | ah |
18:57:45 | Skrylar | i tried to c2nim it and c2nim choked |
18:58:40 | Demos | you usually have to de-macro the header |
18:59:02 | EXetoC | partially at least |
18:59:05 | Skrylar | i usually just pull out vim and start doing it by hand |
18:59:24 | Demos | yeah, I generated a header for libpng from the libpng(3) manpage |
18:59:29 | Demos | that worked "OK" |
18:59:39 | Demos | except that sometimes the manpage listed things that did not actually exist |
18:59:43 | Demos | or had a different ABI |
18:59:58 | Skrylar | if you know how to use macros and vim expressions its not *that* bad, and you can clean it up so it acts nimrodd-y |
19:00:14 | Demos | I would really like wrappers to just keep all the C names |
19:00:36 | Skrylar | don't use mine then :o |
19:00:46 | Demos | write a higher level nimrodic wrapper if you really want that kind of thing |
19:02:45 | Demos | I like being able to just use the C lib's docs and not have to wonder how exactly all the functions were unmangled |
19:03:09 | Demos | actually can c2nim's unmangler handle c++ name mangleing, for picking the symbol to import? |
19:03:29 | * | askatasuna quit (Ping timeout: 252 seconds) |
19:05:53 | fowl | Demos, no\ |
19:07:50 | reactormonk | Demos, nope |
19:12:09 | * | Demos quit (Ping timeout: 250 seconds) |
19:12:46 | reactormonk | EXetoC, yup. |
19:14:00 | * | nande joined #nimrod |
19:20:46 | * | askatasuna joined #nimrod |
19:47:50 | * | Mat3 joined #nimrod |
20:00:24 | * | foodoo quit (Quit: leaving) |
20:23:08 | * | Demos joined #nimrod |
20:26:46 | * | Matthias247 quit (Ping timeout: 245 seconds) |
20:33:17 | flaviu | This is a bug, right? https://gist.github.com/flaviut/10420337 |
20:33:36 | * | Matthias247 joined #nimrod |
20:33:41 | flaviu | If I replace `accm =` with `discard`, everything works |
20:35:53 | reactormonk | flaviu, what is `pos' exactly? an integer in the range between 0 and 15? |
20:36:23 | flaviu | Yes, it should be |
20:37:34 | flaviu | But the assertion clearly shows that it is not in that range, which baffles me. The increment is designed to keep it in the correct range |
20:38:41 | Araq | flaviu: it's a weird bug indeed |
20:38:49 | Araq | report it please |
20:42:30 | flaviu | Ok, #1077 |
20:46:40 | * | feature joined #nimrod |
20:47:36 | Araq | hi feature welcome |
20:47:53 | feature | hi |
20:49:46 | feature | is it to make nimrod case sensitive? |
20:51:28 | feature | difficult |
20:52:23 | Araq | get the recent github version and use --cs:partial |
20:52:39 | Araq | and come back to tell us whether you like this compromise |
20:56:01 | feature | it's good but var v_v = 1 and var vv = 1 redeclare I'd like v_v to be unique too |
20:57:35 | Araq | why? |
20:57:50 | feature | v_v is not vv |
20:58:03 | flaviu | Is github buggy for anyone else? |
20:58:14 | Demos | having v_v and vv is probably not a great idea |
20:58:17 | Demos | pick a better name |
20:58:24 | Araq | startswith is starts_with |
20:58:31 | Araq | isupper is is_upper |
20:58:50 | Araq | having both to denote different things is absurd |
20:59:17 | * | Skrylar pushes feature in to a small cardboard box |
20:59:40 | dom96 | flaviu: There was a bug I encountered with the search page, what in particular is buggy for you? |
20:59:59 | flaviu | A few miniutes ago, there was no styling |
21:00:41 | flaviu | It also isn't able to count the number of commits very well |
21:00:57 | feature | if you put a poll on your site and ask the question should v_v be vv I think most will choose no. |
21:01:33 | * | ehaliewicz joined #nimrod |
21:01:42 | renesac | feature, if you import a library that defines functions_like_this |
21:02:00 | feature | since nimrod goes down to c and c sees v_v as v_v and not vv so should nimrod |
21:02:00 | Demos | but if we asked "should someone use v_v and vv in the same scope" the answer would also be no |
21:02:04 | renesac | but your style is functionsLikeThis |
21:02:16 | renesac | would't you like to keep using your sytle? |
21:02:18 | EXetoC | feature: I don't think that matters |
21:02:38 | Demos | nimrod is not C. If you wanted everything to just be like C you should use C |
21:02:39 | Mat3 | oO |
21:03:17 | feature | python v_v is v_v every language I know v_v is v_v and not vv |
21:03:37 | renesac | feature, so nimrod can't be different? |
21:03:40 | flaviu | feature: java, c# |
21:03:42 | EXetoC | I don't like that reasoning |
21:03:45 | Skrylar | Okay. To save time: People already whined about v_v -> vv, people already posted about it, Araq already tried it, and something like half the current nimrod users don't want to change everything to appease C peoples, and there's already been a declaration that overhauling changes like that are veto'd |
21:03:54 | Skrylar | No its not hard, no its not happening |
21:06:02 | feature | I_like Ilike I_like is more clear here |
21:06:37 | flaviu | feature: I think you're alone in wanting that |
21:06:38 | renesac | feature, when interfacing with C you can chose how to name the function, otherwise it will take the name as you written (style sensitive and all) and export it to c |
21:06:42 | EXetoC | I rarely see such identifiers |
21:06:59 | Demos | you could use vv and v⎽v |
21:07:07 | Demos | that was U+23BD |
21:07:14 | Demos | I would not encourage you to do that though |
21:07:14 | renesac | feature, you advocate to use I_like Ilike I_like in the same scope? |
21:07:46 | feature | yes for twins |
21:07:54 | EXetoC | ? |
21:08:36 | renesac | i_like1, i_like2, i_like3 |
21:09:25 | feature | if you use c headers it's more work changing vars if some programmer used _ |
21:09:49 | renesac | give an example |
21:09:54 | renesac | real example |
21:09:58 | renesac | it is bad style |
21:10:10 | Demos | yes, you have to change some stuff, usually people add a prefix like cGL_INTEGER or whatnot |
21:10:48 | Demos | you can not expect to just use a C header verbatum in anything is not C or an (almost) superset of C |
21:12:14 | feature | if I want to use v_v and vv as different vars it's my right as a programmer to do so. It's a limitation that does not need to be there. |
21:13:02 | renesac | if I want to mantain a consistent style in my code it is my right to do so |
21:13:12 | Araq | no, it is not your right, I could have made _ an invalid character for identifiers to make you use camelCase |
21:13:47 | Araq | Lisp for instance supports '-' and so-this-is-possible. C does not. |
21:13:52 | Skrylar | ... |
21:13:58 | Skrylar | "v_v -> vv" is not a limitation |
21:14:00 | Araq | it is your right to use-this in C? |
21:14:04 | Skrylar | style sensitivity is the limitation |
21:14:06 | Araq | no clearly not. |
21:14:10 | feature | - can be mistaken for minus bad choice |
21:14:11 | renesac | yeah, - is much prettier than _ |
21:14:19 | flaviu | feature: Not in lisp |
21:14:20 | renesac | feature, not in lisp |
21:14:20 | EXetoC | feature: depends on the language |
21:14:22 | Skrylar | Okay. I'm just going to say this before throwing my hands up |
21:14:25 | EXetoC | let's allow almost everything |
21:14:30 | feature | i don't like lisp |
21:14:51 | EXetoC | that's besides the point |
21:14:52 | Skrylar | (EXISTED-BEFORE-LOWERCASE-ASCII 'LISP) ; HOW DID WE EVER GET ANY WORK DONE |
21:15:37 | Demos | you could have v(U+FEFF)v and v_v but again |
21:16:16 | Demos | OOOOH I bet you could have a right to left override in a var name |
21:16:45 | feature | put a poll somewhere that's the only way you'll know for sure. |
21:17:09 | Skrylar | I am now bored, and this continual "i hate it because its not C" vs "its not C" that will go on for like ten god damn hours is going to make me rude; so i'm going to step out for a bit |
21:17:10 | flaviu | This discussion is just bikeshedding |
21:17:14 | * | Matthias247 quit (Read error: Connection reset by peer) |
21:17:16 | renesac | feature, many will vote w/o even trying to write a single toy program in nimrod |
21:17:26 | renesac | with just their blind prejudice |
21:17:41 | renesac | of 'nimrod is different, we should pin it down to be equal to others' |
21:17:46 | Mat3 | feature: exist there any argument other than postulates as you do not like a specific language or that it is your right to choose a specific naming convention ? |
21:17:48 | feature | go the python route with regards to case and not pascal :) |
21:17:52 | * | Skrylar quit () |
21:18:03 | * | samba_ joined #nimrod |
21:18:28 | EXetoC | we should've cloned C though, with whitespace-indentation as the only exception |
21:18:45 | Araq | hi samba_ welcome |
21:20:41 | * | samba_ quit (Client Quit) |
21:20:43 | feature | talking about underscores and samba |
21:20:51 | feature | imagine now samba and samba_ |
21:20:53 | feature | two same nicks |
21:21:01 | feature | if irc didn't recognize them as different |
21:21:02 | feature | lol |
21:21:43 | Demos | tbh almost all variations like that are people's clients falling back to soemthing else because the person was already logged in. IE they are the same person |
21:21:54 | Araq | *shrug* right now we have zahary and zahary_ and they are the same person ... |
21:22:11 | Araq | and if not that would be confusing |
21:22:14 | dom96 | Yeah, IRC sure is filled with two different people who have the same nicks but append a couple of underscores to distinguish between each other. |
21:22:16 | feature | but you see it is used and they are not absurd |
21:22:46 | Araq | I see it is used and they *denote the same person* and everything else *is* absurd |
21:22:47 | Demos | IRC is also not a programming language |
21:23:00 | Demos | and in nimrod all variations denote the same "thing" |
21:23:05 | flaviu | feature: I don't think that anyone is going to change their mind |
21:23:46 | Demos | should we prefix everything with __CHASNOSCOPECONTROL_MYLIB_... |
21:23:47 | Araq | shoudl I assume bstrie_ is a different guy from bstrie who typically is in this channel? that's just absurd. |
21:24:19 | feature | hi samba_ welcome why didn't you write hi samba welcome :) |
21:24:21 | Demos | anyhow I gotta go herd some cats through the obsticle cource that is my chemestry lab |
21:24:35 | feature | I think I have made my point |
21:24:43 | dom96 | feature: Because IRC is not style insensitive. |
21:25:13 | Demos | otrher languages have been case insensitive so it will hardly end the world |
21:25:20 | Mat3 | EXetoC: Be more consequentive: A Basic clone with indentation but line numbers (and no higher-level support for structured programming) helps feeling some C programmers at home :-> |
21:26:05 | Demos | also features are unlikely to ever be decided by vote |
21:27:12 | * | Demos quit (Remote host closed the connection) |
21:27:31 | renesac | feature, what have you written in nimrod? |
21:30:40 | feature | renesac, several little programs |
21:36:16 | Mat3 | ciao |
21:36:22 | * | Mat3 quit (Quit: Verlassend) |
21:37:01 | flaviu | feature: Fork nimrod and delete compiler/idents.nim:38-39 |
21:37:26 | flaviu | https://github.com/Araq/Nimrod/blob/devel/compiler/idents.nim#L38 |
21:38:20 | Araq | flaviu: nice. when are you up to fixing bugs related to lambda lifting? :D |
21:38:25 | Araq | *to fix |
21:39:17 | flaviu | Thanks, but I haven't gone near there |
21:39:46 | flaviu | I'm going to start off easy, maybe fix 180 |
21:39:54 | flaviu | issue #180 |
21:42:24 | feature | flaviu, interesting how 1_1 1_2 1_3 is used in the nimrod dirs. By the way why so many replicas of compiler_indents.c? |
21:43:29 | flaviu | That's the generated C sources |
21:44:25 | bstrie_ | Araq: you've found me out! I'm just here to besmirch bstrie's good name |
21:49:56 | * | bstrie_ is now known as bstrie |
21:54:11 | reactormonk | feature, I think with --cs:full, you get your full case sensitivity |
21:54:25 | reactormonk | will will most likely break the compiler. |
21:55:55 | Araq | reactormonk: --cs:full has not been implemented but the compiler itself should be fully case consistent by now |
21:56:09 | Araq | so it shouldn't break the compiler at all |
21:56:23 | reactormonk | Araq, cool |
21:56:27 | reactormonk | but libs will break |
21:56:35 | reactormonk | unless you can actually compile them differently ^^ |
21:58:01 | reactormonk | feature, just code nimrod like it were case-sensitive. If you actually get into problems, reconsider your naming scheme. |
21:59:51 | * | askatasuna quit (Ping timeout: 250 seconds) |
22:00:34 | OrionPK | how do I convert a GMT time to local time? |
22:01:47 | OrionPK | blah hold up.. it's just giving me the complete wrong timestamp |
22:02:02 | OrionPK | nothing to do w/ nimrod, disregard :D |
22:04:52 | flaviu | I'm not sure I understand whats going on in system/arithm.nim mulInt64(a, b:int64) |
22:05:10 | OrionPK | it's giving me GMT (+5), like it's adjusting for local time wtf |
22:05:16 | OrionPK | I'm GMT-5 |
22:05:21 | OrionPK | and it's giving me GMT +5... why.,.. |
22:08:02 | flaviu | Oh, I see. Float is being used to check for overflow |
22:10:36 | Araq | flaviu: I copied this code from Python |
22:14:06 | * | Demos joined #nimrod |
22:22:26 | * | io2 quit (Quit: ...take irc away, what are you? genius, billionaire, playboy, philanthropist) |
22:26:46 | * | Demos quit (Ping timeout: 245 seconds) |
22:35:56 | * | brson quit (Ping timeout: 245 seconds) |
22:43:25 | Varriount | dom96: Someone should code a github commit bot which checks commits to see if they cause any tests to fail. |
22:43:54 | * | brson joined #nimrod |
22:43:56 | dom96 | Varriount: Nimbuild should do that and it will. |
22:44:20 | Varriount | dom96: It would need another copy of the repo to work on, wouldn't it? |
22:45:01 | dom96 | wait, I misread. Now i'm confused. |
22:45:20 | dom96 | Don't we already do that? |
22:45:48 | Araq | good night |
22:46:33 | flaviu | dom96: Something like this I think: https://github.com/spring-projects/spring-xd/pull/729 |
22:46:37 | flaviu | Scroll to the bottom |
22:46:39 | Varriount | dom96: A bot which looks at pull requests before they are pulled in, checks them for style consistancy, and runs them against tests |
22:47:01 | dom96 | oh, then I did understand you correctly the first time heh. |
22:47:26 | dom96 | I think you can pull the changes from another repo into a branch. |
22:49:18 | Varriount | dom96: Currently, how do the hub/bots react when two commits are pushed to the main repo in succession? |
22:49:38 | Varriount | Say, 3 minutes apart. |
22:49:38 | dom96 | The commits are queued. |
22:49:43 | Varriount | Where? |
22:49:48 | dom96 | By the website. |
22:50:18 | Varriount | Hm. |
22:51:11 | dom96 | Before these new features are implemented I first need to change the database. |
22:52:35 | dom96 | The current db schema wasn't designed for the way that NimBuild currently displays the build information. |
22:53:05 | * | darkf joined #nimrod |
23:11:27 | dom96 | Another nice thing to have would be something which verifies the PRs made on nimrod-code/packages |
23:16:01 | * | xenagi joined #nimrod |
23:19:44 | flaviu | I added marshal as a dependency to modules for debugging, and it fails because it depends on typeinfo, and `Error: undeclared identifier: 'Pointer'` |
23:20:45 | flaviu | I guess my only option is to print the thing manually? |
23:22:51 | dom96 | Are you trying to debug using endb? |
23:23:23 | flaviu | I tried, but last time I did it crashed |
23:23:56 | dom96 | Personally I rarely use endb/gdb for debugging. |
23:24:13 | dom96 | I just use excessive amounts of 'echo' |
23:25:35 | flaviu | Yes, but I can't print out an object tree with echo |
23:26:02 | flaviu | I've been using echo($$something), but loading marshal messes up the compiler build order and crashes |
23:26:13 | dom96 | have you tried repr? |
23:26:45 | flaviu | Wow, I haven't noticed that |
23:26:55 | flaviu | That makes everything much easier |
23:27:21 | dom96 | it may be nicer to write your own $ proc for your object tree |
23:27:35 | flaviu | IMO, the stdlib needs to be modularized |
23:27:52 | dom96 | If you're digging in the compiler then it already has some procs which do that, they are named 'debug' |
23:27:57 | * | askatasuna joined #nimrod |
23:28:59 | dom96 | I guess you're talking about system.nim? |
23:29:05 | flaviu | Yes |
23:29:14 | dom96 | Yeah, I agree. |
23:29:23 | dom96 | It's a really large module now. |
23:29:32 | dom96 | In reality it is modular. |
23:29:44 | dom96 | It includes the modules though. |
23:29:54 | dom96 | and this sucks for docs |
23:30:02 | flaviu | `using` is really buggy, right? |
23:30:42 | flaviu | I mean `include` |
23:30:54 | dom96 | No. Why would it be? |
23:33:23 | flaviu | I thought I had read somewhere it caused issues. |
23:36:44 | runvnc | hello dom |
23:36:54 | runvnc | is there anything else you want me to fix in redis besides the thing you mentioned |
23:36:55 | dom96 | hi runvnc |
23:37:21 | dom96 | I don't think so, but let me double check. |
23:37:46 | runvnc | ok no rush you can look at it whenever you get to it |
23:37:55 | runvnc | I am going to fix the thing you said in a minute |
23:37:59 | dom96 | why are you using a 'ref string'? |
23:39:22 | runvnc | hm maybe I don't. I thought I needed it because of the var thing |
23:39:45 | runvnc | well if it was not a ref string on TRedis |
23:39:57 | runvnc | but now its on the ref TPipeline so I guess I dont need it? |
23:40:22 | runvnc | or originally I think I put it on TRedis by itself then I moved it to TPipeline |
23:40:34 | dom96 | You should never need it. |
23:40:34 | runvnc | I will try to take it off |
23:41:07 | runvnc | well, I need the TPipeline to be a ref because otherwise I have to change all of the signatures to var TRedis or a pointer |
23:41:26 | dom96 | No, that's fine. I mean you should never need a ref string. |
23:41:34 | runvnc | k |
23:42:10 | BitPuffin | dom96: I always ref string |
23:42:45 | dom96 | BitPuffin: you do? |
23:43:13 | BitPuffin | dom96: nah |
23:43:25 | BitPuffin | but I wish the compiler worked, so I could do some gamedev :( |
23:43:36 | runvnc | lol |
23:44:54 | flaviu | BitPuffin: The compiler does work. Are you being polite enough in your code? |
23:45:25 | BitPuffin | flaviu: I'm writing awesome code |
23:45:40 | flaviu | Araq seems to have added a feature that requires at least 1/100 lines to have please on it for the code to compile |
23:46:37 | dom96 | Yeah, and once you become best friends with the compiler by being nice to it. It will fix all your bugs for you. |
23:48:29 | flaviu | Lets actually do that next April 1st |
23:50:41 | dom96 | runvnc: You should also move the readLine stuff in parseStatus/parseInteger somewhere else instead of introducing a 'lineIn' arg. |
23:51:25 | BitPuffin | dom96: problem is that the compiler really hates me |
23:51:49 | BitPuffin | I probably have the highest rate of running in to badass bugs/hour out of everyone |
23:52:38 | flaviu | BitPuffin: And not very many bug reports |
23:52:48 | dom96 | runvnc: I'll have to review it tomorrow. 1am is too late for review. |
23:53:32 | dom96 | So I won't pull it today |
23:53:46 | runvnc | yeah no rush |
23:53:53 | BitPuffin | flaviu: :P |
23:53:57 | runvnc | I will refactor the linein thing a bit |
23:54:05 | BitPuffin | that's because I am a pain in the ass in irc instead |
23:54:19 | dom96 | runvnc: I'm not sure I like what you've done with the parse* procs. |
23:54:41 | runvnc | well, let me explain why I changed it |
23:54:51 | dom96 | But i'm too tired to think of how it should be done. |
23:54:55 | runvnc | the thing is with multi |
23:55:08 | runvnc | its either I need to keep a stack with all of the expected returns |
23:55:21 | runvnc | or I need to just look at the first character and be able to handle any type of message |
23:55:44 | flaviu | BitPuffin: Really, make bug reports. Not everyone is in IRC constantly, and its really easy to forget about bugs reported in IRC |
23:56:00 | runvnc | I think there are probably plenty of redis clients that do it the way I did, where they use the first character to determine the message type, since obviously he designed it that way |
23:56:18 | dom96 | runvnc: yeah, that is how it should be done. |
23:56:29 | runvnc | you want me to change it to use a stack |
23:56:53 | dom96 | No. But I don't like that parseStatus is now used in two different ways. |
23:57:12 | runvnc | hm yeah that bothered me a bit too |
23:57:28 | dom96 | Perhaps you should split it into readStatus and parseStatus |
23:57:39 | dom96 | That will mean that you will need to change a lot of code though... |
23:57:42 | flaviu | Is it possible to apply a magic to a module? |
23:57:45 | dom96 | But sometimes it's necessary I guess |
23:58:04 | runvnc | yeah thats why I ended up doing that, didnt want to go through all of the message procs |
23:58:05 | dom96 | and then you can use parseStatus in your parseNext (which should actually be called readNext) |
23:58:22 | dom96 | it should be a simple find & replace though |
23:58:36 | runvnc | right |
23:59:13 | runvnc | thanks |
23:59:38 | dom96 | Sorry if I'm being too demanding. |
23:59:40 | runvnc | also next time I ask you about something at 1am please dont be shy to tell me to go away, I am in california and it just takes me awhile to get around |
23:59:59 | runvnc | so I just realized its like 1am over there |