00:00:31 | * | dapz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
00:06:29 | * | dapz joined #nimrod |
01:03:20 | * | q66 quit (Quit: Leaving) |
01:14:20 | * | rg4 joined #nimrod |
01:26:09 | * | xenagi quit (Quit: Leaving) |
01:31:30 | * | Sht0 joined #nimrod |
01:44:36 | * | whatdat joined #nimrod |
02:16:45 | * | demilichsd is now known as disambivalence |
02:44:42 | * | dapz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
02:55:41 | * | Jesin quit (Ping timeout: 260 seconds) |
02:59:50 | * | saml_ joined #nimrod |
03:26:23 | * | kshlm joined #nimrod |
03:33:43 | * | edayo joined #nimrod |
03:38:16 | * | BitPuffin joined #nimrod |
03:46:03 | * | whatdat quit (Quit: I'm out...) |
04:02:19 | * | saml_ quit (Quit: Leaving) |
04:11:46 | * | Jesin joined #nimrod |
04:14:08 | * | flaviu1 quit (Ping timeout: 272 seconds) |
04:24:03 | * | Jessin joined #nimrod |
04:24:16 | * | Jesin quit (Ping timeout: 272 seconds) |
04:24:31 | * | Jessin is now known as Jesin |
04:24:51 | * | Jesin quit (Read error: Connection reset by peer) |
04:25:11 | * | Jesin joined #nimrod |
04:27:13 | * | Jesin quit (Read error: Connection reset by peer) |
04:27:15 | * | edayo quit (Quit: Leaving) |
04:28:34 | * | Jesin joined #nimrod |
04:28:42 | * | dapz joined #nimrod |
04:30:57 | * | BitPuffin quit (Ping timeout: 260 seconds) |
04:58:03 | * | ARCADIVS joined #nimrod |
05:02:01 | * | tillzy joined #nimrod |
05:10:13 | * | tillzy quit (Quit: tillzy) |
05:12:17 | * | tillzy joined #nimrod |
05:14:49 | * | tillzy quit (Client Quit) |
05:38:07 | * | fowlmouth quit (Ping timeout: 272 seconds) |
05:41:36 | * | Sht0 quit () |
05:59:50 | * | spectator joined #nimrod |
06:19:31 | * | ARCADIVS quit (Quit: WeeChat 0.4.3) |
06:19:58 | * | ARCADIVS joined #nimrod |
06:30:28 | * | BlaXpirit joined #nimrod |
06:39:51 | * | gsingh93 quit (Quit: Connection closed for inactivity) |
07:00:43 | * | tillzy joined #nimrod |
07:13:20 | * | Varriount_ joined #nimrod |
07:15:24 | * | Varriount quit (Ping timeout: 246 seconds) |
07:21:59 | * | tillzy quit (Quit: tillzy) |
07:26:05 | * | dapz quit (Quit: Textual IRC Client: www.textualapp.com) |
07:32:33 | * | untitaker quit (Ping timeout: 246 seconds) |
07:38:46 | * | untitaker joined #nimrod |
08:21:12 | * | [CBR]Unspoken2 joined #nimrod |
08:22:53 | * | [CBR]Unspoken quit (Ping timeout: 260 seconds) |
08:31:42 | * | rg4 quit (Ping timeout: 246 seconds) |
10:03:57 | * | Fr4n quit (Ping timeout: 245 seconds) |
10:05:37 | * | dirkk0 joined #nimrod |
10:07:51 | * | jasondotstar joined #nimrod |
10:10:18 | * | BlameStross1 joined #nimrod |
11:41:32 | * | ARCADIVS quit (Quit: WeeChat 0.4.3) |
11:42:42 | * | kuzy000_ joined #nimrod |
12:09:16 | * | bjz joined #nimrod |
12:43:53 | * | fowl joined #nimrod |
12:44:13 | * | wan quit (Ping timeout: 260 seconds) |
12:57:32 | * | wan joined #nimrod |
13:08:22 | * | fowl quit (Ping timeout: 240 seconds) |
13:16:22 | * | Jesin quit (Ping timeout: 240 seconds) |
13:23:42 | * | darkf quit (Quit: Leaving) |
13:32:21 | * | Pisuke joined #nimrod |
13:33:41 | * | MyMind quit (Ping timeout: 260 seconds) |
13:38:45 | * | wan quit (Quit: WeeChat 1.0) |
13:55:53 | * | bjz quit (Ping timeout: 240 seconds) |
13:56:42 | * | kokozedman joined #nimrod |
13:56:53 | kokozedman | hi |
14:00:15 | * | kshlm quit (Quit: Konversation terminated!) |
14:01:10 | * | dirkk0 quit (Quit: This computer has gone to sleep) |
14:08:48 | kokozedman | is there an existing work on Google Protobuf for Nim? |
14:09:31 | * | saml joined #nimrod |
14:12:37 | * | bjz joined #nimrod |
14:17:38 | kokozedman | I'm trying to compile babel, and I get this: /babel/src/babelpkg/version.nim(37, 26) Error: undeclared identifier: 'String' |
14:17:57 | * | askatasuna joined #nimrod |
14:26:54 | Araq | kokozedman: yeah well babel doesn't work with bigbreak yet |
14:27:25 | Araq | for weeks I'm telling people to update their packages, or test "nimfix" on babel packages but nothing happens |
14:29:47 | Araq | it's trivial to fix, please fix it and make a PR |
14:35:25 | * | spectator quit (Remote host closed the connection) |
14:50:53 | * | kshlm joined #nimrod |
14:51:01 | * | kshlm quit (Changing host) |
14:51:01 | * | kshlm joined #nimrod |
15:22:33 | * | tillzy joined #nimrod |
15:23:24 | * | tillzy quit (Client Quit) |
15:29:51 | * | dirkk0 joined #nimrod |
15:31:39 | * | dirkk0 quit (Client Quit) |
15:52:54 | * | io2 joined #nimrod |
15:59:25 | * | Matthias247 joined #nimrod |
16:09:01 | * | starless joined #nimrod |
16:09:45 | * | starless quit (Client Quit) |
16:10:53 | * | rg4 joined #nimrod |
16:20:14 | * | brson joined #nimrod |
16:53:44 | * | Fr4n joined #nimrod |
16:55:56 | * | kshlm quit (Quit: Konversation terminated!) |
17:10:27 | * | q66 joined #nimrod |
17:13:39 | * | rg4 quit (Ping timeout: 258 seconds) |
17:42:32 | * | Trustable joined #nimrod |
17:54:32 | * | kemet joined #nimrod |
18:03:02 | * | kemet quit (Quit: Instantbird 1.5 -- http://www.instantbird.com) |
18:03:47 | * | kemet joined #nimrod |
18:13:45 | * | francisl joined #nimrod |
18:45:30 | * | Ven joined #nimrod |
18:52:07 | * | EXetoC joined #nimrod |
19:07:47 | * | francisl quit (Quit: francisl) |
19:16:23 | * | Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
19:23:12 | * | Jesin joined #nimrod |
19:30:57 | * | francisl joined #nimrod |
19:45:38 | * | Jehan_ joined #nimrod |
19:49:03 | * | flaviu1 joined #nimrod |
19:55:57 | * | kemet quit (Ping timeout: 246 seconds) |
20:01:16 | * | wkoch joined #nimrod |
20:10:13 | * | disambivalence quit (Ping timeout: 272 seconds) |
20:23:59 | * | disambivalence joined #nimrod |
20:29:02 | * | disambivalence quit (Quit: Leaving) |
20:30:27 | * | io2 quit (Quit: ...take irc away, what are you? genius, billionaire, playboy, philanthropist) |
20:32:45 | * | wkoch quit (Quit: wkoch) |
20:34:00 | * | wkoch joined #nimrod |
20:38:13 | * | Ven joined #nimrod |
20:39:58 | Trustable | Hi, is it possible to forward-declare a type? |
20:40:57 | reactormonk | Trustable, should be |
20:42:48 | Trustable | reactormonk, how is the syntax? |
20:47:10 | Araq | Trustable: yeah but they all have to be in the same 'type' section |
20:47:24 | Araq | there is no syntax, you simply access it |
20:48:24 | Trustable | ok, I will try |
20:51:06 | Trustable | Araq: Danke :) |
20:54:13 | * | Fr4n quit (Ping timeout: 260 seconds) |
20:54:37 | Araq | Trustable: you're welcome |
20:54:52 | Araq | Jehan_: just fyi I decided that locking levels are worth it :-) |
20:54:56 | * | Fr4n joined #nimrod |
20:55:04 | Araq | the effect system naturally leads to them anyway |
20:55:04 | Jehan_ | Araq: Heh. |
20:55:19 | Jehan_ | As I said, I don't think there's really a "right" or "wrong" answer to that question. |
21:02:42 | Araq | well runtime mechanisms add overhead and in practice what people do is to use locking levels |
21:03:26 | Jehan_ | I really have to see how it can be used in practice in order to judge it fully. |
21:04:40 | Jehan_ | One problem that I've found with many compile-time mechanisms for concurrency is that they often add a lot of boilerplate. |
21:07:35 | Jehan_ | Interesting that someone found it worthwhile to post about the name change to HN. |
21:08:34 | Araq | uh oh |
21:09:05 | Araq | does that mean more distractions for us? ;-) |
21:10:43 | Jehan_ | It'll probably drop off the frontpage in a few hours. |
21:11:07 | Jehan_ | I'm mostly just surprised that this type of news gathered enough interest to make the frontpage. |
21:11:47 | * | superfunc joined #nimrod |
21:17:40 | dom96 | hello guys |
21:17:42 | dom96 | yay, HN |
21:18:33 | * | kuzy000_ quit (Ping timeout: 246 seconds) |
21:19:32 | Trustable | Hi dom96 |
21:23:53 | superfunc | sup dom |
21:25:35 | * | Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
21:26:52 | EXetoC | is the google network slow for anyone else? |
21:27:30 | superfunc | not really |
21:28:40 | * | jasondotstar quit (Quit: Leaving) |
21:30:42 | dom96 | hey Trustable and superfunc. |
21:30:51 | dom96 | Just started Uni. |
21:31:04 | Trustable | 1. semester? |
21:31:51 | dom96 | yes |
21:32:10 | EXetoC | strange |
21:32:11 | Trustable | what subject do you study? |
21:32:50 | dom96 | Computer Science |
21:34:01 | Trustable | nice :) |
21:35:19 | Trustable | I wish you fun and success. |
21:36:20 | Trustable | I finished studies 2 years ago. |
21:39:26 | * | bob_ joined #nimrod |
21:39:49 | superfunc | teaching Java is slowly draining my soul |
21:39:52 | reactormonk | A google recruiter just called me. He told me to learn Java... |
21:40:01 | superfunc | ^ (what timing) |
21:40:07 | reactormonk | ^^ |
21:40:13 | EXetoC | well have fun |
21:40:50 | dom96 | Trustable: Thank you :) |
21:40:52 | Araq | hi bob_ welcome |
21:42:21 | reactormonk | superfunc, how come btw? |
21:43:46 | * | bob_ quit (Ping timeout: 246 seconds) |
21:44:49 | * | bob_ joined #nimrod |
21:46:09 | superfunc | They force me to teach with eclipse, and enforce the awful(my opinion) notion that everything possible should be a class. That coupled with teaching freshman. |
21:47:48 | superfunc | More than that, Java has so much fluff around it, I feel like teaching in a language like python, lua, nim, scheme would be much easier |
21:47:52 | superfunc | for the students |
21:50:44 | dom96 | That sucks. |
21:50:51 | bob_ | is nimrod production ready |
21:50:57 | dom96 | I'll be taught Java soon too unfortunately. |
21:51:05 | Triplefox | when i took cs i was forced to write in java but i did assignments in python |
21:51:10 | Triplefox | first |
21:51:15 | Triplefox | then i redid them |
21:51:28 | dom96 | I guess the lecturers are stuck in their old ways. |
21:54:22 | * | superfunc quit (Ping timeout: 272 seconds) |
21:54:52 | flaviu1 | I know I promised a FFI page, but I'm sorry to say I've lost interest. I made a diff with the little I have completed, if anyone wants it: https://gist.github.com/905a526218fc8e4e686f |
21:55:01 | Araq | bob_: if you know which features to avoid for now, yes |
21:55:20 | bob_ | which features are those? |
21:55:37 | flaviu1 | oh, and http://www.reddit.com/r/programming/comments/2h5gzf/nimrod_is_being_renamed_to_nim/ has some comments on the name change |
21:55:45 | flaviu1 | bob_: Mostly typeclasses and macros |
21:56:34 | Araq | static T, type classes, overly ambitious compile time evaluation |
21:57:13 | Araq | flaviu1: what can we do to motivate you to finish it? |
21:57:52 | flaviu1 | Make me less lazy? :P |
21:58:27 | Araq | well I'm planning to throw out the tutorial for your stuff! |
21:59:10 | flaviu1 | sounds nice, the license is very permissive :D |
22:04:41 | dom96 | flaviu1: work on something more fun for a while? Perhaps a compile and run nim code as a service website? :P |
22:07:53 | * | francisl quit (Ping timeout: 260 seconds) |
22:09:53 | flaviu1 | dom96: Good idea, although I've always liked the idea of my own language... :P |
22:16:20 | flaviu1 | Oh, btw you can get an estimate of the monthly searches for a keyword in google: http://i.imgur.com/Z0CgEHk.png |
22:16:41 | flaviu1 | Sign up for adwords and it's the second page of the form |
22:17:24 | dom96 | flaviu1: do it then. But write it in Nim :P |
22:19:10 | flaviu1 | Nah, nim wouldn't be ideal. A combination of perl (Marpa::R2) and Ocaml (pattern matching, ADTs) I think would be perfect. |
22:23:00 | Jehan_ | If you need much more than LL(k) to parse your language, your grammar is probably too complex for a human being. :) |
22:24:06 | bob_ | what is broken with macros? isn't it used everywhere in the standard library? |
22:24:54 | flaviu1 | Jehan_: The thing is, parsing is black magic to me. I don't want to deal with weird error messages, I just want a thing that is BNF -> Program |
22:25:26 | Jehan_ | flaviu1: I'd just use a PEG parser with a conventional lexer. |
22:25:40 | Jehan_ | For any reasonable language, you can just implement the PEG part with recursion + backtracking. |
22:26:15 | flaviu1 | bob_: Well, the macros use the CTFE, which uses the internal VM. The VM had several bugs last time I used it, a couple months ago. |
22:27:16 | dom96 | I think macros are pretty stable now. They can handle my async await stuff. |
22:27:25 | dom96 | Which isn't exactly trivial. |
22:28:24 | Jehan_ | I think it's not that you can't use them, but that this is one of the places where you can run into unexpected behavior. |
22:29:46 | bob_ | so any use of macros could potentially cause bugs |
22:30:25 | Jehan_ | The more likely event is that the compiler gets confused. |
22:30:36 | flaviu1 | Well, the bugs I've seen are mostly explode-in-your-face-at-compiletime |
22:30:56 | flaviu1 | Although I haven't tested for any other sort |
22:31:24 | Araq | I've yet to see a single macro bug that causes weird runtime behaviour, bob_ |
22:32:41 | bob_ | will the language break backwards compatibility before 1.0? I heard there was a big break branch or something |
22:34:02 | * | Trustable quit (Quit: Leaving) |
22:34:04 | Araq | yes |
22:35:20 | Araq | but it's very easy to write code that works with 0.9.4 as well as with the upcoming releases |
22:36:02 | Araq | we also have a tool to mitigate migration issues |
22:36:06 | Araq | "nimfix" |
22:37:22 | Araq | flaviu1: IMO parsing is the easiest thing that a compiler needs to do |
22:37:56 | Jehan_ | What Araq said. |
22:39:07 | Jehan_ | By the way, there are pros and cons to OCaml for compiler writing. |
22:39:23 | flaviu1 | \_o_/ |
22:39:23 | flaviu1 | I still can't get a intuitive understanding of it, I dunno why |
22:40:02 | Jehan_ | In my experience, the biggest issue is that you often do need mutable state (because passes often incrementally augment your IR instead of completely transforming it). |
22:40:18 | Jehan_ | Luckily, OCaml is a lot more pragmatic about mutable state than some other functional languages. |
22:40:19 | * | askatasuna quit (Quit: WeeChat 1.0) |
22:40:28 | Jehan_ | But it can still be annoying at times. |
22:41:21 | flaviu1 | My idea is to stick all the mutable stuff into one structure, although I'll see how that turns out, given I know nothing about this |
22:41:30 | Jehan_ | Heh. :) |
22:44:26 | Jehan_ | The advantage of using OCaml of course is that it's an extremely robust, battle-tested language with competitive speed. |
22:45:04 | Jehan_ | And, like Nim, you can bundle the compiler with your software fairly easily. |
22:46:01 | bob_ | is there an eta to 1.0? and also a recommended web framework? |
22:46:04 | dom96 | bob_: you can checkout the bigbreak branch now and that means that you won't need to run nimfix on your code, unless you've already written some code. |
22:46:14 | bob_ | I haven't started yet |
22:46:34 | dom96 | bob_: what are you thinking of writing? |
22:46:35 | bob_ | I have been researching the language |
22:47:11 | bob_ | I don't have anything particular in mind right now |
22:47:42 | dom96 | As for web frameworks I recommend my own: jester, but I'm biased of course. |
22:47:50 | dom96 | There aren't really any other ones I don't think |
22:48:02 | dom96 | there is nawak but I think it's largely based on jester |
22:51:27 | Araq | bob_: eta for 1.0 is still december 2014 |
22:51:30 | bob_ | I took a look at the techempower benchmarks and they seem to be rather low for a compiled language except for nawak, but I don't know anyone that uses mongrel2 |
22:52:03 | bob_ | is it because of the web server implementation? |
22:53:53 | Araq | it is because it doesn't run multi-threaded, I think |
22:54:19 | dom96 | it's because I didn't have time to properly optimise it |
22:54:28 | dom96 | I spawned 16 processes |
22:54:39 | dom96 | I couldn't do so dynamically |
22:54:59 | dom96 | so no matter how many cores the machine it was running on had it only used 16 cores. |
22:55:11 | dom96 | also, that's the old select() implementation |
22:55:19 | dom96 | that's where the new async await comes in :) |
22:55:53 | * | Matthias247 quit (Read error: Connection reset by peer) |
22:57:22 | * | Jehan_ quit (Quit: Leaving) |
22:58:31 | flaviu1 | dom96: Have you benchmarked it? |
22:59:15 | dom96 | flaviu1: A bit. But I don't trust my results just yet. |
23:02:10 | dom96 | I will try to do some more optimisations before the release if I get a change though. |
23:02:16 | dom96 | *chance |
23:02:20 | flaviu1 | Too bad jehan left, I wanted to show him this article: http://jeffreykegler.github.io/Ocean-of-Awareness-blog/individual/2014/02/semantic_ws.html |
23:03:53 | flaviu1 | I don't think recursive descent can do that |
23:09:51 | dom96 | That spike in traffic https://github.com/Araq/Nimrod/graphs/traffic |
23:11:29 | flaviu1 | dom96: You've got to screenshot it |
23:11:35 | flaviu1 | only contributers can see |
23:12:10 | dom96 | yeah, better get contributing :P |
23:13:11 | flaviu1 | lol, nice |
23:15:14 | * | fowl joined #nimrod |
23:15:55 | Araq | flaviu1: I think recursive descent can do that, but I only skimmed it |
23:16:05 | bob_ | does async/await only use 1 core? |
23:16:34 | dom96 | currently yes |
23:19:00 | bob_ | I am also considering go but it doesn't have generics |
23:19:53 | * | darkf joined #nimrod |
23:20:28 | * | wan joined #nimrod |
23:24:00 | Araq | bob_: you can easily use 'spawn' from async await though |
23:24:59 | * | t0ryzal joined #nimrod |
23:27:03 | * | t0ryzal left #nimrod (#nimrod) |
23:33:34 | Araq | good night |
23:40:10 | * | francisl joined #nimrod |
23:44:07 | * | BlaXpirit quit (Quit: Quit Konversation) |
23:46:54 | bob_ | where is the sleep function? |
23:47:47 | bob_ | oh never mind it was in os instead of thread |
23:48:24 | * | bjz quit (Read error: Connection reset by peer) |
23:48:45 | * | bjz joined #nimrod |