00:00:04 | filwit | i honestly don't think anyone is going to miss the download button guys.. |
00:00:33 | filwit | it's the focus on the docs/tutorials or rust's head that I agree is a good thing |
00:01:07 | dom96 | Yes, we need a better structure for our docs page. |
00:01:09 | filwit | they also have reddit, twitter, stack-overflow listed right there.. which I think we should add to the "more links" section on the side. |
00:01:37 | dom96 | twitter yes, reddit maybe, but stackoverflow no. |
00:02:01 | Araq | facebook! |
00:02:09 | Trixar_za | facebook? |
00:02:19 | Trixar_za | Nimrod is on facebook? Oo |
00:02:20 | dom96 | sure we've got facebook |
00:02:25 | Araq | google+ |
00:02:30 | filwit | i already added the github link.. maybe reddit as well? i never liked twitter, tbh, but maybe we could add a feed on the sidebar (like Dlang) |
00:02:44 | dom96 | no, no feed. |
00:02:45 | Trixar_za | Oh, with 5 likes |
00:02:49 | dom96 | just a link |
00:03:01 | Trixar_za | 6 now that I liked it |
00:03:03 | Demos | A twitter feed of commits could be useful, although just using RSS would probably be better |
00:03:30 | wan | I also loves how rust.io has just ONE paragraph on the home page, and a very simple&readable list of features. With a 'tell me more' link to the 'sell me all the features in more details' page. |
00:03:57 | wan | Much more eye-parsable than big paragraphs |
00:04:07 | Demos | the biggest thing nimrod needs is time I think. We don't really have any of the things that would let us get popular in a hurry |
00:04:29 | Araq | wan: sometimes you get what you pay for :P |
00:04:42 | Demos | also, I like our docs page. Beats D's any day |
00:05:18 | Trixar_za | So what you're saying Demos, is that we need women to promote Nimrod |
00:05:28 | Demos | Trixar_za, what? |
00:05:28 | dom96 | Trixar_za: Aww, I was gonna stalk you but it doesn't tell me who liked it. |
00:05:30 | Trixar_za | Preferably in skimpy clothing |
00:05:30 | wan | Demos: the only thing that makes something popular is someone popular |
00:05:40 | Demos | wan, or money |
00:05:45 | filwit | Trixar_za: LOL... i see what you did there... |
00:05:52 | EXetoC | or bacon |
00:05:57 | Trixar_za | Well, it works for Computer Magazines, so why not a language |
00:06:03 | Demos | Trixar_za, lets not be the go-daddy of programming languages please |
00:06:10 | dom96 | wan: do you realise that rust.io isn't rust's website? |
00:06:28 | wan | Demos: Not really. Is Golang popular because Google has money? No, it's because Google is popular. Same for rust, Same for everything. |
00:06:41 | Trixar_za | Hey, I already invented the Pimpism religion, so what did you expect? :P |
00:06:54 | wan | oh, rust-lang.org, yeah, my keyboard slipped |
00:07:23 | wan | It was simpler to type |
00:07:46 | Araq | wan: well we don't even have enough money that I can quit my day job ... |
00:08:15 | dom96 | good night |
00:08:23 | Trixar_za | We could also try the John C Dvorak route and become popular by stating the exact opposite of what happens in reality and making sensualist statements |
00:08:29 | Trixar_za | Night dom96 |
00:08:44 | * | askatasuna quit (Quit: WeeChat 1.0) |
00:08:47 | wan | Araq: We just need Notch or somebody famous to start programming in Nim |
00:09:29 | filwit | wan: or we need to make our own cool stuff |
00:09:33 | Trixar_za | We have a nitch - it's a scripting language that compiles to C - what more do you need? :P |
00:09:57 | * | Jehan_ quit (Quit: Leaving) |
00:10:18 | wan | filwit: Yes, make something ultra-cool that gains popularity, and bootstrap Nim's popularity |
00:10:21 | Araq | wan: the minecraft guy? |
00:10:22 | dom96 | wan: That won't help, dart still isn't popular. |
00:10:23 | wan | Not easily done |
00:10:42 | filwit | dom96: dart's performance sux |
00:10:44 | wan | Maybe not in usage, but I bet more people know about it |
00:11:07 | dom96 | yeah, minecraft players. |
00:11:10 | Trixar_za | er - what the hell is dart? |
00:11:17 | Trixar_za | Rust I've heard about, but dart? |
00:11:18 | dom96 | Anyway, I need to sleep |
00:11:28 | Araq | good night, dom96 |
00:11:33 | filwit | night |
00:11:39 | * | Trustable quit (Quit: Leaving) |
00:12:02 | wan | sleep well |
00:13:20 | filwit | Araq, Jehan_: you guys know a lot about generic programming, how much of a performance concern is "code bloat" with cache limits? Are there any obvious caveats? |
00:14:23 | Araq | filwit: usually your exe-size is a tiny fraction of your working set |
00:14:34 | Trixar_za | Depends on what you think of as code bloat vs portability |
00:14:54 | filwit | reason i'm asking is cause i recently realized I was going about my engine dispatch system all wrong. I was copying a delegate system: one instance & one func pointer... where i realized I should be making func pointers a type-specific proc which updates all instances (through normal dispatch) |
00:14:58 | Trixar_za | some people argue that genie is better, but it's not exactly portable to say Windows or MacOs (or Linux that uses Qt) |
00:15:59 | Trixar_za | I've found that with minor effort I can port nimrod everywhere without changing much (if any) code |
00:16:09 | EXetoC | dom96 always needs to sleep |
00:16:27 | Araq | filwit: multi methods are not that slow anymore |
00:16:50 | Araq | and when you don't override, it gets optimized to a static call |
00:17:08 | filwit | Araq: okay, so it's not a problem if I have each "model" (a unique game-object type) build a dispatcher proc for each event (only those the model uses, eg, update, physicsStep, etc). |
00:17:55 | filwit | Araq: say i have 50 different models, and each needs an update. Is that considered a lot of code bloat? Now that I think about it... i don't think that would be pushing any limited in the slightest.. |
00:18:15 | * | jasondotstar quit (Ping timeout: 244 seconds) |
00:18:24 | filwit | Araq: i don't need methods... I agree it's mostly a bad design. |
00:18:36 | Araq | lol |
00:19:04 | Trixar_za | Eh, even with bad design (like 99% of what I code) it seems to run pretty well |
00:19:40 | filwit | Trixar_za: i don't mean Nim's methods are a bad design.. i mean the need for methods in general is not as good design as procvars |
00:19:42 | Trixar_za | I dare say Araq invented an idiot proof language :P |
00:20:01 | Araq | well I'm not really good at these component based designs, filwit |
00:20:20 | Trixar_za | I have no idea what you mean with procvars, but alright :P |
00:20:24 | Araq | Trixar_za: no way |
00:20:40 | Araq | but thanks for the compliment |
00:21:26 | filwit | Araq: yeah, well i've got the architecture down... it's the cache-limits and code-bloat of generics I'm not experiences with. |
00:21:50 | Trixar_za | Well if an idiot (me) can use it, then it probably is |
00:22:11 | * | jasondotstar joined #nimrod |
00:22:20 | filwit | Araq: but thanks for your feedback anyways... i'll just have to benchmark to know for sure.. i'm just worried about ARM hardware.. guess I should wrap GLES and start testing there. |
00:23:25 | Araq | filwit: I don't do many tests. I optimize the size of datastructures instead |
00:23:54 | Araq | that always pays off |
00:24:24 | filwit | yeah i love how objects in Nim don't have any (runtime) typeinfo when not needed |
00:24:55 | Araq | I love how set[] can be a single byte :-) |
00:25:20 | filwit | i never use sets... I should, they're just unfamiliar to me. |
00:26:58 | Araq | ha, I consider bitsets and templates nim's best features :-) |
00:27:15 | filwit | btw, i think nim-lang.org is almost better than nimlang.org, considering it's more like rust-lang.org & scala-lang.org than dlang.org & golang.org |
00:28:25 | filwit | not that those are bad languages... i just prefer the subtle similarity to Rust and Scala (which Nim feels more similar too) than D an Go |
00:29:31 | EXetoC | Araq would disagree :p |
00:30:11 | EXetoC | tell him! |
00:30:17 | filwit | well i mean in some ways, i've never actually used either Scala or Rust (and have used D, and a tiny tiny bit of Go) |
00:30:51 | Araq | EXetoC: why would I? scala is quite similar to nim syntactically |
00:30:52 | filwit | i just meant based off the docs (like the fact that Scala uses 'seq' and Rust's object-oriented model feels kinda like Nim's) |
00:31:51 | EXetoC | nm |
00:34:51 | * | Joe_knock joined #nimrod |
00:48:40 | * | Varriount|Mobile joined #nimrod |
00:49:53 | Varriount|Mobile | dom96, Araq: Sorry about the builder being down - the computer room in my house is being moved, and my computer's currently in a room without ethernet access |
00:54:36 | Araq | Varriount|Mobile: no worries |
00:54:44 | Araq | but I should sleep now, good night |
00:58:20 | * | jasondotstar quit (*.net *.split) |
00:58:21 | * | mahoganygiraffe quit (*.net *.split) |
01:00:12 | * | jasondotstar joined #nimrod |
01:03:09 | * | mahoganygiraffe joined #nimrod |
01:14:49 | * | shodan45_ joined #nimrod |
01:14:59 | * | shodan45_ quit (Client Quit) |
01:15:16 | * | shodan45 quit (Ping timeout: 255 seconds) |
01:15:16 | * | johnsoft quit (Ping timeout: 255 seconds) |
01:15:54 | * | johnsoft joined #nimrod |
01:21:17 | * | noam_ joined #nimrod |
01:22:43 | * | Demos_ joined #nimrod |
01:23:08 | * | ARCADIVS joined #nimrod |
01:28:26 | * | Joe_knock quit (*.net *.split) |
01:28:26 | * | Demos quit (*.net *.split) |
01:28:27 | * | renesac quit (*.net *.split) |
01:28:27 | * | noam quit (*.net *.split) |
01:30:47 | * | Boscop_ joined #nimrod |
01:31:25 | * | Sht0 joined #nimrod |
01:34:26 | * | Boscop quit (Ping timeout: 260 seconds) |
01:36:16 | * | Joe_knock joined #nimrod |
01:39:21 | * | Demos_ quit (*.net *.split) |
01:39:23 | * | bjz quit (*.net *.split) |
01:39:25 | * | OrionPK quit (*.net *.split) |
01:50:22 | * | bjz joined #nimrod |
01:50:22 | * | OrionPK joined #nimrod |
01:51:07 | * | Demos joined #nimrod |
01:51:22 | * | Sht0 quit (Ping timeout: 240 seconds) |
02:03:30 | * | Joe_knock quit (Quit: Leaving) |
02:08:34 | * | q66[lap] quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
02:12:11 | * | Demos_ joined #nimrod |
02:15:18 | * | Demos quit (Ping timeout: 246 seconds) |
02:20:57 | * | filwit quit (Ping timeout: 260 seconds) |
02:23:32 | * | filwit joined #nimrod |
02:25:39 | * | saml_ joined #nimrod |
02:28:37 | * | filwit quit (Quit: Leaving) |
02:37:49 | * | Demos_ quit (Read error: Connection reset by peer) |
02:38:50 | * | q66 quit (Quit: Leaving) |
04:22:52 | * | nande quit (Remote host closed the connection) |
04:36:16 | * | Francisco quit (Remote host closed the connection) |
04:39:33 | * | Demos joined #nimrod |
04:48:12 | * | flaviu joined #nimrod |
05:26:57 | * | saml_ quit (Ping timeout: 245 seconds) |
05:48:10 | * | Demos quit (Read error: Connection reset by peer) |
06:02:41 | * | skyfex quit (Quit: Computer has gone to sleep.) |
06:16:37 | * | flaviu quit (Ping timeout: 260 seconds) |
07:22:22 | * | kunev joined #nimrod |
08:28:18 | * | Sht0 joined #nimrod |
08:42:21 | * | BlaXpirit joined #nimrod |
08:43:34 | * | BlaXpirit quit (Client Quit) |
08:44:59 | * | BlaXpirit joined #nimrod |
09:30:57 | dom96 | good morning |
09:35:28 | * | BlaXpirit quit (Quit: Quit Konversation) |
09:35:38 | Araq | hi dom96 |
09:37:00 | * | BlaXpirit joined #nimrod |
09:57:56 | * | Johz joined #nimrod |
10:04:19 | dom96 | hey Araq, what's up? |
10:06:23 | Araq | I'm working on the release |
10:09:06 | dom96 | is the new type naming convention documented anywhere? |
10:09:27 | Araq | yes, it's in our style guide (NEP-1) |
10:12:33 | dom96 | cool. So we can assume that anything that starts with a capital letter is a type? |
10:12:51 | Araq | no, constants can be Uppercased too |
10:13:40 | dom96 | Not according to the style guide. |
10:14:08 | Araq | the style guide should be updated then |
10:15:10 | Araq | the rule is essential for wrappers |
10:15:28 | dom96 | ok |
10:16:57 | dom96 | updated |
10:18:27 | Araq | so ... should we go for both 0.9.6 and 0.10 ? |
10:19:45 | dom96 | Let's try to release 0.10 first and then if we have time we can also create a 0.9.6 release. |
10:22:07 | * | Trustable joined #nimrod |
10:24:53 | dom96 | Is bigbreak using --cs:partial or the rule that filwit suggested? |
10:25:17 | dom96 | looks like the former |
10:32:31 | dom96 | You broke a lot of modules... |
10:33:35 | Araq | I broke your sockets and async stuff |
10:33:40 | dom96 | yep |
10:33:43 | Araq | the other stuff already works afaict |
10:34:07 | Araq | brb |
10:46:39 | dom96 | shouldn't we follow Python and have True and False instead of true and false? |
10:59:30 | NimBot | Araq/Nimrod bigbreak 2dff5ef Dominik Picheta [+0 ±1 -0]: Fixed gcsafe in asynchttpserver module. |
10:59:30 | NimBot | Araq/Nimrod bigbreak 2525215 Dominik Picheta [+0 ±1 -0]: Ftpclient module now uses generics. |
10:59:30 | NimBot | Araq/Nimrod bigbreak 8510791 Dominik Picheta [+0 ±1 -0]: Async macro fixes. Added waitFor. |
10:59:30 | NimBot | Araq/Nimrod bigbreak 3a00692 Dominik Picheta [+1 ±2 -0]: Add asyncftpclient module. |
10:59:30 | NimBot | 2 more commits. |
11:17:10 | Araq | no, we have 'nil', 'true' and 'false' |
11:18:06 | dom96 | ok |
11:19:27 | dom96 | Your binary rename screws up nimbuild. |
11:19:35 | Araq | C# also uses true and false |
11:19:55 | Araq | and c++ too iirc |
11:23:12 | * | elie2 joined #nimrod |
11:24:55 | Araq | hi elie2 welcome |
11:27:16 | Araq | dom96: is it foo.nimble then instead of foo.babel? |
11:27:34 | dom96 | Yeah, I guess. |
11:29:34 | dom96 | Araq: syslocks is broken |
11:29:35 | * | reactormonk quit (Ping timeout: 260 seconds) |
11:29:36 | * | eigenlicht_ quit (Ping timeout: 260 seconds) |
11:29:40 | * | elie1 quit (Ping timeout: 260 seconds) |
11:29:50 | * | reactormonk joined #nimrod |
11:30:20 | dom96 | Araq: So you're not going to implement filwit's case sensitivity rules (for this release?)? |
11:30:31 | Araq | that is correct |
11:30:48 | Araq | the current rules are good enough and maybe even the best compromise |
11:30:57 | * | eigenlicht_ joined #nimrod |
11:31:17 | Araq | we can always add the rule "_foo" is the same as "Foo" |
11:31:38 | dom96 | but then if you introduce it later we will have more breakage, |
11:31:54 | Araq | which I really like ... the idea of eliminating upper cased letters altogether is growing on me :P |
11:32:13 | Araq | dom96: this particular rule doesn't break anything |
11:32:14 | Araq | as _foo is currently not valid |
11:33:21 | dom96 | I don't get it, so you want all types to start with an underscore? |
11:35:25 | dom96 | Ugh. Varriount broke os.nim I think |
11:36:30 | * | mko quit (Ping timeout: 250 seconds) |
11:37:45 | * | [CBR]Unspoken quit (Ping timeout: 250 seconds) |
11:39:22 | * | skroll quit (Ping timeout: 250 seconds) |
11:39:32 | * | skroll joined #nimrod |
11:41:39 | * | jez0990 joined #nimrod |
11:42:18 | * | jez0990_ quit (Ping timeout: 250 seconds) |
11:44:16 | * | [CBR]Unspoken joined #nimrod |
11:53:09 | Araq | how so? |
11:53:15 | Araq | obviously os.nim works for me ... |
11:53:25 | dom96 | Only on windows in non-unicode mode. |
11:53:51 | Araq | well I broke posix.nim |
11:54:10 | dom96 | well, fix it otherwise I can't rebuild the builder |
11:55:27 | * | kunev_ joined #nimrod |
11:56:04 | NimBot | nimrod-code/nimbuild master 5b29767 Dominik Picheta [+0 ±1 -0]: Builder: case sensitivity fixes. |
11:56:09 | * | phI||Ip_ joined #nimrod |
11:57:05 | * | eigenlicht_ quit (*.net *.split) |
11:57:06 | * | phI||Ip quit (*.net *.split) |
11:58:08 | NimBot | Araq/Nimrod bigbreak 8446d51 Dominik Picheta [+0 ±4 -0]: Winlean and threads case sensitivity fixes. |
11:58:08 | NimBot | Araq/Nimrod bigbreak 4a7a47f Dominik Picheta [+0 ±1 -0]: Ftpclient backwards compatibility fixes. |
11:58:08 | NimBot | Araq/Nimrod bigbreak fb4e544 Dominik Picheta [+0 ±1 -0]: Fixed issue with os module in non-unicode mode on Windows. |
11:58:23 | * | zahary1 joined #nimrod |
11:58:24 | dom96 | bbl |
11:59:33 | * | kunev quit (Ping timeout: 246 seconds) |
11:59:34 | * | OrionPK quit (Read error: Connection reset by peer) |
12:01:15 | * | MightyJoe joined #nimrod |
12:01:19 | * | armin1 joined #nimrod |
12:02:04 | * | BlaXpirit quit (Quit: Quit Konversation) |
12:03:02 | * | silven joined #nimrod |
12:03:16 | * | milosn quit (Remote host closed the connection) |
12:03:22 | * | BlaXpirit joined #nimrod |
12:04:22 | * | eigenlicht_ joined #nimrod |
12:07:54 | * | Johz quit (*.net *.split) |
12:07:55 | * | cyraxjoe quit (*.net *.split) |
12:07:55 | * | zahary quit (*.net *.split) |
12:07:56 | * | silven_ quit (*.net *.split) |
12:07:56 | * | reloc0 quit (*.net *.split) |
12:08:50 | * | Johz joined #nimrod |
12:10:45 | * | milosn joined #nimrod |
12:14:28 | * | Varriount|Mobile quit (Remote host closed the connection) |
12:14:46 | * | Varriount|Mobile joined #nimrod |
12:29:19 | * | Trustable quit (Ping timeout: 240 seconds) |
12:34:29 | * | Sht0 quit (Ping timeout: 244 seconds) |
12:40:07 | * | Varriount|Mobile quit (*.net *.split) |
12:40:08 | * | eigenlicht_ quit (*.net *.split) |
12:41:01 | * | eigenlicht_ joined #nimrod |
12:41:26 | * | Trustable joined #nimrod |
12:52:49 | * | Trustable1 joined #nimrod |
12:55:42 | * | noam__ joined #nimrod |
12:56:21 | * | darkf quit (Quit: Leaving) |
12:56:29 | * | kunev_ quit (Ping timeout: 244 seconds) |
12:57:36 | * | Boscop__ joined #nimrod |
12:59:07 | * | Trustable quit (*.net *.split) |
12:59:37 | * | cyraxjoe joined #nimrod |
12:59:44 | * | phI||Ip joined #nimrod |
13:00:56 | * | noam_ quit (Ping timeout: 244 seconds) |
13:00:58 | * | phI||Ip_ quit (Ping timeout: 244 seconds) |
13:03:43 | * | q66 joined #nimrod |
13:06:54 | * | MightyJoe quit (Ping timeout: 244 seconds) |
13:06:55 | * | Boscop_ quit (Ping timeout: 244 seconds) |
13:08:53 | * | jez0990_ joined #nimrod |
13:09:18 | * | eigenlicht_ quit (Ping timeout: 255 seconds) |
13:09:46 | * | jez0990 quit (Ping timeout: 255 seconds) |
13:26:20 | * | eigenlicht_ joined #nimrod |
13:29:36 | * | Boscop__ quit (Read error: Connection reset by peer) |
13:30:22 | * | Boscop__ joined #nimrod |
13:34:43 | * | Triplefox_ joined #nimrod |
13:35:03 | * | Triplefox quit (Ping timeout: 272 seconds) |
13:40:34 | * | delian66_ quit (Ping timeout: 272 seconds) |
13:41:40 | * | delian66 joined #nimrod |
13:48:41 | * | delian66 quit (Remote host closed the connection) |
14:00:12 | * | milosn quit (Remote host closed the connection) |
14:03:57 | * | saml_ joined #nimrod |
14:07:58 | * | milosn joined #nimrod |
14:12:13 | * | flaviu joined #nimrod |
14:14:39 | dom96 | Araq: Is it ok for some modules to contain both synchronous and asynchronous implementations but for some to be in separate modules? |
14:15:05 | dom96 | for example httpclient contains both async and sync implementations |
14:15:31 | dom96 | but ftpclient and asyncftpclient modules exist, the former implementing the sync and the latter the async. |
14:15:44 | dom96 | The reason for this is that ftpclient contains the old async implementation. |
14:24:00 | Araq | dom96: that's fine |
14:24:08 | dom96 | good |
14:27:47 | dom96 | btw can I rename the types that you haven't renamed? |
14:28:01 | dom96 | You seem to only have renamed the definitions of the types |
14:28:04 | dom96 | is that intentional? |
14:30:41 | Araq | dom96: what types? |
14:31:00 | dom96 | for example in smtp |
14:31:06 | dom96 | proc debugSend(smtp: TSMTP, cmd: string) |
14:31:14 | dom96 | Can I rename that to Smtp? |
14:31:37 | Araq | sure, I didn't bother since I'd run nim pretty over it |
14:31:48 | Araq | which fixes that automatically |
14:32:00 | dom96 | oh, so you're going to run it on all modules later? |
14:32:15 | Araq | I already did, except for the sockets stuff |
14:32:32 | dom96 | ok, I guess I should try it out. |
14:33:14 | Araq | use --pretty.overwrite:on and then git diff tells you what it did |
14:33:33 | Araq | otherwise it generates some shitty module.pretty.nim file |
14:33:50 | dom96 | well, it crashed |
14:34:20 | Araq | yes, that's its other problem :P |
14:34:20 | dom96 | its giving me lots of errors for other modules |
14:34:31 | Araq | I know, I'm working on it |
14:34:43 | dom96 | ok |
14:35:20 | dom96 | damn |
14:35:26 | dom96 | I'm going to need ssl support for smtp |
14:35:36 | dom96 | which means implementing it for async |
14:42:43 | NimBot | Araq/Nimrod bigbreak fb688d1 Araq [+0 ±1 -0]: fixed posix.nim |
14:42:43 | NimBot | Araq/Nimrod bigbreak c40f981 Araq [+0 ±1 -0]: babel is now nimble |
14:42:43 | NimBot | Araq/Nimrod bigbreak 1f85b3b Araq [+3 ±5 -1]: VM supports math and a few os procs |
14:42:43 | NimBot | Araq/Nimrod bigbreak 5fad73c Araq [+1 ±12 -0]: Merge branch 'bigbreak' of https://github.com/Araq/Nimrod into bigbreak |
14:47:32 | * | zling_____ joined #nimrod |
14:49:01 | * | Jehan_ joined #nimrod |
14:50:17 | * | vegai_ joined #nimrod |
14:51:00 | * | darkfusi1n joined #nimrod |
14:52:17 | NimBot | Araq/Nimrod bigbreak f6dc76c Dominik Picheta [+0 ±2 -0]: Case sensitivity fixes for Posix. |
14:54:25 | * | zling____ quit (Ping timeout: 260 seconds) |
14:54:32 | * | Skrylar quit (Ping timeout: 260 seconds) |
14:54:34 | * | vissborg quit (Ping timeout: 260 seconds) |
14:54:36 | * | EastByte quit (Ping timeout: 260 seconds) |
14:54:37 | * | dom96 quit (Ping timeout: 260 seconds) |
14:54:37 | * | darkfusion quit (Ping timeout: 260 seconds) |
14:54:39 | * | vegai quit (Ping timeout: 260 seconds) |
14:54:41 | * | EastByte joined #nimrod |
14:55:11 | * | Skrylar joined #nimrod |
14:56:01 | * | dom96 joined #nimrod |
14:56:05 | * | vissborg joined #nimrod |
14:56:24 | dom96 | Araq: undefined reference to `__atomic_add_fetch' |
14:58:35 | * | Varriount|Mobile joined #nimrod |
15:00:18 | * | [CBR]Unspoken1 joined #nimrod |
15:05:18 | * | [CBR]Unspoken quit (*.net *.split) |
15:06:35 | Jehan_ | dom96: Could I convince you to make babel configurable (via an environment variable or commandline option, not a global .ini file) to use a different directory for packages? |
15:07:19 | Jehan_ | The rationale is that I want something like Python's virtual environments. |
15:07:52 | dom96 | I can add a command line option. |
15:08:08 | Jehan_ | I'd prefer an environment variable if that's possible. |
15:08:17 | dom96 | I think Araq will dislike that. |
15:08:21 | Jehan_ | So I don't have to provide the option each time. |
15:08:28 | Varriount|Mobile | Why not do both? |
15:08:56 | flaviu | Environment variable/parameter, fallback to ini file? |
15:09:24 | Varriount|Mobile | Default -> Environment Variable -> Command Line Option |
15:09:31 | Jehan_ | Yup, I didn't mean that to replace the current way of doing things. |
15:09:55 | Jehan_ | But I'd really like to have multiple self-contained Nim(rod) installations. |
15:10:39 | dom96 | Jehan_: Create an issue for it please, I don't really have time now to implement it anyway. |
15:11:34 | Jehan_ | dom96: Oh, my question was just whether you'd see a problem. I could provide an implementation + pull request myself. |
15:12:27 | Jehan_ | I would probably wait until after the great rename, anyway. :) |
15:12:42 | dom96 | The only issue I can see is some tool setting the env var and the user getting confused about why their packages are being installed somewhere else. |
15:13:24 | EXetoC | you could then unset the env var I guess |
15:13:38 | dom96 | But we can get Babel to echo that it's installing to someplace else because an env var is telling it to. |
15:13:41 | EXetoC | I mean, the script author could |
15:14:05 | dom96 | Yes, but if the script fails the user will be left with it. |
15:14:20 | dom96 | And may have no idea where it's coming from. |
15:15:06 | EXetoC | so unset regardless |
15:15:42 | flaviu | dom96: That wouldn't be your problem though. I'd be the script writer's responsibility |
15:16:40 | Jehan_ | Well, scripts setting environment variables aren't persistent, unless you source them. |
15:16:58 | Jehan_ | In which case you presumably know what you're doing. |
15:17:57 | EXetoC | oh |
15:18:03 | EXetoC | that's good |
15:18:54 | Varriount|Mobile | Jehan_: I would love a way to do virtualenv-like stuff for babel |
15:19:31 | flaviu | Or babel could be like npm and not require virtualenvs |
15:20:07 | Varriount|Mobile | flaviu: Huh? |
15:20:43 | flaviu | From what I understand virtual environments are there so you can have multiple versions of a package. |
15:21:07 | flaviu | npm does that: Each package gets exactly the package versions it asks for |
15:22:16 | Jehan_ | flaviu: virtualenv is for more than that. |
15:22:47 | EXetoC | flaviu: I don't know if you know, but babel supports that |
15:23:07 | flaviu | EXetoC: Really? That's good then |
15:23:19 | Jehan_ | flaviu: For example, different language versions. |
15:23:38 | Jehan_ | The most important part, though, is that everything is contained in a single directory. |
15:24:02 | Jehan_ | Which means that you can dispose of a virtualenv cleanly and easily. |
15:24:34 | Jehan_ | And that different installations are completely independent of another and cannot interfere with one another, even in subtle ways. |
15:25:19 | Jehan_ | For example, if you have packages with conflicting module names, then a new virtualenv will allow you to start with a clean slate and not accidentally reference a leftover module that you still have lying around. |
15:26:57 | Jehan_ | It's also useful if you want to run stuff in a chroot jail. |
15:44:25 | * | saml_ quit (Quit: Leaving) |
15:48:07 | * | moosakoch joined #nimrod |
15:58:07 | * | Varriount|Mobile quit (Read error: Connection reset by peer) |
15:58:13 | * | Varriount-Mobile joined #nimrod |
16:08:47 | * | bogen joined #nimrod |
16:14:52 | * | untitaker quit (Ping timeout: 240 seconds) |
16:15:13 | dom96 | hello moosakoch |
16:15:49 | moosakoch | hello there |
16:17:27 | moosakoch | how are you |
16:17:35 | Araq | dom96: well I don't get what this error means |
16:17:41 | dom96 | moosakoch: good, you? |
16:17:53 | moosakoch | fine |
16:18:00 | bogen | hi dom96 and Araq |
16:18:12 | Araq | hi bogen |
16:18:13 | dom96 | hey bogen |
16:18:24 | moosakoch | hi Araq |
16:18:32 | * | OrionPK joined #nimrod |
16:18:49 | dom96 | Araq: here is the full error https://gist.github.com/dom96/d27e7fa273ae3e791f3b |
16:19:21 | dom96 | IIRC I hit this error some time ago too, but I can't remember how I worked around it. |
16:19:59 | * | untitaker joined #nimrod |
16:20:00 | * | untitaker quit (Excess Flood) |
16:20:32 | * | untitaker joined #nimrod |
16:23:03 | bogen | I have some C++ code I'm wrapping. I tried to "declassify" c++ library but it got it was way too tangled. So I'm using macros that use emits for the parts I need to access. (I know, that is ugly, but but for me right now better than rewriting the libary). Anyways, I know there is a pragma to disable warnings for specific declartions, but can I disable "is declared but not used [XDeclaredButNotUsed]" (a hint) for indidividual declarations? I ha |
16:23:12 | * | moosakoch quit (Quit: Page closed) |
16:25:48 | Araq | bogen: warning[XDeclaredButNotUsed]:off |
16:26:06 | Araq | dom96: which C compiler do you use? |
16:26:31 | bogen | yes, I tried thatError: invalid pragma: warning[XDeclaredButNotUsed]: off |
16:27:09 | Araq | ah, try hint[...] instead |
16:27:15 | dom96 | Araq: gcc 4.4.3 |
16:28:24 | bogen | ah yes, the obvious of course :) that worked (I just did not see that in the pragma documention). could have tried rather than asking :) |
16:28:28 | dom96 | shouldn't raiseOSError be raiseOsError? |
16:28:41 | dom96 | The latter looks very odd I admit. |
16:28:52 | Araq | dom96: well I like it better this way |
16:29:09 | Araq | and thanks to cs:partial it doesn't matter |
16:29:46 | dom96 | ok, i'll use raiseSSLError then. |
16:29:53 | Araq | yeah |
16:30:04 | Araq | dom96: I use gcc 4.8.1 |
16:30:11 | Araq | I think it's GCC related |
16:35:08 | dom96 | ok, i'll install 4.8 on the VPS. |
16:36:14 | Araq | no wait |
16:36:43 | dom96 | too late |
16:36:45 | dom96 | but it doesn't help |
16:36:56 | Araq | hmm |
16:38:52 | * | flaviu quit (Remote host closed the connection) |
16:39:24 | dom96 | should enum values use CamelCase? |
16:39:33 | dom96 | or pascalCase? |
16:41:36 | EXetoC | only CamelCase for types, right? that seems consistent |
16:42:35 | dom96 | EXetoC: Constants can be CamelCase too |
16:42:40 | dom96 | Araq: My memory was correct: http://build.nimrod-lang.org/irclogs/22-03-2014.html |
16:43:17 | EXetoC | it makes more sense now because of the prefixes. you want to keep that? |
16:43:38 | dom96 | And I have 4.9 on windows |
16:46:19 | dom96 | and I can't get 4.9 on Ubuntu 10.04 |
16:46:28 | EXetoC | and the 2-space indents are here to stay I guess. I can indeed use wider indents in my own projects, but I will still have to read other people's code |
16:46:41 | Araq | dom96: I'd lowercase with prefixes, Uppercase with .pure enums |
16:46:47 | Araq | *I'd say |
16:46:56 | Araq | but I don't really care |
16:47:00 | dom96 | ok |
16:47:37 | Araq | dom96: well hack atomics.nim so that it doesn't produce this for nimbuild then |
16:47:50 | Araq | it used to work without it |
16:48:09 | Araq | and nothing requires it now except for the new spawn stuff which you don't use |
16:48:38 | dom96 | I can just enable deadCodeElim |
16:48:45 | Araq | true |
16:50:14 | dom96 | interesting. Google actually tries to parse our irc logs hah |
16:51:24 | EXetoC | hm, bin/nimrodrod? |
16:51:34 | EXetoC | typo |
16:51:37 | dom96 | yeah, need to fix that. |
16:53:02 | dom96 | Araq: Can you fix that? |
16:53:32 | dom96 | or tell me where to fix it? |
16:53:55 | EXetoC | grep :p |
16:54:36 | dom96 | I doubt it's that simple |
16:54:36 | EXetoC | build.sh |
16:54:41 | EXetoC | no? |
16:54:55 | dom96 | build.sh is generated |
16:55:00 | dom96 | we need to fix the generator |
16:55:32 | Araq | no I fixed build.sh manually ... |
16:55:58 | Araq | the problem is that build.sh builds a 'nim' exe |
16:56:03 | EXetoC | well that's the only match |
16:56:27 | Araq | which breaks bootstrapping for other people |
16:56:37 | Araq | and so I changed it manually back to "nimrod" |
16:57:20 | dom96 | so should it be nimrod or nim? |
16:57:37 | Araq | yes |
16:57:43 | dom96 | lol? |
16:57:58 | Araq | well it *needs* to be "nimrod" for the people out there |
16:58:16 | dom96 | for what people? |
16:58:17 | Araq | but niminst isn't designed for this, I think |
16:58:22 | dom96 | and why? |
16:58:39 | Araq | because older kochs only check for 'nimrod' |
16:58:58 | Araq | the new koch tries 'nimrod' if it can't find a 'nim' |
16:59:29 | dom96 | so? They should recompile koch. |
16:59:45 | dom96 | NimBuild does it I think. |
17:00:14 | NimBot | Araq/Nimrod bigbreak 29ec795 Dominik Picheta [+0 ±2 -0]: Fixes SSL case sensitive issues. |
17:02:18 | dom96 | It's in the build instructions. |
17:05:45 | NimBot | nimrod-code/csources master c26beee Dominik Picheta [+0 ±1 -0]: s/nimrodrod/nim/ |
17:07:53 | * | Sht0 joined #nimrod |
17:11:11 | dom96 | argh, acronyms are going to be so inconsistent case wise. |
17:19:15 | dom96 | or is the convention FTPClient not FtpClient? |
17:21:07 | * | io2 joined #nimrod |
17:23:11 | Araq | no, it's FtpClient |
17:23:52 | Araq | I think only 2 letter acronyms look weird: GcDisable |
17:24:44 | dom96 | That looks fine to me |
17:24:51 | dom96 | SslContext |
17:24:52 | dom96 | looks weird |
17:25:55 | dom96 | Perhaps it's the lowercase s that looks weird |
17:26:25 | dom96 | Because raiseOsError looks weird too. |
17:30:24 | * | io2 quit (Ping timeout: 260 seconds) |
17:31:32 | * | Sht0 quit (Ping timeout: 245 seconds) |
17:42:05 | * | Fr4n joined #nimrod |
17:47:20 | * | mko joined #nimrod |
17:49:01 | * | io2 joined #nimrod |
17:55:07 | Varriount-Mobile | So... we're renaming to "Nim"? |
18:07:04 | * | bogen quit (Quit: Leaving.) |
18:13:44 | Jehan_ | Varriount-Mobile: It looks like it. |
18:14:04 | Araq | Varriount-Mobile: yep. btw there is lots of work in #nimbuild for you |
18:14:15 | Araq | lots of failing tests you can repair |
18:15:51 | * | bogen joined #nimrod |
18:19:40 | Araq | Varriount-Mobile, dom96 we need to ensure to bundle important DLLs, Nimble and Aporia with Nim this time |
18:20:08 | dom96 | Araq: Is there a way to have a template which takes two bodies? |
18:20:23 | Araq | dom96: yes, with the 'do' notation |
18:20:32 | Araq | which is the reason for its existance btw |
18:21:15 | dom96 | cool |
18:22:18 | Araq | dom96: asyncdispatch still produces lots of deprecated warnings |
18:22:39 | dom96 | Araq: I'm working on ssl |
18:22:49 | dom96 | Won't nimrod pretty fix those? |
18:22:58 | Araq | sure thing |
18:23:10 | Araq | well I'm fixing show stopper bugs |
18:23:28 | Araq | is SSL really the most important thing that's left to do? |
18:24:00 | dom96 | Have you fixed my problems with pretty? |
18:24:09 | dom96 | I need SSL for the smtp module |
18:24:22 | dom96 | and it's useful for httpclient too |
18:24:48 | Araq | fixing pretty is not easy ... it's not a single bug |
18:25:00 | dom96 | then what else do you want me to do? |
18:25:00 | Araq | well ok |
18:25:13 | Araq | I can provide a workaround |
18:27:03 | Araq | https://github.com/Araq/Nimrod/issues/1067 |
18:27:08 | Araq | the example fails with |
18:27:17 | Araq | "wrong number of arguments" |
18:28:51 | Araq | never mind, found some other example that fails |
18:29:34 | dom96 | updated it |
18:44:35 | * | ARCADIVS quit (Quit: WeeChat 0.4.3) |
19:04:52 | * | BlaXpirit quit (Ping timeout: 240 seconds) |
19:05:07 | * | BlaXpirit-UA joined #nimrod |
19:05:52 | * | io2 quit (Ping timeout: 240 seconds) |
19:13:13 | * | BlaXpirit_UA joined #nimrod |
19:14:28 | * | BlaXpirit-UA quit (Ping timeout: 260 seconds) |
19:18:18 | NimBot | nimrod-code/packages master 0b46881 Erwan Ameil [+0 ±1 -0]: Added ZeroMQ wrapper |
19:18:18 | NimBot | nimrod-code/packages master fb09c51 Dominik Picheta [+0 ±1 -0]: Merge pull request #85 from idlewan/zmq... 2 more lines |
19:20:47 | * | saml_ joined #nimrod |
19:20:52 | * | BlaXpirit_UA quit (Ping timeout: 250 seconds) |
19:20:59 | * | BlaXpirit joined #nimrod |
19:27:22 | * | saml_ quit (Ping timeout: 245 seconds) |
19:41:17 | * | saml_ joined #nimrod |
19:47:19 | * | Matthias247 joined #nimrod |
19:53:15 | * | io2 joined #nimrod |
20:05:43 | * | bjz quit (Read error: Connection reset by peer) |
20:05:56 | * | bjz joined #nimrod |
20:11:48 | * | bjz quit (Read error: Connection reset by peer) |
20:12:07 | * | bjz joined #nimrod |
20:16:36 | NimBot | nimrod-code/packages master e383fa2 Erwan Ameil [+0 ±1 -0]: Added UUID wrapper |
20:16:36 | NimBot | nimrod-code/packages master 8cbea5f Dominik Picheta [+0 ±1 -0]: Merge pull request #86 from idlewan/uuid... 2 more lines |
20:19:50 | * | Demos joined #nimrod |
20:21:08 | * | Triplefox_ is now known as Triplefox |
20:25:44 | Araq | hmm so we already have 86 babel packages |
20:26:01 | Araq | lol this is going to be like python 3 vs python 2 |
20:27:38 | * | bjz_ joined #nimrod |
20:27:39 | * | bjz quit (Read error: Connection reset by peer) |
20:28:06 | dom96 | Yep. Suddenly thousands of Nimrod users will begin writing blog posts about why they are not switching to Nim 0.10 |
20:28:16 | dom96 | But are sticking to Nimrod 0.9.4 |
20:29:38 | wan | Every nimrod-*** babel package would have to be renamed |
20:30:45 | Demos | wait are we going to break source compatibility with the change of name? |
20:30:51 | EXetoC | it the nim- prefix not the established one? |
20:31:03 | Demos | I use nim- in my packages |
20:31:07 | EXetoC | though not even the official packages have those |
20:31:21 | EXetoC | they don't use nimrod- either though |
20:31:39 | wan | Also, in *.babel, should we change to [Deps] Requires: "nim >= 0.9.4" ? |
20:31:50 | Demos | but I was under the impression that the best way to name things was without any prefix at all, just as the name of whatever you are wrapping |
20:32:12 | EXetoC | why is it? |
20:32:15 | wan | But then it's more difficult to find it using github's search |
20:32:20 | EXetoC | it's a hassle when cloning repositories for example |
20:32:55 | dom96 | There is no established convention for package names. |
20:33:34 | wan | At first, I was leaning for mypackage.nim, but everyone was using nim-mypackage already |
20:33:38 | EXetoC | either the prefix needs to be added anyway in case of conflicts, or a sub-directory must be introduced |
20:33:50 | EXetoC | but maybe you're fine with the latter |
20:35:06 | EXetoC | but it's easy to forget this |
20:40:01 | Demos | as long as the name of the wrapped package is part of the name you give the babel package it is fine |
20:40:07 | Demos | so long as you can find it in babel search |
20:41:20 | EXetoC | so you don't care about the file system aspect? |
20:44:25 | Triplefox | i've gotten used to reversed-domain-name java style packages, at least for the file system |
20:44:51 | EXetoC | and do you add the prefix when forking if the user has the original lib in his list? |
21:01:24 | * | saml_ quit (Ping timeout: 250 seconds) |
21:04:34 | * | fowl joined #nimrod |
21:05:29 | Araq | hi fowl |
21:05:41 | fowl | hey |
21:13:40 | dom96 | filwit said he would have something to show today didn't he? |
21:17:15 | Varriount-Mobile | Araq: Does this page offer any performance advice Nimrod could use? https://github.com/facebook/folly/blob/master/folly/docs/FBVector.md |
21:18:09 | Araq | Varriount-Mobile: kind of, but not really |
21:18:24 | Araq | we used the factor of 1.5 since the beginning |
21:18:46 | Varriount-Mobile | What about relocatable objects? |
21:20:45 | * | fowl quit (Ping timeout: 240 seconds) |
21:25:31 | Araq | what about them? |
21:25:53 | Araq | the compiler knows how to move an object |
21:30:23 | * | fowl joined #nimrod |
21:30:23 | * | fowl quit (Changing host) |
21:30:23 | * | fowl joined #nimrod |
22:02:15 | Jehan_ | Hmm, --os:standalone does not appear to be working currently. Is this a known issue (or am I just making a stupid mistake)? |
22:08:30 | Araq | we have a test for it |
22:08:38 | Araq | let me check |
22:08:38 | Jehan_ | Ah, os:standalone does not include any memory management, it appears. |
22:09:00 | bogen | is it possible to create a regex at compile time? (one that will only be used by macros and {.compileTime.} procs? |
22:09:00 | Jehan_ | That's really barebones, though. |
22:09:15 | bogen | I keep getting: lib/impure/re.nim(75, 27) Error: VM is not allowed to 'cast' |
22:09:26 | bogen | no matter how I declare it |
22:09:46 | Araq | bogen: you cannot use the FFI at compile time |
22:09:49 | Jehan_ | bogen: I think you can use the `pegs` module for regex-like functionality. |
22:09:58 | Jehan_ | Since it's pure Nimrod code. I think. :) |
22:10:09 | Varriount-Mobile | bogen: I believe Araq scrapped the FFI interface for the VM |
22:10:14 | bogen | ok, I'll look at pegs |
22:10:50 | Araq | well, we can easily support re at compile time with the most recent enhancements |
22:10:57 | Varriount-Mobile | Since regex uses the PCRE library, it won't work at compile time |
22:11:07 | Jehan_ | http://nimrod-lang.org/pegs.html |
22:11:23 | Araq | but then the compiler is dependent on pcre and this is asking for trouble |
22:13:28 | bogen | ok, peg has a replace. I'll look at it. The parallel replace would likely come in handly. |
22:15:19 | Jehan_ | What are you trying to do, bogen? |
22:19:27 | bogen | I'm using xbyak (which is c++) and uses some macros to wrap calls to it for a code generator. I'm using replace to clean up what is passed to .emit which has been working quite well. (I'm able to now do all that I was doing in C++ in nim) |
22:20:53 | bogen | I was furthing refining what I was doing in C++, and was needing some regular expression like replace for that. It is not critical. It would just make by input to xbyak look cleaner. |
22:21:18 | bogen | it is already is much cleaner in nim than it was in C++ |
22:21:59 | bogen | s/uses some macros/using some macros/ |
22:23:32 | fowl | how do i set up nimrod with msvc |
22:23:38 | bogen | basically I have jit assembler now in nim, but that is just a side effect of what I'm working on |
22:23:55 | Araq | fowl: --cc:vcc |
22:32:15 | bogen | Jehan_: pegs won't run in the VM either for me: lib/pure/pegs.nim(1643, 16) Error: internal error: cannot generate VM code for p() |
22:32:29 | Jehan_ | bogen: Hmm. |
22:34:51 | fowl | it fails the "Test to see if nimrod and the C compiler agree on the size of a pointer." |
22:34:54 | * | Varriount-Mobile quit (Read error: Connection reset by peer) |
22:37:06 | Araq | bogen: well it's a strange bug ;-) |
22:37:20 | Araq | there is no p() here, it's a simple variable p |
22:37:57 | Jehan_ | fowl: Had the same problem with --cpu:i386 on OS X, because the compiler/linker flags didn't include -m32 or -arch i386. So I suspect it may be something similar. |
22:38:29 | Jehan_ | I.e. that you need an appropriate --passc/--passl option for vcc to get the 32/64-bit part right. |
22:38:49 | * | Matthias247 quit (Read error: Connection reset by peer) |
22:40:52 | bogen | well, I just did: nimrod i import pegs peg";.*\n" # maybe my peg string is bad |
22:41:11 | Jehan_ | bogen: I'm running into the same error with a simple test case, I don't think it's you. |
22:46:27 | Jehan_ | From where the error occurs, I suspect it's an issue with how the VM handles object inheritance. |
22:47:07 | bogen | I can live with it for now, I'd just prefer not to have /* comments */ in my asm code. I'd rather use ";" but being able to use pegs at compile time would make a lot of other stuff easier. |
22:47:23 | bogen | (easier and more correct) |
22:51:49 | Jehan_ | How about using staticExec? |
22:53:41 | Araq | hrm ... these hygienic macros really introduce as many problems as they solve ... |
22:53:44 | Jehan_ | In principle, you can feed anything to it, and you should be able to even use the result with parseExpr() or parseStmt() to generate Nimrod code. |
22:54:24 | Araq | latest example: use the 'in' operator in a generic |
22:54:29 | fowl | Jehan_ on your suggestion, i tried the shortcut "vs2013 x64 cross tools command prompt" and it works under that |
22:55:26 | Araq | "in" resolves to system.(contains|contains|contains) in the generic and then the contains for HashSet is not found at instantiation |
22:55:41 | * | Trustable1 quit (Quit: Leaving) |
22:55:47 | Araq | marking 'in' as 'dirty' fixes it ... |
22:56:23 | Jehan_ | fowl: I have no clue what that "shortcut" means. :) |
22:57:58 | fowl | shortcuts in "C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\Tools\Shortcuts" that start the cmd prompts for vs |
22:59:24 | bogen | Jehan_: where is staticExec documented? I don't find it in the manual. Does that execute some external program? If so, I don't want that. Although I guess it would work in the interim. (but it would likely be slow) |
23:00:00 | Jehan_ | http://nimrod-lang.org/system.html#staticExec,string,string |
23:00:06 | Jehan_ | And yes, it does exactly that. |
23:00:30 | Jehan_ | How slow it is would depend on how often you have to call it. |
23:01:01 | bogen | ok, I'll try that |
23:04:00 | dom96 | bogen: You could also do the parsing yourself using parseutils. |
23:04:55 | bogen | http://nimrod-lang.org/parseutils.html ok, I'll take a look |
23:05:29 | * | Johz quit (Read error: Connection reset by peer) |
23:05:37 | * | darkf joined #nimrod |
23:06:26 | Araq | Jehan_, bogen actually I planned some caching for staticExec |
23:07:17 | bogen | Araq: well, my input string would different on each call |
23:08:35 | Araq | bogen: yes IF you compile it only once |
23:13:25 | bogen | lib/pure/parseutils.nim(362, 6) Error: cannot evaluate at compile time: i |
23:14:30 | bogen | import parseutils ; for k, v in interpolatedFragments (" cow bad\n dog\n rat"): echo k, " ", v |
23:22:07 | Araq | well we have a test for that |
23:22:37 | * | BlaXpirit quit (Quit: Quit Konversation) |
23:27:48 | bogen | well, maybe what would be useful would be in importc variant that worked dynamically. if specified dynamic library was not already loaded it would open it and look up the symbol, otherwise just look up the symbol. That way some importc declarations could be done at compile time or in the interpreter |
23:30:05 | Jehan_ | bogen: Not sure what that would buy? |
23:31:18 | bogen | well, I could load some already compiled code and run it at compile time, code that I'm unable to currently run in the VM at compile time |
23:33:47 | Jehan_ | The problem here, as I understand it, isn't loading the code, but the FFI. |
23:34:38 | bogen | ok. proc atoi (s: cstring): cint {.importc, dynlib: "libc.so".} yeah, let b = atoi ("123") --> VM not allowed to do FFI |
23:40:25 | fowl | devs not interested in FFI support anymore :( |
23:42:53 | * | Jehan_ quit (Quit: Leaving) |
23:43:38 | NimBot | Araq/Nimrod bigbreak 0257f38 Araq [+0 ±2 -0]: fixes #1366 |
23:43:38 | NimBot | Araq/Nimrod bigbreak c9563d2 Araq [+0 ±1 -0]: fixes #1067 |
23:43:38 | NimBot | Araq/Nimrod bigbreak 09ab170 Araq [+0 ±6 -0]: fixes #1444 |
23:43:38 | NimBot | Araq/Nimrod bigbreak d3a7fa2 Araq [+0 ±3 -0]: Merge branch 'bigbreak' of https://github.com/Araq/Nimrod into bigbreak |
23:44:04 | bogen | fowl, if pegs and parseutils worked at compile time for me I would not complain :) |
23:45:14 | Araq | we had FFI support at compile-time. It causes more problems than it solves and cannot be put into a spec |
23:47:03 | bogen | and I assume that a nim dynamic libary needs an FFI to call it? (because the nim functions in the libary are c, c++, whatever?) |
23:47:46 | Araq | bogen: did you try parseutils in a .compileTime proc? top level stuff is usually more buggy |
23:48:15 | bogen | Araq: I will try it in a compileTime proc |
23:53:31 | bogen | Error: internal error: no destination set |
23:53:45 | bogen | I'll paste it |
23:54:00 | fowl | i need to generate a build64.bat for msvc |
23:54:12 | fowl | so tedious :( |