00:05:32 | ekarlso- | flaviu: https://bpaste.net/show/3e8fde186348 looks right or ? |
00:06:33 | ekarlso- | nvm, it works! |
00:09:22 | BlaXpirit_ | ekarlso-, how are you generating salt? |
00:10:17 | ekarlso- | BlaXpirit_: nvm, it's working |
00:10:19 | ekarlso- | I had a typo |
00:10:33 | BlaXpirit_ | ekarlso-, no, I'm asking you for my own interest |
00:10:38 | BlaXpirit_ | how are you generating salt? |
00:12:21 | flaviu | BlaXpirit_: https://github.com/rg3/bcrypt |
00:12:32 | flaviu | I dunno what he does, but he does something |
00:12:56 | BlaXpirit_ | ok |
00:13:42 | ekarlso- | flaviu: .. I just did what flaviu has in his examples :p |
00:13:46 | ekarlso- | genSalt(12) |
00:14:03 | ekarlso- | ah, that part. |
00:17:40 | * | AFKMorpork is now known as AMorpork |
00:17:41 | * | Varriount|Mobile joined #nim |
00:18:38 | BlaXpirit_ | keyle, "To execute a program without having a shell involved, use the execProcess proc of the osproc module." |
00:19:06 | BlaXpirit_ | (thank goodness it at least exists in Nim, i started to worry) |
00:19:27 | * | jpoirier quit (Quit: Leaving) |
00:23:06 | * | Sergio965 quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
00:28:31 | * | jpoirier joined #nim |
00:29:37 | Mat4 | ciao |
00:29:54 | * | Mat4 left #nim (#nim) |
00:30:58 | * | Mimbus quit (Excess Flood) |
00:31:04 | * | Mimbus joined #nim |
00:31:29 | JinShil | Hello folks. I'm trying to get aporia to build on Arch Linux and it's telling me it can't find glib2 even though I have it installed through my package manager. Any suggestions? |
00:33:16 | * | adam_s quit (Quit: Leaving) |
00:42:27 | Varriount|Mobile | JinShil: Is glib2 in your path, as a dynamic library? |
00:43:48 | JinShil | Varriount|Mobile, I'm trying to determine that right now |
00:44:37 | JinShil | It doesn't appear it is, but I'm wondering what my pacman installed then. |
00:45:04 | keyle | ghosts :) |
00:45:11 | BlaXpirit_ | JinShil, installs fine here |
00:46:14 | JinShil | BLaXpirit_, it installs for me also, but I don't see the library anywhere. What's the actual file name? |
00:47:04 | wan | ~/.nimble/pkgs/gtk2-1.0/glib2.nim |
00:47:10 | BlaXpirit_ | JinShil, https://bpaste.net/raw/b7ee6cf0207b |
00:47:43 | BlaXpirit_ | libglib-2.0.so libgmodule-2.0.so libgobject-2.0.so are mentioned |
00:48:26 | BlaXpirit_ | all are part of glib2 |
00:50:02 | BlaXpirit_ | JinShil, aaah. aporia-git is definitely broken |
00:50:08 | BlaXpirit_ | if that's what you're getting ay |
00:50:10 | BlaXpirit_ | t |
00:51:18 | JinShil | It's broken? Should I git from a different branch? |
00:51:38 | BlaXpirit_ | JinShil, AUR PKGBUILD is broken |
00:51:54 | BlaXpirit_ | see bottom of my pastebin for how to install |
00:52:08 | JinShil | I can't just compile from a git clone? |
00:52:14 | BlaXpirit_ | why would you |
00:52:29 | BlaXpirit_ | "just" |
00:52:36 | BlaXpirit_ | if u can do everything in 1 line -_- |
00:52:41 | BlaXpirit_ | and it will actually work |
00:52:55 | JinShil | I thought "nim c aporia" would do it. That's what the readme says. |
00:54:24 | Araq | looks like we need to update the readme |
00:54:25 | JinShil | nimble |
00:54:39 | JinShil | wrong window |
00:55:34 | JinShil | Oh, I'll try nimble. I'm assuming I can compile that from a git clone, yes? |
00:55:40 | BlaXpirit_ | pacman -S nimble |
00:56:12 | JinShil | oh sweet |
00:56:16 | BlaXpirit_ | sure is |
00:56:27 | BlaXpirit_ | i definitely should go now |
00:56:40 | JinShil | BLaXpirit, thank you. |
00:57:15 | * | BlaXpirit_ quit (Quit: Quit Konversation) |
01:26:07 | * | HakanD joined #nim |
01:30:17 | * | HakanD quit (Ping timeout: 245 seconds) |
01:34:37 | * | onionhammer quit (Ping timeout: 244 seconds) |
01:55:51 | * | onionhammer joined #nim |
01:57:52 | * | ramnes_ is now known as ramnes |
02:05:04 | * | no_name quit (Remote host closed the connection) |
02:06:45 | * | keyle quit (Quit: leaving) |
02:07:35 | * | keyle joined #nim |
02:11:06 | * | z1y joined #nim |
02:15:54 | * | Varriount|Mobile quit (Remote host closed the connection) |
02:16:15 | * | Varriount|Mobile joined #nim |
02:34:39 | * | VinceAddons quit (Read error: Connection reset by peer) |
02:45:31 | * | keyle quit (Quit: leaving) |
02:49:18 | * | kapil__ joined #nim |
03:07:56 | * | vendethiel quit (Ping timeout: 244 seconds) |
03:12:25 | * | vendethiel joined #nim |
03:14:37 | * | darkf joined #nim |
03:14:43 | * | jefus_ joined #nim |
03:18:09 | * | jefus__ quit (Ping timeout: 245 seconds) |
03:18:47 | * | brson quit (Ping timeout: 244 seconds) |
03:22:45 | * | Varriount|Mobile quit (Read error: Connection reset by peer) |
03:22:51 | * | Var|Mobile joined #nim |
03:26:49 | * | gmpreussner joined #nim |
03:27:25 | gmpreussner | the IRC link on the website needs to be updated. it points to #nimlang, which is now invite only |
03:29:15 | dtscode | :D how do you get in there? |
03:35:58 | * | gmpreussner quit (Ping timeout: 246 seconds) |
03:36:18 | * | gmpreussner joined #nim |
03:36:21 | * | EXetoC quit (Ping timeout: 244 seconds) |
03:36:40 | gmpreussner | there are different directories depending on which set of libs is chosen |
03:39:13 | dtscode | ? |
03:39:39 | * | vendethiel quit (Ping timeout: 244 seconds) |
03:41:06 | gmpreussner | dtscode: so, i'm trying to statically link to some .lib files on Windows. there multiple sets of these, depending on whether you choose 32 vs 64 or debug vs release builds |
03:41:51 | dtscode | ah |
03:42:05 | gmpreussner | these are .lib, not .dll, so i have to disable DLL loading with --dynlibOverride and pass the path to the libs, i suppose |
03:42:50 | gmpreussner | do i have to use nake for this, because the linker command line will be conditional, or is there a simpler way? |
03:43:51 | gmpreussner | also, when i link statically, do i still need {.dynlib.} in my code? |
03:44:14 | gmpreussner | i'd think that {.importc.} would be sufficient |
03:46:22 | * | vendethiel joined #nim |
03:47:42 | gmpreussner | on second thought, i doubt that this would even work. these libs were compiled with Visual Studio |
03:53:35 | * | stapler quit (Remote host closed the connection) |
03:57:43 | * | Var|Mobile quit (Quit: AndroIRC - Android IRC Client ( http://www.androirc.com )) |
04:07:07 | * | gmpreussner quit (Ping timeout: 246 seconds) |
04:10:14 | * | vendethiel quit (Ping timeout: 265 seconds) |
04:13:37 | * | vendethiel joined #nim |
04:25:16 | * | leavengood joined #nim |
04:25:40 | * | leavengood is now known as Guest43109 |
04:35:13 | * | vendethiel quit (Ping timeout: 264 seconds) |
04:38:10 | * | girvo joined #nim |
04:43:35 | * | z1y quit (Quit: Leaving.) |
04:45:24 | * | z1y joined #nim |
04:45:26 | * | girvo quit (Read error: Connection reset by peer) |
04:46:15 | * | vendethiel joined #nim |
04:56:38 | * | girvo joined #nim |
05:05:14 | * | Guest43109 quit (Ping timeout: 245 seconds) |
05:05:36 | * | JinShil quit (Quit: Konversation terminated!) |
05:09:01 | * | vendethiel quit (Ping timeout: 256 seconds) |
05:12:07 | * | brson joined #nim |
05:15:08 | * | jpoirier quit (Quit: Leaving) |
05:15:13 | * | vendethiel joined #nim |
05:23:11 | * | ARCADIVS joined #nim |
05:23:25 | * | girvo quit (Quit: leaving) |
05:35:13 | * | BitPuffin quit (Ping timeout: 264 seconds) |
05:36:07 | * | vendethiel quit (Ping timeout: 245 seconds) |
05:38:04 | * | vendethiel joined #nim |
05:50:15 | * | BitPuffin joined #nim |
06:11:44 | * | brson quit (Quit: leaving) |
06:21:24 | * | nodrygo joined #nim |
06:23:55 | * | jpoirier joined #nim |
06:26:32 | * | bjz joined #nim |
06:29:27 | * | BitPuffin quit (Ping timeout: 245 seconds) |
06:38:49 | * | bjz quit (Ping timeout: 264 seconds) |
06:48:46 | * | ajhager quit (Ping timeout: 265 seconds) |
06:53:25 | * | superfunc joined #nim |
07:01:50 | * | BitPuffin joined #nim |
07:02:08 | * | SplinterOfChaos quit (Ping timeout: 264 seconds) |
07:04:39 | * | keyle joined #nim |
07:05:08 | keyle | hi |
07:06:22 | dtscode | hi |
07:06:23 | * | BitPuffin quit (Ping timeout: 240 seconds) |
07:06:28 | dtscode | i see you starred nimbus |
07:06:35 | dtscode | or forked it. i cant remember |
07:06:38 | dtscode | anyways, <3 |
07:06:51 | keyle | yeah loved the simplicity |
07:07:16 | dtscode | yeah everyone is surprised at the (lack of) code it took to write it |
07:07:48 | keyle | Araq: I have set up a mac ssh account for you on my mac book pro to get to the bottom of the compile issues |
07:07:59 | keyle | PM me when you'd like the details |
07:08:34 | * | gmpreussner joined #nim |
07:08:39 | dtscode | or you could paste them in a public channel for the whole world to see ;) whichever you prefer |
07:10:24 | * | bjz joined #nim |
07:24:40 | * | bjz quit (Read error: Connection reset by peer) |
07:30:00 | * | gour joined #nim |
07:32:23 | gmpreussner | gnite all |
07:32:41 | gmpreussner | dtscode: i ended up creating DLLs from the static libs. problem solved :) |
07:33:07 | dtscode | gmpreussner, oh. tbh i dont develop on windows |
07:33:40 | gmpreussner | yeah, well, i'm creating bindings for cross-platform libraries, so i'm testing on all supported platforms |
07:36:10 | * | gmpreussner quit (Quit: Konversation terminated!) |
07:41:17 | * | bjz joined #nim |
07:45:04 | * | BlaXpirit joined #nim |
08:17:39 | * | jpoirier quit (Quit: Leaving) |
08:19:16 | * | gokr joined #nim |
08:19:28 | * | superfunc quit (Ping timeout: 246 seconds) |
08:23:08 | * | Trustable joined #nim |
08:25:31 | * | bjz quit (Read error: Connection reset by peer) |
08:28:36 | * | bjz joined #nim |
08:43:59 | * | bjz quit (Ping timeout: 245 seconds) |
08:52:27 | * | z1y quit (Remote host closed the connection) |
08:53:10 | * | z1y joined #nim |
09:03:00 | keyle | see my last comment: https://github.com/Araq/Nim/issues/1906 - anyone knows where I should look? |
09:04:00 | ekarlso- | keyle: so you good at webdesign ? :) |
09:04:13 | keyle | by trade |
09:04:32 | keyle | I'm a software designer/dev |
09:04:39 | keyle | focussing on UI/UX |
09:04:41 | * | HakanD joined #nim |
09:05:27 | ekarlso- | ah |
09:06:05 | * | Sphax joined #nim |
09:06:07 | keyle | what for? |
09:06:36 | ekarlso- | keyle: packages.nim-lang.org is the thought :) |
09:07:18 | keyle | just pump out the html and give me ftp access or something |
09:07:58 | keyle | you have an idea what it should look like? npm? |
09:08:16 | * | bjz joined #nim |
09:08:35 | keyle | wow the latest npm is pretty sweet https://www.npmjs.com/package/express |
09:09:35 | ekarlso- | keyle: npm / rust's crate |
09:10:10 | keyle | I was thinking wrong, instead of ftp access, github is obviously better |
09:11:35 | * | kapil__ quit (Quit: Connection closed for inactivity) |
09:12:04 | ekarlso- | https://github.com/ekarlso/nim-packages keyle |
09:14:32 | keyle | that's quite a mouthful that readme |
09:15:37 | keyle | what's it look like at the moment, running? |
09:16:51 | ekarlso- | hehe, lemme show u |
09:18:04 | * | Sphax quit (Quit: ZZZZZzzzzz) |
09:20:43 | Araq | keyle: well it can only hide in terminal.nim or in the enormous windows wrapper |
09:20:59 | keyle | k |
09:21:08 | keyle | has nim got the type short? |
09:21:19 | Araq | int16 |
09:21:27 | keyle | aye |
09:21:34 | * | Sphax joined #nim |
09:22:23 | * | novist quit (Excess Flood) |
09:23:05 | * | novist joined #nim |
09:23:05 | * | novist quit (Excess Flood) |
09:23:48 | Araq | keyle: however, http://msdn.microsoft.com/de-de/library/windows/desktop/ms682119%28v=vs.85%29.aspx |
09:24:00 | * | novist joined #nim |
09:24:10 | keyle | heh |
09:24:49 | keyle | it's all strange anyway |
09:25:00 | * | bjz quit (Read error: Connection reset by peer) |
09:25:12 | keyle | even with a buffer that does not overflow, a clear with a setcursor(0, 0) does not go to the top of the screen |
09:25:38 | keyle | up until the user has pushed enough lines to make it scroll |
09:25:46 | * | BitPuffin joined #nim |
09:26:05 | keyle | Stackoverflow is a mess about it too. Most resort to calling cls, which isn't proper and is expensive, but works. |
09:26:43 | keyle | shame, I love TUI, but it doesn't look a proper TUI can be done that's mac/linux _and_ windows |
09:27:08 | Araq | sure but you can use e.g. ncurses |
09:27:36 | keyle | using C lib within nim is beyond my current capability |
09:27:50 | Araq | no, it's already wrapped |
09:27:58 | keyle | ow. |
09:27:59 | * | [CBR]Unspoken joined #nim |
09:28:35 | keyle | is it on /lib.html? |
09:29:53 | * | BitPuffin quit (Ping timeout: 240 seconds) |
09:29:59 | Araq | damn. no it's not. |
09:30:09 | * | shevy joined #nim |
09:30:16 | Araq | but it's in lib/wrappers/pdcurses.nim |
09:30:42 | keyle | I wonder what else isn't told to users :D |
09:30:45 | keyle | thx |
09:31:51 | * | bjz joined #nim |
09:32:00 | keyle | PS: I wrote to you above that I have an ssh account for you on my mac book pro and it's ready to go with Nim failing at the same spot. PM me when you want the details. |
09:32:20 | Araq | nice! |
09:33:00 | keyle | yeah that'd save some stuffing around via irc + hastebin responses :> ... I hope it's not my mac and I'm wasting your time. |
09:34:01 | Araq | oh don't worry, I'm always after the "interesting" bugs ;-) |
09:34:42 | keyle | well PM me when you do have time :) |
09:36:41 | keyle | So Windows allows a terminal buffer bigger than what it can set cursor coords on |
09:36:49 | keyle | ah no |
09:37:00 | keyle | int16 * int16 should be fine |
09:44:25 | * | bjz quit (Ping timeout: 244 seconds) |
09:54:13 | * | bjz joined #nim |
09:55:24 | * | matkuki joined #nim |
09:55:27 | * | sillesta joined #nim |
09:57:04 | * | BlaXpirit quit (Quit: Quit Konversation) |
09:58:23 | * | bjz quit (Ping timeout: 240 seconds) |
09:59:00 | * | BlaXpirit joined #nim |
10:02:48 | * | Etheco quit (Quit: Leaving) |
10:06:10 | * | HakanD quit (Quit: Be back later ...) |
10:09:55 | * | bjz joined #nim |
10:13:09 | * | nodrygo left #nim (#nim) |
10:22:03 | * | bjz quit (Quit: Textual IRC Client: www.textualapp.com) |
10:25:41 | * | bjz joined #nim |
10:30:41 | matkuki | I have a tuple "Size = tuple[height, width :cint]". Why does the initialization use sequence and not field names? |
10:30:43 | matkuki | e.g.: sz :Size = (width: 640, height: 480) sets the height field to 640 and width to 480? |
10:31:29 | Araq | because field names are pretty much ignored |
10:31:42 | matkuki | Oh. |
10:31:43 | Araq | this was a design mistake introduce with 0.10.2 |
10:32:05 | Araq | it'll work again in the next version, I'll revert this change |
10:32:18 | matkuki | Great, thanks. |
10:33:26 | BlaXpirit | D: |
10:33:51 | * | HakanD joined #nim |
10:34:54 | Araq | BlaXpirit: it's already marked as a showstopper bug |
10:37:23 | * | MajorTennis joined #nim |
10:37:43 | * | MajorTennis quit (Changing host) |
10:37:43 | * | MajorTennis joined #nim |
10:40:30 | keyle | When a wrapper looks for a dll, where does it look? |
10:40:55 | * | gsingh93 quit (Quit: Connection closed for inactivity) |
10:40:57 | Araq | on windows the %PATH% is used, I think |
10:42:17 | keyle | C:\Nim\bin; is in my %PATH% and it has a pdcurses.dll |
10:42:48 | keyle | and I get this at runtime when "import pdcurses" -> could not import: pdc_atrtab |
10:43:02 | Araq | well a 64bit app cannot load a 32bit DLL and vice versa |
10:43:12 | Araq | but that doesn't seem to be your problem |
10:43:48 | BlaXpirit | just reported a regression :| |
10:44:46 | Araq | keyle: according to http://fossies.org/dox/PDCurses-3.4/dos_2pdcscrn_8c_source.html this is not properly exported for DLLs |
10:45:31 | keyle | is it possible this wrapper done by someone on linux and not tested on Windows 8 ? |
10:45:54 | BlaXpirit | of course |
10:46:52 | keyle | let me test on linux |
10:48:02 | Araq | BlaXpirit: that should work with 'deve' again |
10:48:18 | Araq | and I can see on the error message you're not on devel :P |
10:48:34 | BlaXpirit | i used to be on whatever the default is and had the same error |
10:48:57 | BlaXpirit | i installed 0.10.2 actually in hope that the problem wouldn't be there |
10:49:32 | keyle | lib/wrappers/pdcurses.nim(539, 36) Error: undeclared identifier: 'pdcursesdll' |
10:49:36 | keyle | on linux |
10:50:11 | Araq | and now we know why it's not listed in lib.html :-) |
10:50:18 | keyle | :D |
10:50:26 | BlaXpirit | Araq, does installing from "https://github.com/Araq/nim.git" count as devel or what should i try? |
10:51:16 | keyle | https://github.com/Araq/Nim/pull/165 |
10:51:39 | keyle | July 2012 |
10:52:31 | keyle | BlaXpirit: that might be pulling master by default http://stackoverflow.com/questions/658885/how-do-you-get-git-to-always-pull-from-a-specific-branch |
10:52:58 | keyle | -b devel pulls devel |
10:53:01 | BlaXpirit | keyle, but i see that "devel" is the default branch |
10:53:11 | keyle | on github yes |
10:53:18 | BlaXpirit | uh whatever |
10:53:24 | BlaXpirit | but i dont think i can specify a flag |
10:53:27 | BlaXpirit | i need a different URL |
10:53:51 | * | z1y quit (Remote host closed the connection) |
10:53:53 | keyle | git clone -b devel git://github.com/Araq/Nim.git |
10:54:03 | BlaXpirit | [:53:23] <BlaXpirit> but i dont think i can specify a flag |
10:54:04 | BlaXpirit | [:53:27] <BlaXpirit> i need a different URL |
10:54:23 | BlaXpirit | well maaybe i can |
10:55:31 | BlaXpirit | git checkout devel? |
10:57:38 | novist | yes you can |
10:57:50 | novist | according to obama. |
10:57:59 | * | kapil__ joined #nim |
10:58:10 | * | z1y joined #nim |
11:03:57 | BlaXpirit | still downloading that repo |
11:03:58 | BlaXpirit | zzzzzz |
11:04:19 | novist | it aint big as i remmeber |
11:04:37 | novist | cloned just yesterday when i saw shallowCopy bug was fixed (thanks Araq !) |
11:08:30 | * | JinShil joined #nim |
11:14:57 | BlaXpirit | yup, sure enough, with devel it works :| |
11:16:43 | * | MajorTennis quit (Read error: Connection reset by peer) |
11:17:34 | * | gour_ joined #nim |
11:20:49 | Araq | novist: as I wrote, it only affected top level statements, shouldn't have stopped you from working :P |
11:20:55 | * | gour quit (Ping timeout: 252 seconds) |
11:21:26 | novist | actually i bumped into it when it happened in a proc. basically i was sorting scheduled coroutines by sleep time and it broke everything hehe |
11:21:55 | novist | anyway it was just experiment to see if i can pull off same thing i was doing in c++. but in nim it turned out to be much more elegant and awesome |
11:22:21 | Araq | er that's bad. |
11:22:37 | Araq | I hate it when test cases get reduced too much |
11:22:40 | novist | well my sample works just fine now. you want to take a look maybe? |
11:22:53 | Araq | I want to add it to the testsuite |
11:23:08 | Araq | these reduced test cases tend to test too few things |
11:23:18 | Araq | especially in the long run |
11:23:33 | novist | http://paste.linuxmint.com/view/jzwk/ |
11:23:41 | novist | it broke on sort() call before |
11:23:52 | Araq | perfect! thanks! |
11:24:23 | novist | glad to be useful o/ |
11:25:16 | Araq | but yeah my fix wasn't specific to top level statements so it's all good |
11:25:26 | * | VinceAddons joined #nim |
11:25:55 | * | JinShil quit (Ping timeout: 255 seconds) |
11:26:22 | * | z1y quit (Ping timeout: 255 seconds) |
11:28:36 | Araq | novist: btw 'finished' has a common gotcha in that it returns true "one step too late" |
11:28:51 | Araq | dunno if your code is affected by it |
11:31:07 | novist | hmm.. does it depend on finished() being actually called? like needing to call it twice for finished iterator so true would be returned? |
11:31:52 | Araq | the canonical example is: |
11:32:10 | Araq | while not finished(it): let value = it() # doesn't work |
11:32:16 | Araq | while true: |
11:32:28 | Araq | let value = it() |
11:32:44 | Araq | if finished(it): break # works, ignore spurious return value |
11:33:11 | Araq | it's actually more like 'it' returns a tuple |
11:33:46 | Araq | let (value, finished) = it() # that would have been much better API design, but also slower ;-) |
11:34:54 | Araq | but hey, we can always provide a nicer wrapper |
11:35:15 | * | MajorTennis joined #nim |
11:35:15 | * | MajorTennis quit (Changing host) |
11:35:15 | * | MajorTennis joined #nim |
11:48:17 | * | JinShil joined #nim |
11:49:07 | * | Sphax quit (Quit: ZZZZZzzzzz) |
11:58:02 | * | Sphax joined #nim |
12:14:27 | * | akiradeveloper joined #nim |
12:14:33 | * | irrequietus joined #nim |
12:14:34 | * | irrequietus quit (Changing host) |
12:14:34 | * | irrequietus joined #nim |
12:14:43 | akiradeveloper | hi |
12:16:14 | Araq | hi akiradeveloper welcome |
12:16:19 | * | matkuki quit (Quit: ChatZilla 0.9.91.1 [Firefox 34.0.5/20141126041045]) |
12:16:48 | akiradeveloper | I have a question. How to paste a code? Should I use gist? |
12:17:32 | keyle | hastebin, pastebin, gist |
12:19:26 | akiradeveloper | Why can't I compile this code? https://gist.github.com/akiradeveloper/f9c47016ef6eb092838e |
12:20:10 | akiradeveloper | I think I followed the section multi-method in manual http://nim-lang.org/manual.html |
12:21:09 | Araq | and that section is severly outdated |
12:21:34 | Araq | don't use .inheritable, don't use 'object' when you're a newbie, use 'ref object' instead |
12:22:16 | Araq | and inherit from RootObj to enable inheritance |
12:24:03 | akiradeveloper | OK. I wil try |
12:27:33 | akiradeveloper | not compiled. I comment a new code in my gist. |
12:27:48 | akiradeveloper | What is the problem? |
12:27:56 | * | z1y joined #nim |
12:28:17 | keyle | can't see a comment |
12:28:21 | BlaXpirit | is there a better way to write var a = @[1,2,3,4,5,6,7,8,9,10] |
12:29:07 | akiradeveloper | >keyle sorry I forgot to push the bottom |
12:29:32 | Araq | BlaXpirit: toSeq(1..10) |
12:29:57 | BlaXpirit | i guess i should just forget about "nim i" completely |
12:30:01 | BlaXpirit | it can't do even this |
12:30:58 | BlaXpirit | thanks, it works |
12:33:04 | Araq | akiradeveloper: the error message is perfectly clear |
12:33:23 | Araq | temp10.nim(18, 3) Error: type mismatch: got (T1) |
12:33:25 | Araq | but expected one of: |
12:33:26 | Araq | temp10.f(x: T3) |
12:33:28 | Araq | temp10.f(x: T2) |
12:33:30 | Araq | temp10.f(s: S1) |
12:34:17 | * | BitPuffin joined #nim |
12:34:24 | keyle | akiradeveloper: add the missing overload |
12:34:32 | keyle | method f(x:T1) = |
12:34:38 | keyle | echo "I am T1" |
12:35:03 | keyle | to get the result you expect, "I am T2" |
12:35:29 | keyle | PS: I wouldn't recommend this code in production :> |
12:36:05 | akiradeveloper | It works, thanks |
12:37:50 | akiradeveloper | keyle: You don't like dynamic dispatch? |
12:38:24 | keyle | I don't like code that's too clever. It costs man-hours |
12:39:18 | keyle | nothing really wrong here, though |
12:42:03 | BlaXpirit | doesn't Nim come with Nimble on Windows? :o |
12:42:08 | * | Araq dislikes dynamic dispatch ;-) |
12:42:41 | Araq | BlaXpirit: no, the DLL dependencies delayed that project |
12:47:13 | * | SplinterOfChaos joined #nim |
12:50:16 | * | akiradeveloper left #nim (#nim) |
13:01:28 | keyle | Araq: any chance you can look at outputing the doc content to csv? |
13:01:34 | keyle | oops, json |
13:01:36 | keyle | *tired* |
13:04:29 | * | gour_ is now known as gour |
13:06:55 | * | leavengood joined #nim |
13:07:19 | * | leavengood is now known as Guest92587 |
13:08:56 | * | jefus_ is now known as jefus |
13:13:50 | Araq | keyle: I can do that later but I'm not convinced it's better than simply patching docgen2 |
13:14:14 | keyle | to what purpose? |
13:14:45 | Araq | to get the "group by type", "search" features |
13:14:58 | keyle | in my mind, generating api docs to json is future proofing. Straight to html is cornered |
13:15:05 | keyle | ah |
13:15:12 | keyle | so docgen2 would be a search |
13:15:25 | keyle | sure! |
13:15:44 | flan3002 | Just for toying around... is there a low-friction graphics library/game engine example somewhere? |
13:16:20 | Araq | flan3002: the graphics module is still part of the core and builds on SDL 1.2 |
13:16:46 | flan3002 | Araq: Thanks, I'll look into that. :) |
13:16:52 | Araq | there are lots of other libraries around though |
13:27:23 | keyle | anyone doing much with nim and gtk2 ? |
13:28:20 | BlaXpirit | ...aporia... |
13:29:34 | keyle | ah |
13:29:39 | keyle | I thought that was scite |
13:37:48 | * | BlaXpirit quit (Quit: Quit Konversation) |
13:37:59 | * | keyle quit (Quit: Morbo: Chitchat achieved!) |
13:47:48 | irrequietus | Araq: disliking dynamic dispatch is awesome :) |
13:59:21 | * | UberLambda joined #nim |
14:01:27 | sillesta | is there any reason for using dynamic dispatch over static? (newbie) |
14:02:16 | * | BlaXpirit joined #nim |
14:05:37 | * | z1y quit (Remote host closed the connection) |
14:06:23 | * | z1y joined #nim |
14:06:54 | Araq | sillesta: there are lots of use cases where it's really necessary |
14:07:40 | * | EXetoC joined #nim |
14:18:20 | * | JinShil quit (Quit: Konversation terminated!) |
14:18:35 | renesac | https://www.python.org/dev/peps/pep-0418/ <-- as aways, python has a sane PEP that organizes everything |
14:19:16 | renesac | I didn't know about those new time functions (monotonic(), perf_counter() and process_time()) |
14:19:53 | renesac | well, C++11 also has the chrono library now, that is kinda similar, but the way python organized seems better for me |
14:20:13 | * | PJC joined #nim |
14:20:30 | renesac | the main difference is that C++11 uses integers for time, while python uses a float64 |
14:21:40 | renesac | nimrod uses float64 with seconds, int64 with nano seconds or int64 with 'ticks' depending on the situation... |
14:22:59 | * | Etheco joined #nim |
14:23:27 | renesac | each has it's uses, but interoperability is kinda hard that way... especially the 'ticks' that don't have a defined unit |
14:24:28 | renesac | if I implement a PEP-0418 style library, ticks is not really an option (it is used by the times.nim in the nim GC) |
14:24:57 | Araq | it's not an external API anyway |
14:25:00 | renesac | it is converted to nanos when doing a subtraction though... |
14:25:08 | Araq | for exactly these reasons |
14:25:23 | renesac | I know, but I'm trying to expose that functionality |
14:25:30 | renesac | even if the GC itself won't use the public library |
14:26:10 | renesac | the GC using that format tells something (that you spend time and lose precision if you convert too early from ticks to nanos) |
14:27:15 | renesac | not sure if it matters much in reality, but microsoft recommends delaying the conversion too, as nim GC does |
14:28:18 | renesac | a possible solution is add a tag to the ticks, to identify what type of tick it is, but seems too much trouble over simply converting it to nanos or float seconds |
14:28:56 | Araq | you should introduce distinct types for nano, micro etc. and then simply expose what the GC uses |
14:29:19 | Araq | so: sleep(1000) # doesn't compile |
14:29:27 | Araq | sleep(1000.msecs) # compiles |
14:29:36 | Araq | well you get the idea |
14:29:41 | renesac | right |
14:30:17 | renesac | what about sleep(0.0001) like in python? |
14:30:21 | renesac | too high level? |
14:30:44 | renesac | (I was already doing that by the way, then I stumbled over that PEP) |
14:30:45 | Araq | floating point can hurt for hyperthreading |
14:30:53 | renesac | ? |
14:31:18 | Araq | "With hyperthreading, each physical core supports two logical cores, who share some, but not all of the resources of the physical core, allowing them to operate in parallel if their resource usage doesn't overlap. One of the things that logical cores do share are their FP/SIMD units, so FP-intensive code automatically creates a hyperthreading bottleneck." |
14:31:26 | Araq | from http://forum.nim-lang.org/t/533/2 |
14:31:44 | renesac | this is for AMD |
14:31:50 | renesac | intel don't have this limitation I think |
14:32:09 | Araq | well there are still lots of cpus which don't even have a FP unit |
14:32:10 | renesac | and it shares them for a reason: it is less used |
14:32:18 | renesac | right |
14:32:39 | renesac | but they also aren't 64 bits |
14:32:41 | * | z1y quit (Ping timeout: 252 seconds) |
14:33:00 | Araq | emulating 64bits is much cheaper than emulating FP |
14:33:57 | renesac | ok, then you suggest using nanos by default as the output of those functions |
14:34:11 | Araq | I guess I do |
14:34:22 | renesac | and then one converts to .msec or .float as they want |
14:34:25 | renesac | or better |
14:34:29 | Araq | I like the FP interface quite a bit though, it's resolution independent |
14:34:31 | renesac | .secs or .seconds |
14:35:06 | renesac | well, I would store in nanos even timers with milisecs precision, I guess |
14:35:15 | renesac | only a multiplication |
14:35:30 | Araq | but an FP interface is just a converter/overload away |
14:35:46 | renesac | yeah |
14:36:09 | renesac | the problem of using integers for time is the truncation on division that loses some precision |
14:36:31 | renesac | and I think int 64 division is slower than float division |
14:36:43 | renesac | on the other hand, if the divisior is constant, it can be optimized |
14:36:49 | renesac | by the compiler easily |
14:37:58 | renesac | by the way, this is interesting: https://github.com/ridiculousfish/libdivide |
14:38:12 | renesac | I wonder if c2nim can chew that |
14:38:43 | renesac | (does the division optimization for runtime constants) |
14:41:57 | * | z1y joined #nim |
14:44:59 | Araq | renesac: don't get distracted. optimizing divisons has nothing to do with designing a times api |
14:47:35 | renesac | I know, I discovered this libdivide for another reason |
14:49:05 | renesac | but yeah, I should focus on getting this times library done |
14:51:22 | renesac | by the way, any specifc reason why nim gc uses CLOCK_REALTIME instead of CLOCK_MONOTONIC? |
14:54:43 | * | johnsoft quit (Ping timeout: 255 seconds) |
14:55:06 | * | johnsoft joined #nim |
14:55:32 | Araq | can't remember, the latter is not available on SurrealUnix version 0xCAFEBABE |
14:56:59 | Araq | you need to check every posix symbol you use 10x |
14:57:14 | renesac | hum |
14:57:44 | * | tttt quit (Disconnected by services) |
14:57:53 | renesac | can I use "declared()" or something like that to check if something was defined in a .h? |
14:58:20 | Araq | no. but you can staticExec and try to compile a C snippet |
14:58:42 | EXetoC | -.- |
14:59:10 | EXetoC | such elegance |
14:59:34 | Araq | EXetoC: how would this 'declared' builtin work? |
14:59:51 | Araq | how does autoconf do it? |
14:59:52 | * | ARCADIVS quit (Quit: ARCADIVS) |
15:00:18 | Araq | I will tell you: In exactly the same way. |
15:01:06 | renesac | is there an example for what I want? |
15:01:13 | renesac | I need to launch a c compiler via command line? |
15:01:17 | * | ajhager joined #nim |
15:02:15 | EXetoC | whatever works, I guess |
15:02:21 | Araq | renesac: yeah but don't go this road |
15:02:51 | Araq | it's crazy. just use what you need and some poor soul will report it fails on his precious niché OS |
15:03:04 | EXetoC | so, no defines denoting availability? |
15:03:31 | Araq | EXetoC: system.declared tells you if the *Nim* symbol exists |
15:03:58 | Araq | var foo {.importc: "bar".}: cint |
15:04:12 | Araq | declared(foo) # true, even if C doesn't know about 'bar' |
15:05:01 | renesac | compiles(var CLOCK_MONOTONIC {.importc: "CLOCK_MONOTONIC", header: "<time.h>".}: TClockid) |
15:05:06 | renesac | will aways return true? |
15:05:12 | renesac | regardless of what is in time.h? |
15:05:23 | EXetoC | I meant C defines denoting availability of those features |
15:06:54 | flan3002 | Am I missing an easy way to search the online docs? |
15:07:13 | Araq | flan3002: use theindex.html |
15:07:33 | Araq | renesac: syntactic issues aside, yes |
15:07:34 | flan3002 | Woah. |
15:08:21 | Araq | EXetoC: you can .emit an #ifdef I guess |
15:09:00 | Araq | but that's more a sideeffect of the preprocessor that is misused for symbolic constants |
15:09:19 | Araq | you can use this to check the availability of a function |
15:09:23 | Araq | *can't |
15:11:22 | EXetoC | but then someone might distribute said executable |
15:12:14 | renesac | Araq: someone will put a define to sinalize the availability of a function |
15:12:16 | renesac | :P |
15:12:29 | renesac | but I got your point |
15:14:22 | * | jefus_ joined #nim |
15:15:18 | EXetoC | as long as we aren't very conservative just because of some odd systems |
15:15:42 | * | BlaXpirit quit (Quit: Quit Konversation) |
15:18:10 | renesac | I don't understand how nimrod checks for posixRealtime |
15:18:32 | renesac | https://github.com/Araq/Nim/blob/5bd2889267dcd9fb18297dbac0f0e3fef6036688/compiler/condsyms.nim <-- this is the only other place on the compiler where it is used |
15:18:40 | * | jefus quit (Ping timeout: 264 seconds) |
15:18:56 | renesac | do we need to pass this flag to the nim compiler manually? |
15:20:36 | * | minciue quit (Quit: minciue) |
15:22:35 | * | saml joined #nim |
15:22:48 | Araq | renesac: looks like it, yeah |
15:26:50 | * | BlaXpirit joined #nim |
15:38:50 | * | PJC quit (Quit: Page closed) |
15:40:00 | renesac | so every non-mac non-windows system is using posix_gettimeofday for it's GC now? |
15:40:00 | * | jpoirier joined #nim |
15:40:24 | renesac | because I've never seen this flag used or recommended |
15:41:29 | * | renesac is now known as renesac|away |
15:43:11 | * | darkf quit (Quit: Leaving) |
15:45:34 | * | ajhager quit (Quit: WeeChat 1.0.1) |
15:48:50 | * | atomic-hedgehog joined #nim |
15:55:21 | Araq | renesac|away: yes. |
16:06:01 | * | z1y quit (Quit: Leaving.) |
16:06:09 | * | z1y joined #nim |
16:10:51 | * | BlaXpirit quit (Quit: Quit Konversation) |
16:11:35 | * | kapil__ quit (Quit: Connection closed for inactivity) |
16:12:07 | * | z1y quit (Ping timeout: 255 seconds) |
16:20:13 | * | EXetoC quit (Ping timeout: 255 seconds) |
16:29:52 | UberLambda | Now that nimrod is named nim, is github going to update the name? It's still nimrod to it |
16:30:15 | def- | UberLambda: where is that? |
16:30:38 | UberLambda | def-: To search repositories by language, language:nim doesn't work but language:nimrod does |
16:30:51 | UberLambda | def-: also, in the colored language bar at the top |
16:31:15 | * | BlaXpirit joined #nim |
16:31:22 | def- | https://github.com/github/linguist |
16:31:30 | def- | Sounds like we should make a pull request there |
16:31:36 | UberLambda | I guess it's a easy fix then |
16:32:22 | def- | I'll give it a try if you don't want to |
16:32:41 | UberLambda | https://github.com/github/linguist/blob/master/lib/linguist/languages.yml#L1894 |
16:32:46 | UberLambda | I'll try patching it |
16:33:03 | UberLambda | But I'm not sure how to work with github |
16:33:11 | def- | ok, I'm afk anyway |
16:33:15 | UberLambda | Should I fork it, then merge it to the remote? |
16:33:32 | def- | https://help.github.com/articles/creating-a-pull-request/ |
16:33:55 | UberLambda | def-: Thanks, I'll try patching it |
16:34:09 | * | BlaXpirit quit (Client Quit) |
16:34:11 | UberLambda | BTW is the .nimrod extension still used? Or can it be removed from the spec? |
16:36:01 | UberLambda | Seems like superfunc has already opened a pull request |
16:36:31 | * | BlaXpirit joined #nim |
16:45:25 | * | EXetoC joined #nim |
16:50:32 | * | Jesin quit (Quit: Leaving) |
16:50:47 | * | BlaXpirit quit (Quit: Quit Konversation) |
16:53:00 | * | Jesin joined #nim |
16:58:52 | * | brson joined #nim |
17:03:29 | * | judofyr joined #nim |
17:03:50 | judofyr | I'm having some troubles with "recursive" macros |
17:04:01 | judofyr | I have: foo() & bar() & baz() |
17:04:05 | judofyr | where `&` is an macro |
17:04:18 | judofyr | it seems to first expand foo() & bar() |
17:04:56 | judofyr | but then it it expands (foo() & bar()) & baz() completely ignoring the result of the previous expansion |
17:06:29 | * | atomic-hedgehog quit (Ping timeout: 245 seconds) |
17:08:22 | * | atomic-hedgehog joined #nim |
17:08:54 | def- | judofyr: i think that's to be expected. |
17:11:27 | def- | hm, no. actually seems to work as you want it to |
17:11:41 | def- | oops, no |
17:12:47 | * | gokr_ joined #nim |
17:12:54 | def- | I've never nested macros before I guess |
17:13:16 | def- | If you make them immediate the first one doesn't get executed at all at least |
17:15:03 | Araq | UberLambda: if you're on BSD can you check why osproc.execProcesses returns too early? |
17:15:58 | UberLambda | Araq: sorry, I'm on Arch Linux |
17:19:28 | judofyr | def-: here's the actual issue: https://gist.github.com/judofyr/fc152264ae1c4f0932c7 |
17:19:39 | judofyr | the moment I use `const` it seems to do something odd |
17:20:01 | judofyr | notice that at runtime it's only doing 4 ands |
17:20:07 | def- | ha, looks nearly exactly like the example i tried |
17:20:12 | judofyr | but at compile-time it seems exponential |
17:21:34 | judofyr | turning it into a macro has the same issue as const'ing it |
17:22:22 | judofyr | actually, making it immediate seems to solve it |
17:22:54 | def- | not for me, still looks like a lot of additions, but fewer |
17:23:12 | def- | ah, i get it |
17:23:22 | def- | the "const x = a" causes a new calculation of a at compile time |
17:23:36 | def- | so of course it grows quickly |
17:24:03 | def- | what's your goal? |
17:24:16 | judofyr | I'm working on a SQL building library |
17:24:34 | judofyr | one approach I'm looking at is to support standalone WHERE-clauses |
17:24:52 | judofyr | `where("id = 123")` would return a WHERE-statement |
17:25:21 | * | HakanD quit (Quit: Be back later ...) |
17:25:31 | judofyr | `where("id = 123") & where("foo = bar")` returns another WHERE-clause |
17:25:42 | judofyr | now I'm trying to get that above to compile properly on a compile-time |
17:26:02 | judofyr | e.g. that should be inlineable to WHEREStmt("id = 123 AND foo = bar") |
17:27:52 | * | jefus_ is now known as jefus |
17:31:17 | * | HakanD joined #nim |
17:31:42 | def- | judofyr: works for me |
17:32:18 | def- | oh wait... |
17:33:10 | def- | how about a term rewriting macro? |
17:33:32 | Araq | yes there is some exponential overhead bug in the compiler that I haven't tracked down |
17:37:12 | judofyr | actually, using an arrow makes it far better |
17:37:33 | def- | because associativity changes? |
17:38:18 | judofyr | meh. it just halves it |
17:39:45 | * | Sphax quit (Quit: ZZZZZzzzzz) |
17:39:45 | * | MajorTennis quit (Quit: Leaving) |
17:42:30 | judofyr | it got really bad when I tried to write something that automatically detected if something was const-able or not: |
17:42:56 | judofyr | template tryConst(code: expr): expr = when compiles((const res = code)): const res = code; res; else: code |
17:43:11 | judofyr | if I could get it to compile inwards and out |
17:43:26 | judofyr | I think it wouldn't be a problem |
17:44:15 | EXetoC | for what purpose? |
17:44:48 | * | jsudlow quit (Quit: Leaving) |
17:45:36 | judofyr | for optimizing as much as possible |
17:46:01 | judofyr | e.g: select(1) & fromTable("users") & where("name", params["name"]) |
17:46:21 | judofyr | the two first can be combined at compile-time |
17:46:33 | judofyr | but Nim doesn't do it unless there's a `const` in `&` |
17:47:09 | judofyr | and it would be ugly to write: const foo = select(1) & fromTable("users"); foo & where("name", params["name"]) |
17:47:26 | judofyr | or, that's not an API I would encourge |
17:47:48 | judofyr | (unless you really care about performance and want to ensure the compiler consts it) |
17:47:59 | Araq | you just need to use --implicitStatic:on and then it gets optimized this way iirc |
17:48:04 | judofyr | oh |
17:48:31 | Araq | there was a bug which prevented us from making it the default though |
17:48:53 | judofyr | so what does it *actually* do? |
17:49:17 | Araq | your "try at compile-time" stuff |
17:50:46 | judofyr | I must be doing something which prevents it though |
17:51:14 | judofyr | does it work across `let`s? |
17:51:17 | * | jsudlow joined #nim |
17:52:13 | judofyr | I have a "let x = a" in my template to avoid inlining the code multiple times |
17:52:29 | Araq | no, it doesn't work with 'let' |
17:52:52 | judofyr | :( |
17:53:49 | Araq | you can write specialized version that doesn't use 'let' for param: someType{noSideEffect} |
17:54:30 | judofyr | in a template or a proc? |
17:58:05 | judofyr | the reason I want to avoid inlining the code multiple times is because of code growth |
17:58:26 | judofyr | it's probably related to some exponential growth bug in the compiler |
17:59:58 | Araq | well I prefer to fix the bugs that stop it from working instead of hacking around |
18:00:32 | Araq | so if you have an easy test case for this exp bug that would be really helpful |
18:01:36 | Araq | and then file a bug for the broken --implicitStatic:on optimization |
18:04:55 | * | atomic-hedgehog quit (Quit: Lost terminal) |
18:09:10 | judofyr | actually, I'll have to use a let/const. I'm setting multiple fields in a tuple, and one of the depends on the others |
18:11:51 | * | Guest92587 is now known as leavengood |
18:13:59 | * | vezzy quit (Ping timeout: 245 seconds) |
18:14:19 | * | quasinoxen joined #nim |
18:17:13 | judofyr | Araq: here's one about code growth when using const: https://github.com/Araq/Nim/issues/1940 |
18:17:21 | judofyr | or, I assume it's about template expansion code growth |
18:19:09 | judofyr | I have no idea what implicitStatic actually does |
18:19:29 | judofyr | or how it will help me write a `&` that merges the sql-field at compile-time |
18:42:49 | * | jpoirier quit (Quit: Page closed) |
18:43:16 | * | atomic-hedgehog joined #nim |
18:53:33 | Araq | judofyr: implicitStatic executes f(X) iff 'f' has no side-effects and 'X' is a vector of compile-time values |
18:54:27 | Araq | this is a recursive definition so X could be 1, 3, g(x) |
18:55:04 | Araq | note that within 'f' let bindings cause no problem whatsoever for this |
18:56:49 | ldlework | Araq: here's that named anchors change to theindex.html https://github.com/Araq/Nim/pull/1941 |
18:57:19 | wtw | Araq: how the heck do you manage to still make considerable progress when you answer questions here all the time, write articles, the manual and so on? :) |
18:57:40 | wtw | it's quite impressive ;) |
18:57:57 | ldlework | wtw, shh you're distracting him |
18:58:10 | wtw | ;) |
19:02:23 | * | atomic-hedgehog quit (Ping timeout: 240 seconds) |
19:04:17 | * | atomic-hedgehog joined #nim |
19:09:27 | * | skyfex_ quit (Quit: (null)) |
19:12:57 | Araq | ldlework: what's cleaned_keyword? stripped a trailing space? |
19:14:49 | * | gokr_ quit (Ping timeout: 245 seconds) |
19:16:16 | ldlework | removed the `'s |
19:16:27 | ldlework | `mod` |
19:16:33 | * | gokr_ joined #nim |
19:16:34 | ldlework | doesn't works so well with anchors |
19:16:39 | Araq | oh I see |
19:17:02 | ldlework | want me to replace all the other [i] lookups with 'keyword' since I shoved it into a variable? |
19:17:10 | ldlework | for consistency sake |
19:17:29 | ldlework | I mean I realize this is not python anymore so it doesn't matter :P |
19:17:59 | Araq | meh GCSE is surprisingly weak in C compilers |
19:18:11 | Araq | well not that "surprisingly" |
19:18:33 | ldlework | hehe is that a 'yes go ahead'? |
19:19:10 | Araq | that's a be quick while you have my attention :P |
19:19:18 | ldlework | k |
19:20:50 | ldlework | Araq: pushed up |
19:25:33 | Araq | hrm github is down for me |
19:26:56 | ldlework | Araq: its up here |
19:28:59 | * | skyfex_ joined #nim |
19:29:37 | ldlework | Araq: how often do the docs get updated |
19:29:41 | ldlework | every release? |
19:30:20 | * | minciue joined #nim |
19:31:30 | Araq | I'll regenerate tonight so we also get the year update |
19:32:15 | ldlework | Araq: cool, thanks. |
19:32:17 | Araq | somebody also needs to rebuild the .zip with the 0.10.2 tag but including the tools/ directory |
19:33:02 | ldlework | Araq: I was pleased that links like file:///home/dlacewell/dev/nim/Nim/doc/system.html#div alredy worked how I wanted them to :) |
19:33:14 | ldlework | system.nim#div I mean |
19:33:28 | ldlework | given that there are multiple div implementations, it just goes to the first |
19:34:20 | Araq | gradha put some serious effort into this |
19:34:46 | ldlework | I'm wondering how I can tell my bot about all the names it should know about |
19:35:05 | ldlework | I wonder if I could get the doc generator to just output a huuuuuuuuge json list of all the names |
19:35:11 | Araq | simple: process the generated .idx files |
19:35:16 | ldlework | huh |
19:35:18 | * | ldlework looks |
19:35:43 | ldlework | ooo |
19:36:26 | ldlework | beautiful |
19:36:28 | ldlework | :P |
19:37:51 | * | BlaXpirit joined #nim |
19:41:17 | * | Matthias247 joined #nim |
19:45:39 | jsudlow | can a stream input take a file path? |
19:45:49 | * | rpag joined #nim |
19:47:17 | Araq | jsudlow: FileStream exists |
19:50:04 | jsudlow | Araq: cool. So you can use newFileStream(f: File) to load the file |
19:50:20 | jsudlow | when you pass in the f: argument, do you have to make a File type or can you pass in a string? |
19:50:54 | Araq | pretty sure there is an overload which takes a filename |
19:53:06 | ldlework | jsudlow: proc open(filename: string; mode: FileMode = fmRead; bufSize: int = - 1): File |
19:53:10 | ldlework | system.nim |
19:54:09 | dom96 | ldlework: Are you making a doc search bot? |
19:54:15 | ldlework | dom96: yeah |
19:54:22 | dom96 | cool |
19:54:42 | ldlework | At least, I'll get started once the docs are updated |
19:54:54 | jsudlow | ldlework: so how does nim differentiate between all the open procs between modules? By the parameter names? |
19:55:40 | ldlework | jsudlow: parameter type |
19:55:46 | * | HakanD quit (Quit: Be back later ...) |
19:56:16 | jsudlow | ahh ok cool |
19:58:18 | jsudlow | with mode and bufSize are those examples of optional parameters? |
19:58:33 | Araq | yup |
19:59:01 | jsudlow | ldlework: is this the way your thinking of opening the file? var rawjson = open(filename: "map_files/nimrodhunter") |
19:59:31 | jsudlow | it wants a type and I'm not sure what to give it and it makes me think I may be calling it wrong |
19:59:35 | ldlework | jsudlow: that just gives you a File |
19:59:40 | ldlework | wrap that in a FileStream |
19:59:40 | Araq | jsudlow: as I said, there is newFileStream which takes a filename and a mode |
19:59:46 | ldlework | pass it to marshal |
19:59:47 | jsudlow | ahh ok |
19:59:49 | ldlework | or that |
19:59:50 | Araq | no, don't listen to ldlework |
19:59:59 | Araq | just use |
20:00:08 | Araq | newFilestream("foo.txt", fmRead) |
20:00:10 | ldlework | newFileStream is better sure |
20:00:17 | jsudlow | oh cool |
20:09:23 | * | shodan45 quit (Quit: Konversation terminated!) |
20:09:33 | * | shodan45 joined #nim |
20:10:49 | * | Matthias247_ joined #nim |
20:12:42 | jsudlow | so with streams, will newFileStream actually start readin the data in from the file or do you have to manually do that? |
20:13:45 | * | bjz quit (Max SendQ exceeded) |
20:13:52 | * | Matthias247 quit (Ping timeout: 264 seconds) |
20:15:36 | Araq | it doesn't do any reading but the things that take a stream do call some read proc on it |
20:16:58 | Araq | who asked about 'eval'? compiler/nimeval.nim exists you only have to import it and perhaps do some --path voodoo |
20:18:33 | * | bjz joined #nim |
20:19:00 | * | shodan45 quit (Quit: Konversation terminated!) |
20:23:11 | * | iivvoo quit (Ping timeout: 265 seconds) |
20:23:11 | * | jnye joined #nim |
20:23:40 | * | CARAM__ quit (Ping timeout: 265 seconds) |
20:23:40 | * | biscarch quit (Write error: Connection reset by peer) |
20:23:49 | def- | Araq: can't get it working |
20:23:55 | def- | Araq: compiler/nimeval.nim(27, 15) Error: undeclared identifier: 'vmPass' |
20:25:07 | * | dymk quit (Ping timeout: 265 seconds) |
20:25:15 | Araq | try evalPass instead |
20:25:49 | jsudlow | Araq: Thx the filestream is working as expected and its also parsing json correctly |
20:25:57 | jsudlow | with the nim json module |
20:26:05 | * | EastByte_ quit (Ping timeout: 265 seconds) |
20:26:42 | * | CARAM__ joined #nim |
20:28:43 | * | biscarch joined #nim |
20:29:56 | * | EastByte_ joined #nim |
20:30:17 | * | dymk joined #nim |
20:31:38 | * | iivvoo joined #nim |
20:33:48 | Araq | hi iivvoo welcome |
20:34:03 | def- | Araq: compiles, but have to copy libraries to ../lib. Then I get new errors: |
20:34:06 | def- | lib/system.nim(2445, 21) Error: redefinition of 'fileHandle' |
20:34:44 | Araq | that's easy though |
20:35:10 | * | Sphax joined #nim |
20:35:17 | Araq | it doesn't load your config environment properly |
20:35:34 | Araq | which happens to set --cs:partial |
20:35:56 | Araq | now that 10.2 is out, we should make that the default in the compiler itself |
20:36:56 | jsudlow | Araq: using echo($jobj["layers"]) yields http://dpaste.com/10BB3FF#wrap if you dont know the answer thats fine, but do you know how to drill down into the data, type or visible keys? |
20:36:58 | * | enquora joined #nim |
20:38:04 | Araq | jsudlow: the docs of the json module should be of some help |
20:40:17 | * | bjz quit (Ping timeout: 245 seconds) |
20:40:45 | atomic-hedgehog | I'm new to Nim (which seems really awesome so far!) and I ran into the query string issue with httpclient. It looks like that's already been fixed on master (https://github.com/Araq/Nim/pull/1848), but the github build status is showing "exception" for linux. Is master stable enough to use right now? |
20:41:20 | Araq | atomic-hedgehog: you need to use the devel branch which is afaict stable enough |
20:41:56 | Araq | the "exception" for linux is because our buildbot is still not production ready |
20:43:36 | flaviu | The exception isn't the builder's fault. |
20:44:25 | def- | atomic-hedgehog: if you can't switch to devel, you could copy the new uri.nim and httpclient.nim for a quick fix |
20:45:38 | ldlework | We should get Nim on http://devdocs.io/ |
20:45:48 | * | shodan45 joined #nim |
20:45:54 | * | jpoirier joined #nim |
20:46:18 | Araq | wtw: are you the BSD guy? |
20:46:25 | atomic-hedgehog | thanks! I'll give the devel branch a try, and do the manual copy if that fails. |
20:51:09 | * | HakanD joined #nim |
20:55:57 | * | rpag quit (Quit: Leaving) |
20:57:55 | * | UberLambda quit (Quit: Leaving the Matrix) |
20:59:23 | * | reactormonk quit (Ping timeout: 240 seconds) |
21:02:37 | flaviu | gokr: ping |
21:03:15 | * | bjz joined #nim |
21:03:17 | flaviu | Can you check and see what linux-x32 is in the middle of doing? |
21:03:39 | flaviu | Check the process tree, it should be a child of the buildslave |
21:04:14 | flaviu | Afterwards, maybe killing the stuck test will move things along. |
21:05:30 | * | vezzy joined #nim |
21:05:33 | * | quasinoxen quit (Ping timeout: 256 seconds) |
21:05:40 | * | renesac|away is now known as renesac |
21:06:05 | renesac | flaviu: linux-x32 is the x32 abi? |
21:06:14 | renesac | https://en.wikipedia.org/wiki/X32_ABI |
21:06:22 | flaviu | renesac: http://buildbot.nim-lang.org/builders/linux-x32-builder/builds/77 |
21:07:28 | renesac | I don't see the answer to my question |
21:07:39 | renesac | well, it repeats x32, but is it? |
21:07:54 | renesac | or is it i386? |
21:08:36 | Araq | i think its i386 |
21:10:15 | renesac | the name is misleading then |
21:10:29 | flaviu | Doesn't everyone use at least i686 now? |
21:10:31 | renesac | the x32 abi never got much traction, but it exists, and that is it's name |
21:11:30 | flaviu | renesac: in colloquial use, x32 means i386 |
21:11:46 | flaviu | I've never heard it used to refer to the actual x32 ABI |
21:11:50 | renesac | flaviu: those people could be using the x86-64 |
21:12:38 | renesac | flaviu: a google search for "linux x32" don't corroborate your view |
21:13:19 | dom96 | x86 means i386 |
21:13:31 | ldlework | this ^ |
21:13:40 | dom96 | it can probably also mean i686 too though. |
21:13:42 | renesac | yeah |
21:14:06 | * | Trixar_za quit (*.net *.split) |
21:14:34 | renesac | well, the difference between i386 and i686 are the SIMD extensions, right? |
21:14:36 | renesac | not much else |
21:15:10 | ekarlso- | flaviu: how hard would you think it would be to implement JSON Web Signatures in nim ? :D |
21:15:46 | renesac | flaviu: if you like the '32' part, you can use the intel name: IA-32 |
21:17:19 | * | Trixar_za joined #nim |
21:17:34 | * | bjz quit (Max SendQ exceeded) |
21:18:19 | renesac | i686 aparently is compatible with any x86 from Pentium pro and AMD K6 to present |
21:18:21 | renesac | requires MMX |
21:18:37 | renesac | that is 20 years |
21:20:30 | renesac | ok, I'm getting conflicting informations |
21:20:35 | renesac | and wikipedia is useless |
21:21:47 | flaviu | ekarlso-: You'll be needing a crypto library and https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32 |
21:22:32 | flaviu | I'm not at all familair with JWS |
21:22:40 | ekarlso- | flaviu: what crypto lib in that case ? |
21:22:47 | flaviu | openssl, probably. |
21:22:57 | flaviu | Nim depends on it already for https. |
21:23:48 | ekarlso- | ah ok |
21:24:10 | * | Matthias247_ quit (Quit: Matthias247_) |
21:28:00 | * | Matthias247 joined #nim |
21:28:10 | gokr | flaviu: pong |
21:28:45 | gokr | aha |
21:29:15 | flaviu | Around 21:02:37 in the logs |
21:31:01 | renesac | I could use that rational.nim pull request for specifying the clock resolution/period of a clock |
21:31:32 | * | atomic-hedgehog quit (Ping timeout: 244 seconds) |
21:31:58 | renesac | maybe the "duration" struct is the best way to represent the output of a time function, and then functions to convert it to nanosecs, float secs, etc |
21:32:02 | renesac | http://en.cppreference.com/w/cpp/chrono/duration |
21:32:12 | * | atomic-hedgehog joined #nim |
21:34:45 | gokr | flaviu: The linux 64 doesn't seem healthy either. Both are missing nodejs, want me to install that? |
21:35:06 | flaviu | It wouldn't hurt, but that shouldn't cause it to hang. |
21:36:06 | * | keyle joined #nim |
21:36:40 | flaviu | gokr: Can you tell me what the tester's children are? `pstree` |
21:37:33 | gokr | It seems its tasyncawait that's stuck |
21:39:11 | flaviu | gokr: Thanks, I can reproduce it! |
21:39:31 | flaviu | gokr: Kill tasyncawait to get it moving for now |
21:42:12 | gokr | Done on linux 32 |
21:42:17 | gokr | Also threw in nodejs |
21:42:45 | flaviu | dom96: you did async, right? |
21:42:58 | dom96 | indeed |
21:42:59 | flaviu | Can you take a look at tasyncawait? |
21:43:15 | flaviu | It doesn't seem to ever end for me on linux |
21:43:23 | dom96 | On Windows unfortunately. |
21:43:43 | dom96 | There was a recent change to async by def- I think. |
21:43:57 | dom96 | Could you try reverting his change and seeing if that helps? |
21:44:31 | gokr | Same on 64 bit linux |
21:45:05 | gokr | Did a kill there too |
21:49:18 | flaviu | dom96: It no longer hangs without def |
21:49:21 | flaviu | 's patch |
21:49:26 | flaviu | but the tests still fail |
21:50:48 | ekarlso- | man, mus say that the material design stuf ffrom google beats the crap out of boot |
21:50:50 | ekarlso- | bootstrap |
21:50:51 | dom96 | how does it fail? |
21:50:55 | * | gsingh93 joined #nim |
21:51:00 | flaviu | type mismatch: got (int) but expected 'uint16' mostly |
21:51:19 | keyle | bootstrap is horror |
21:51:40 | flaviu | I saw http://purecss.io/ a while back |
21:51:43 | flaviu | looks nice and small |
21:51:52 | dom96 | A compile error? |
21:52:24 | flaviu | In lib/pure/net.nim |
21:52:34 | keyle | purecss looks sweet |
21:52:42 | ekarlso- | https://material.angularjs.org/#/demo/material.components.sidenav |
21:52:44 | ekarlso- | looks even better |
21:53:03 | flaviu | dom96: It doesn't really make sense. |
21:53:10 | keyle | angular is the root of modern evil |
21:53:30 | flaviu | The errors are happening on lines that don't have code that can have a type mismatch |
21:53:47 | dom96 | maybe you reverted the patch incorrectly? |
21:53:53 | ekarlso- | keyle: why ? what else you rather use ? :) |
21:53:55 | flaviu | wait, no |
21:53:59 | keyle | alternative to angular http://gwendall.github.io/way/ |
21:54:06 | flaviu | I messed up reading the line number |
21:54:20 | flaviu | ekarlso-: I don't really like angular either. I'd stick with jquery. |
21:54:34 | ekarlso- | ... what's wrong with angular ? |
21:54:47 | * | Trustable quit (Remote host closed the connection) |
21:54:49 | * | jnye quit (Quit: jnye) |
21:54:51 | flaviu | It's big and I don't understand it. |
21:54:53 | keyle | ekarlso-: because it's another backbone style black-box enforcing nightmare making time bomb |
21:55:03 | dom96 | purecss looks nice indeed. |
21:55:24 | ekarlso- | keyle: so you rathr write all the code yourself ? :p |
21:55:43 | keyle | ekarlso-: hell yes |
21:56:01 | ekarlso- | keyle: :/ |
21:56:03 | keyle | because no one needs 80% of angular's features |
21:56:22 | keyle | but I have been doing one-page js apps since the 90ies |
21:56:51 | keyle | TLDR: don't. |
21:56:56 | dom96 | I would usually try to use as little JS as possible. |
21:57:19 | keyle | typescript is nice, but you're still in javascript land, making all sorts of weird stuff happen |
21:57:22 | dom96 | Adding a framework just so that I can have nice selectors feels wrong. |
21:57:31 | EXetoC | keyle: was it more difficult at the time? disregarding portability and such |
21:57:38 | ekarlso- | keyle: |
21:57:45 | ekarlso- | keyle: I just used angular cause I was used to it.. |
21:57:48 | ekarlso- | and bootstrap as well. |
21:57:57 | keyle | EXetoC: in a way yes, in another way, you rolled your own hell, so you could at least poke at it |
21:58:09 | keyle | ekarlso-: fair enough :) |
21:58:11 | ekarlso- | was actually thinking of kicking out bootstrap in favor of material |
21:58:26 | keyle | probably a good idea |
21:58:49 | keyle | it's always the same with those... version 1 was great, then it's a pile of steaming mess over every version |
21:59:07 | keyle | happened to bootstrap, same for angular (just read online rants) |
21:59:16 | ekarlso- | keyle: still :p |
21:59:25 | ekarlso- | angularjs is pretty widely used |
21:59:34 | ekarlso- | though I love that they are gonna kill $scope |
21:59:59 | keyle | yes it is, there are even jobs advertising for it, which is a big sign of `run for your life` |
22:00:09 | keyle | chances are the previous dev quit and went to a mad house ;) |
22:00:37 | ekarlso- | keyle: really :p, so you write your own stuff all the time ? |
22:01:19 | keyle | ekarlso-: yeah I'm too old to read 15 pages of manual to do what I already know to do |
22:01:45 | ekarlso- | ah |
22:01:56 | keyle | doesn't mean I'm stuck in html 4... |
22:02:15 | * | superfunc joined #nim |
22:02:28 | flaviu | dom96: Found the problem |
22:02:31 | keyle | anyways, enough about js |
22:02:52 | flaviu | lib/pure/asyncdispatch.nim:881 |
22:03:12 | def- | flaviu: that's my change =/ |
22:03:32 | def- | what does it break? |
22:03:35 | dom96 | def-: yeah. Could you please take a look and see what the issue is? |
22:03:39 | dom96 | tasyncawait hangs now |
22:03:54 | flaviu | def-: Unfortunately. I don't know what happens, it enters the error condition 50 times and then it hangs |
22:04:06 | Araq | nevertheless you all get +1000 from me. finally some action in the right direction. |
22:04:12 | flaviu | Removing it makes it work fine. |
22:04:19 | ekarlso- | keyle: well, webdev has never been my thing -,,- |
22:04:24 | ekarlso- | except api side |
22:04:54 | * | BlaXpirit_ joined #nim |
22:05:13 | * | BlaXpirit quit (Ping timeout: 264 seconds) |
22:05:45 | flaviu | def-: for a test case, see async/tasyncawait.nim |
22:07:10 | * | atomic-hedgehog quit (Ping timeout: 255 seconds) |
22:08:51 | * | atomic-hedgehog joined #nim |
22:08:55 | def- | ok, think it's an easy fix. sorry for this |
22:09:12 | ekarlso- | keyle: would you wanna help out ? |
22:09:44 | keyle | html css, sure, but not angular |
22:09:50 | keyle | or material |
22:10:09 | keyle | aka the ftp option is the best for me |
22:10:39 | flaviu | keyle: what about jquery? |
22:11:14 | flaviu | just your general thoughts on it, I personally prefer it over the weird regular javascript API. |
22:11:18 | keyle | jquery unified js in a consistent api. it's a great framework. |
22:11:42 | keyle | jqueryUI is a pile of @#$$% though |
22:14:22 | ekarlso- | keyle: so what should one do then for something like packages ? |
22:14:25 | keyle | the nim doc and pages could use better SEO |
22:15:00 | keyle | description missing, keywords missing, the xml sitemap thingie also helps |
22:15:24 | ekarlso- | keyle: how you mean ? :) |
22:15:35 | keyle | http://nim-lang.org/robots.txt could also help |
22:15:38 | flaviu | keyle: You'd probably be the first professional web developer to look at them |
22:16:02 | keyle | definitely something I will look at helping with |
22:16:27 | keyle | there is nothing bad though |
22:17:48 | EXetoC | gah, random websites eating cpu |
22:20:33 | flaviu | dom96: Can you set up https://www.google.com/webmasters/tools/home?hl=en for the website? |
22:21:03 | def- | flaviu: made a pull request |
22:26:28 | dom96 | flaviu: sure |
22:30:55 | * | fowl joined #nim |
22:32:44 | ekarlso- | wha css stuff or so is used for the websie? |
22:32:50 | renesac | with the new effects system, is it still necessary to manually add the noSideEffect pragma? |
22:33:11 | renesac | i guess yes, but just asking |
22:33:53 | EXetoC | ekarlso-: yes css, very bleeding-edge :p |
22:34:11 | ekarlso- | EXetoC: hah, didn't ask if it was bleeding, purecss or ? |
22:35:44 | BlaXpirit_ | give it a bandage! |
22:35:53 | BlaXpirit_ | you may laugh now |
22:36:56 | * | enquora quit (Quit: enquora) |
22:37:17 | EXetoC | rolf |
22:39:38 | * | akiradeveloper joined #nim |
22:41:53 | dom96 | flaviu: added you |
22:43:08 | akiradeveloper | Nim doesn't have feature like type class (Haskell) or trait (from Rust). If we want to define a set of functions that must be defined, what is availabe in Nim? |
22:44:00 | dom96 | akiradeveloper: http://nim-lang.org/manual.html#user-defined-type-classes |
22:44:08 | EXetoC | kinda broken, but still |
22:44:12 | renesac | akiradeveloper: type classes |
22:44:14 | renesac | http://vocalbit.com/posts/exploring-type-classes-in-nimrod.html |
22:44:28 | EXetoC | as in buggy |
22:45:22 | akiradeveloper | I see a note saying that it's still in development. is it accomplished (or the document is out-of-date)? |
22:45:31 | renesac | should we link blog posts giving further examples of usage, etc, in our documentation |
22:45:40 | renesac | akiradeveloper: see what EXetoC said |
22:46:00 | akiradeveloper | I see. It is buggy right |
22:46:24 | renesac | you have inheritance and similar too... |
22:46:30 | BlaXpirit_ | one day i'll understand bind/mixin |
22:46:33 | renesac | that should work right |
22:46:34 | BlaXpirit_ | but it is not this day |
22:47:46 | akiradeveloper | Inheritance and dynamic or static dispatch doesn't check the set of functions are all implemented? |
22:49:03 | * | BlaXpirit_ quit (Quit: Quit Konversation) |
22:55:16 | * | shevy left #nim ("I'll be back ... maybe") |
22:56:29 | * | Sphax quit (Quit: CYA!!) |
22:57:21 | ekarlso- | should I choose something diff then angular / bootstrap for package web stuffs ? |
22:58:31 | EXetoC | akiradeveloper: no, but it can be used in similar ways, but sometimes you just don't want dynamic dispatching and so on |
23:00:03 | ekarlso- | guess noone really cares anyways :P |
23:00:41 | keyle | ekarlso-: if you use jester as a rest api, I can do the html / css / js using jquery |
23:00:52 | keyle | but I can't promise I will do all the features you talked about |
23:01:06 | flaviu | I don't understand why type classes are buggy. |
23:01:12 | ekarlso- | keyle: think i'll stick to angularjs then.. |
23:01:17 | flaviu | Conceptually, they seem simple to implement. |
23:01:28 | EXetoC | I prefer foundation like I said, but it's better than starting from scratch |
23:01:32 | flaviu | ekarlso-: Yes, stick to angular. No point in rewriting everything. |
23:01:42 | EXetoC | either way |
23:02:48 | ekarlso- | keyle: what's your opinion on material then ? |
23:03:20 | keyle | have not used it in production |
23:03:47 | keyle | ie. no opinion |
23:04:37 | * | atomic-hedgehog quit (Ping timeout: 264 seconds) |
23:11:51 | akiradeveloper | is there some good build tool as a internal DSL like Rake (ruby) or Mix (Elixir)? |
23:13:12 | def- | akiradeveloper: https://github.com/fowlmouth/nake |
23:16:38 | akiradeveloper | def-: omg.. |
23:17:02 | akiradeveloper | add star |
23:17:42 | EXetoC | limited, but useful |
23:19:06 | * | gour quit (Quit: Leaving) |
23:19:26 | akiradeveloper | yeah, seems no namespace |
23:20:21 | sillesta | are there any game projects made with nim yet? |
23:21:20 | EXetoC | namespace? |
23:22:51 | * | Matthias247 quit (Read error: Connection reset by peer) |
23:24:19 | EXetoC | sillesta: I think there are a few people who are working on games, but they haven't really showed anything yet |
23:24:19 | def- | sillesta: there are some nice examples here at least: https://github.com/BlaXpirit/nim-csfml/tree/master/examples |
23:24:26 | EXetoC | there are many people who wants to work on these things |
23:26:41 | * | irrequietus quit () |
23:27:13 | * | sillesta quit (Ping timeout: 256 seconds) |
23:27:35 | keyle | is nim pushing more sdl or sfml? |
23:29:48 | fowl | sdl2 can be deployed on android or ios and those are the future operating systems |
23:29:52 | keyle | nim-csfml looks neat, might give it a shot at the next ludumdare |
23:32:53 | ekarlso- | ludumdare ? |
23:33:01 | keyle | fowl: good point |
23:33:32 | keyle | ekarlso-: http://en.wikipedia.org/wiki/Ludum_Dare |
23:33:56 | keyle | ludumdare is hardcore :) |
23:36:44 | ekarlso- | man Im so glad my $dayjob$ isn't a webdev *shrugs* |
23:38:25 | ekarlso- | keyle: do you have a magic wand to do stuff ? ;p I can't see how folks can do html in a quick way |
23:38:35 | EXetoC | shrug of disgust? :p |
23:39:11 | ekarlso- | EXetoC: well my $dayjob$ is developing python in #openstack a'la route 53 service so I never do web stuff except the API part |
23:39:57 | keyle | no, no magic wand... |
23:40:19 | ekarlso- | keyle: sadface theb |
23:40:34 | keyle | UI is tedious, no matter html, wpf, etc. |
23:41:01 | keyle | at least html isn't compiled, or you have to wait for compilation between every iteration, egh. |
23:41:15 | ekarlso- | :D |
23:41:33 | akiradeveloper | EXetoC: Rake has namespace which makes it possible to separate task in different namespaces and we can distinguish two by namespace1::mytask and namespace2::mytask |
23:41:37 | gokr | The absolutely most powerful web dev env I have ever used/seen is Seaside. But all server side HTML generation is "dying" - but Amber is the modern HTML5 incarnation of Seaside. |
23:41:58 | akiradeveloper | but I don't care. nake looks so useful |
23:42:11 | gokr | Both share the idea of expressing HTML in an internal DSL, but Amber does it "live" in the browser. |
23:42:39 | EXetoC | akiradeveloper: are there any benefits compared to module namespaces? |
23:46:27 | flaviu | ekarlso-: What's hard about html? |
23:47:19 | * | superfunc quit (Ping timeout: 246 seconds) |
23:48:06 | EXetoC | what about the other stuff? |
23:48:32 | ekarlso- | flaviu: good q, I just suck at it :) |
23:49:10 | akiradeveloper | EXetoC: Rake can refer to the namespace from the command like like rake namespace::task name. Furthermore, namespaces can be nested. |
23:49:34 | akiradeveloper | I think, at the first look, this is what nake isn't able to do |
23:49:47 | flaviu | ekarlso-: Can you be more detailed? It's just recursive <foo></foo>. The hard part is the CSS :) |
23:50:10 | ekarlso- | flaviu: +1 for css and styling / layouts |
23:50:51 | EXetoC | maybe one day they can actually fix the fundamental problems |
23:51:26 | EXetoC | but it's mostly for shiny web 2.0 stuff |
23:53:41 | ekarlso- | keyle: you wanna help out with JWT for nim ? |
23:54:09 | * | z1y joined #nim |