00:04:29 | * | dsrw quit (Quit: dsrw) |
00:11:01 | * | dsrw joined #nimrod |
00:12:25 | * | gdos quit (Ping timeout: 268 seconds) |
00:12:49 | * | dsrw left #nimrod (#nimrod) |
00:13:10 | * | dsrw joined #nimrod |
00:14:16 | * | gdos joined #nimrod |
00:18:53 | * | dsrw quit (Quit: dsrw) |
00:19:13 | * | dsrw joined #nimrod |
00:26:26 | * | dsrw quit (Remote host closed the connection) |
00:28:19 | * | silven quit (Ping timeout: 260 seconds) |
00:29:34 | * | fowl quit (Read error: Connection reset by peer) |
00:30:20 | * | fowl joined #nimrod |
00:40:22 | * | silven joined #nimrod |
00:43:39 | * | melba quit (Ping timeout: 252 seconds) |
00:52:38 | Demos | what sort of beast is nimrod's string type? is it a pascal string? a cstring? both? |
00:52:38 | * | fowl quit (Read error: Connection reset by peer) |
00:53:07 | * | fowl joined #nimrod |
00:55:24 | * | DAddYE quit (Remote host closed the connection) |
00:57:06 | Demos | I am kinda wondering if it is data compatible with BSTRs |
00:59:49 | fowl | Demos, theres a \0 at the end so its compatible with char* and a length field |
01:00:11 | Demos | is it length---data----\0 |
01:00:16 | fowl | idk |
01:01:13 | Demos | bstrs are length(4 byte),data,two nulls |
01:01:25 | Demos | not sure if length includes the second to last null |
01:01:28 | Demos | time to write a test |
01:02:03 | fowl | whats a bstr |
01:02:19 | Demos | string value used in COM |
01:02:40 | Demos | I am asking because .net can marshal strings as bstrs or LPCstrs (cstrings) |
01:03:19 | * | EXetoC quit (Quit: WeeChat 0.4.1) |
01:03:41 | Demos | also did you ever look at my ECS stuff on github... |
01:04:19 | fowl | ugh i have something misaligned in sdl2 |
01:04:25 | fowl | no i forgot :x |
01:05:58 | Demos | npnp, and story of my life, protip, trying to draw in LINES mode on a GTX570 while sending your index buffer as the vertex data and index data will crash the driver |
01:06:36 | fowl | interesting |
01:08:48 | Demos | I think some sizes were also wrong there, do not write graphics code while sleepy |
01:13:35 | * | dyu joined #nimrod |
01:14:31 | fowl | about to write a byterepr() |
01:14:47 | fowl | byterepr(somepointer, int8, int16, ..) |
01:17:16 | fowl | i cant do varargs[typedesc] |
01:17:19 | fowl | what kind of world is this |
01:22:11 | Varriount | fowl, what is byterepr? |
01:23:20 | Varriount | Demos, I believe it's a null terminated utf string |
01:23:39 | Varriount | With the length encoded somewhere |
01:23:49 | Varriount | That way it can be both! |
01:24:12 | Demos | well I am testing it with a bstr, so we shall see, .net does not like my new 64 bit nimrod compiler though |
01:24:50 | Demos | not sure about the second null terminator though |
01:25:33 | Demos | also, bstrs can have \0s embedded in them, although I doubt that the C# compiler is evil enough to do that |
01:27:34 | * | ltbarcly joined #nimrod |
01:27:34 | * | ltbarcly quit (Client Quit) |
01:29:45 | fowl | Varriount, im doing repr(cast[ptr array[64,byte]](somepointer)) to see what the datas are, but im going to break it up into fields (of an object/tuple type) so i can see better where the misalignment is |
01:30:53 | Varriount | Nimrod has a C# compiler? |
01:31:24 | Demos | no, I am calling the Nimrod compiler from C# |
01:31:36 | Varriount | Why? |
01:31:37 | Demos | via the library that is the compiler |
01:31:56 | Demos | because then I can use the compiler to provide lexing and parsing to visual studio |
01:32:03 | Varriount | Ah. |
01:32:15 | * | Varriount claps for Demos |
01:33:08 | Demos | and that, would be amazing. But I am only like 10% of the way toward getting the lexer working from C#... anyway tooling needs to get done |
01:33:30 | Varriount | I have to find the 64 bit integer in the haystack. |
01:34:00 | fowl | here's the outcome: https://gist.github.com/fowlmouth/8887d6a711e95a542e58 |
01:34:43 | Varriount | Fowl, what does that do exactly? |
01:35:03 | Varriount | Get the length of bytes in each field of a type? |
01:36:24 | fowl | show each byte |
01:37:05 | fowl | but yea it iterates over each field |
01:37:56 | Varriount | That might be useful to me.. Since I'm trying to find objects with mis-sized types. |
01:38:23 | Demos | can you compile with -Wpadding (or maybe -Wpadding) |
01:38:26 | fowl | well im looking at sdl's headers and the types are the same but something is wrong |
01:38:35 | Demos | on msvc /Wall does it as well |
01:39:12 | fowl | gcc: error: unrecognized command line option -Wpadding |
01:40:01 | fowl | -Wpadded ? |
01:40:29 | Varriount | gcc: error: cosmic libraries not found. please recompile universe. |
01:43:27 | * | brson quit (Ping timeout: 260 seconds) |
01:46:54 | fowl | omg |
01:46:57 | fowl | im missing a field |
01:47:01 | fowl | damn you sdl2 |
01:47:48 | fowl | no more writing wrappers for non-stable thigns |
01:47:59 | Varriount | :p |
01:48:56 | Demos | it would be great it we could just call anything from anything, but that will have to wait untill the One True Programming Language comes out |
01:49:18 | Varriount | Demos, at least nimrod isn't c++ |
01:49:49 | Varriount | Interfacing C++ with anything is... challenging |
01:50:09 | Demos | you do it the same way you interface anything else with anything: by exporting C functions |
01:50:13 | * | dyu quit (Disconnected by services) |
01:50:30 | Demos | but yeah, trying to call C++ functions directly is not smart |
01:50:38 | * | dyu_ joined #nimrod |
01:50:48 | Varriount | The problem is when the creator of whatever you're acting on doesn't export *anything* |
01:51:10 | Demos | you write some c++ in an extern "C" block |
01:51:30 | Demos | same could be said when the creator of the Nimrod compiler does not export anything to c# |
01:54:25 | Varriount | fowl, I don't suppose you could whip me up a template which recursively goes through a data structure and lists the sizeof() fields? |
01:54:45 | fowl | Varriount, look at typeinfo |
01:55:15 | fowl | Varriount, i'll do it for $20 only because what i just gave you already does that.. |
01:56:23 | * | DAddYE joined #nimrod |
02:03:01 | * | DAddYE quit (Ping timeout: 272 seconds) |
02:05:24 | * | dsrw joined #nimrod |
02:08:33 | * | dsrw quit (Remote host closed the connection) |
02:37:26 | * | dsrw joined #nimrod |
02:50:44 | * | fowl quit (Read error: Connection reset by peer) |
02:56:13 | * | dsrw quit (Remote host closed the connection) |
02:58:18 | * | dsrw joined #nimrod |
03:03:42 | * | fowl joined #nimrod |
03:13:16 | * | dsrw quit (Remote host closed the connection) |
03:15:13 | * | BitPuffin quit (Ping timeout: 272 seconds) |
03:23:41 | * | wlhlm joined #nimrod |
03:59:42 | * | DAddYE joined #nimrod |
04:02:31 | * | OrionPK quit (Quit: Leaving) |
04:06:47 | * | DAddYE quit (Ping timeout: 272 seconds) |
04:12:30 | * | fowl quit (Quit: Leaving) |
04:37:55 | * | wlhlm quit (Ping timeout: 260 seconds) |
04:46:48 | * | shodan45 quit (Ping timeout: 245 seconds) |
04:52:03 | * | Demos quit (Read error: Connection reset by peer) |
05:51:19 | * | ltbarcly joined #nimrod |
05:56:27 | * | ltbarcly quit (Ping timeout: 272 seconds) |
06:03:14 | * | DAddYE joined #nimrod |
06:09:26 | * | DAddYE quit (Ping timeout: 240 seconds) |
06:24:32 | * | Endy joined #nimrod |
07:06:10 | * | DAddYE joined #nimrod |
07:10:25 | * | DAddYE quit (Ping timeout: 245 seconds) |
07:33:27 | * | Araq_ joined #nimrod |
07:55:19 | * | Associat0r quit (Quit: Associat0r) |
08:06:42 | * | DAddYE joined #nimrod |
08:10:45 | Araq_ | Varriount: "Don't use BSTR in new designs. COM can marshal a null terminated string, BSTR is not required for marshaling. BSTRs are bad because: ..." |
08:10:54 | Araq_ | from http://msdn.microsoft.com/en-us/library/windows/desktop/ms221069%28v=vs.85%29.aspx |
08:13:31 | * | DAddYE quit (Ping timeout: 272 seconds) |
08:15:00 | Araq_ | er ... I mean Demos |
08:15:00 | * | q66 joined #nimrod |
08:15:10 | * | Araq_ quit (Quit: ChatZilla 0.9.90.1 [Firefox 24.0/20130910160258]) |
08:21:01 | * | XAMPP-8 joined #nimrod |
08:23:58 | * | melba joined #nimrod |
08:44:23 | * | XAMPP-8 quit (Ping timeout: 260 seconds) |
08:47:32 | * | [1]Endy joined #nimrod |
08:51:09 | * | Endy quit (Ping timeout: 272 seconds) |
08:51:10 | * | [1]Endy is now known as Endy |
09:09:41 | * | DAddYE joined #nimrod |
09:10:00 | * | dyu_ quit (Quit: Leaving) |
09:13:50 | * | DAddYE quit (Ping timeout: 240 seconds) |
09:31:21 | * | Boscop_ joined #nimrod |
09:38:35 | * | Boscop quit (Ping timeout: 272 seconds) |
10:10:10 | * | DAddYE joined #nimrod |
10:15:04 | * | ltbarcly joined #nimrod |
10:16:14 | * | DAddYE quit (Ping timeout: 240 seconds) |
10:20:27 | * | ltbarcly quit (Ping timeout: 272 seconds) |
10:47:53 | Varriount | Araq, I would like to thank you for designing a language that actually makes rapid prototyping possible. :) |
10:57:45 | * | dyu joined #nimrod |
11:13:10 | * | DAddYE joined #nimrod |
11:17:26 | * | DAddYE quit (Ping timeout: 240 seconds) |
11:22:15 | * | q66 quit (Quit: Leaving) |
11:30:16 | * | BitPuffin joined #nimrod |
11:40:41 | * | XAMPP-8 joined #nimrod |
11:45:25 | * | XAMPP-8 quit (Ping timeout: 272 seconds) |
12:13:41 | * | DAddYE joined #nimrod |
12:20:00 | * | DAddYE quit (Ping timeout: 245 seconds) |
12:28:29 | * | dyu quit (Ping timeout: 272 seconds) |
12:32:22 | * | gdos quit (Ping timeout: 246 seconds) |
12:40:44 | * | dyu joined #nimrod |
12:48:36 | * | Ricky_Ricardo joined #nimrod |
13:16:40 | * | DAddYE joined #nimrod |
13:18:09 | * | wlhlm joined #nimrod |
13:21:02 | * | DAddYE quit (Ping timeout: 240 seconds) |
13:47:35 | * | dsrw joined #nimrod |
14:04:20 | * | gdos joined #nimrod |
14:07:05 | * | Endy quit (Ping timeout: 265 seconds) |
14:07:45 | * | XAMPP-8 joined #nimrod |
14:10:05 | * | q66 joined #nimrod |
14:17:20 | * | DAddYE joined #nimrod |
14:23:15 | * | XAMPP-8 quit (Ping timeout: 240 seconds) |
14:23:35 | * | DAddYE quit (Ping timeout: 240 seconds) |
14:24:05 | * | q66 quit (Quit: Leaving) |
14:38:20 | * | ltbarcly joined #nimrod |
14:38:20 | * | dsrw quit (Remote host closed the connection) |
14:38:20 | * | ltbarcly quit (Client Quit) |
14:49:20 | * | Endy joined #nimrod |
14:49:35 | * | melba quit (Ping timeout: 240 seconds) |
15:01:25 | * | rtdos joined #nimrod |
15:01:25 | * | gdos quit (Ping timeout: 240 seconds) |
15:12:15 | dom96 | hello |
15:18:05 | * | Associat0r joined #nimrod |
15:18:05 | * | Associat0r quit (Changing host) |
15:18:05 | * | Associat0r joined #nimrod |
15:18:40 | * | rtdos quit (Read error: Connection reset by peer) |
15:20:15 | * | DAddYE joined #nimrod |
15:23:00 | * | BitPuffin quit (Read error: Operation timed out) |
15:23:20 | dom96 | Araq: Did you remove {.discardable.} from the open proc? |
15:24:20 | * | DAddYE quit (Ping timeout: 240 seconds) |
15:24:55 | * | gdos joined #nimrod |
15:39:19 | * | ltbarcly joined #nimrod |
15:59:24 | * | XAMPP-8 joined #nimrod |
16:14:08 | * | shodan45 joined #nimrod |
16:23:44 | * | XAMPP-8 quit (Ping timeout: 240 seconds) |
16:26:02 | * | gdos quit (Ping timeout: 264 seconds) |
16:39:36 | * | DAddYE joined #nimrod |
16:53:24 | * | brson joined #nimrod |
16:59:23 | * | zanoni quit (Remote host closed the connection) |
17:03:19 | * | gdos joined #nimrod |
17:14:38 | * | gdos quit (Read error: Connection reset by peer) |
17:24:48 | * | zanoni joined #nimrod |
17:50:03 | * | zanoni quit (Remote host closed the connection) |
17:50:44 | * | q66 joined #nimrod |
17:53:35 | * | zanoni joined #nimrod |
17:56:49 | Araq | dom96: I don't think so. but perhaps. how can "open" ever be discardable? |
17:57:20 | dom96 | dunno |
17:57:34 | dom96 | but in irclog.nim I used 'open' without discarding its result |
17:57:41 | dom96 | only now the compiler complains |
17:57:51 | dom96 | maybe it was an issue that was recently fixed in the compiler? |
17:58:39 | * | q66 quit (Quit: Leaving) |
17:58:48 | Araq | yep, quite possible |
17:59:59 | Araq | ladies and gentlemen, Varriount fixed the last (*cough*) socket bug for win64 ;-) congratulation! |
18:00:25 | Varriount | :D |
18:00:41 | dom96 | yay |
18:02:57 | reactormonk | dom96, so babel build doesn't do anything in my JS repo |
18:03:30 | reactormonk | ... or am I getting the thingy wrong. No package upload to somewhere? |
18:04:36 | dom96 | reactormonk: what's the output? |
18:05:31 | reactormonk | nothing. |
18:08:51 | Varriount | dom96, Why is it that the builder has to checkout the csources repo each time it runs? |
18:19:18 | * | q66 joined #nimrod |
18:19:41 | * | dyu quit (Quit: Leaving) |
18:22:39 | * | gdos joined #nimrod |
18:24:10 | dom96 | Varriount: hrm, i'm not sure. I rushed that code a bit. |
18:24:41 | Varriount | dom96, I'll be blunt - that's self evident |
18:33:24 | * | q66 quit (Quit: Leaving) |
18:44:34 | Varriount | dom96, you there? |
18:47:35 | dom96 | yes |
18:47:58 | Varriount | DO you have access to the repository that builder.nim downloads for csources? |
18:48:40 | dom96 | yes |
18:49:44 | Varriount | Could you please add, to the build64.bat file, the flag "-Isrc" to the link_flags and Comp_flags variables? |
18:50:36 | Varriount | I can't add it myself, because builder deletes and pulls in csources each time it is run. |
18:50:52 | * | io2 joined #nimrod |
19:00:07 | Araq | Varriount: I'm on it, I named it "nimcache" though |
19:00:07 | * | gdos quit (Remote host closed the connection) |
19:00:33 | Varriount | Named what nimcache? The batch file? |
19:00:42 | Araq | the 'src' dir |
19:01:36 | Araq | and yeah I think TSocketHandle should be distinct |
19:02:59 | Araq | it's a breaking change but oh well people are so generous when it comes to that |
19:04:17 | Varriount | Well, it does state at the top that the api is unstable. |
19:04:32 | Araq | does sockets.nim state that? |
19:05:15 | Varriount | I think so. |
19:05:40 | Araq | well I don't think it matters, people don't read, but very well... |
19:07:17 | Varriount | Araq, it was either that, or a bunch of when defined(windows) |
19:07:33 | * | gdos joined #nimrod |
19:07:47 | Araq | your solution is very nice, don't worry |
19:08:58 | Varriount | Oh how I wish windows was POSIX compliant |
19:10:24 | Araq | really? I dunno |
19:10:33 | Araq | posix sucks in its own ways |
19:10:35 | * | XAMPP-8 joined #nimrod |
19:10:53 | Varriount | I just want an api that works across OS's |
19:11:14 | Araq | I just want 1 OS to rule them all |
19:11:21 | Araq | written in nimrod of course ;-) |
19:14:23 | Varriount | Ok, got the builder to work. |
19:14:35 | Varriount | I deleted the section that did the bootstrapping from csources |
19:16:47 | * | gdos quit (Remote host closed the connection) |
19:17:27 | * | Araq doesn't get the point of "2 broke girls" ... |
19:17:36 | * | Varriount rarely watches TV |
19:18:21 | Varriount | Araq, how do you feel about the idea of a module which implements a low-level, cross platform api? |
19:18:42 | Araq | for sockets? that's planned already |
19:18:59 | Varriount | For more than just sockets - A module which would use winlean or posix, and abstract away the differences. |
19:19:12 | Araq | look at os.nim |
19:19:33 | Varriount | What's the plan for sockets? |
19:19:41 | Araq | I can't see how an abstraction that uses 'cstring' instead of 'string' helps |
19:19:53 | Araq | memory management often differs between posix and win |
19:20:18 | Araq | also win uses utf-16 for filenames |
19:20:40 | Araq | so it would be: string from cstring from utf-16 |
19:20:47 | Araq | in other words: slower |
19:21:28 | Araq | but I guess you would introduce some abstract Filename string type instead? |
19:21:49 | Varriount | Or object |
19:21:56 | Araq | bah |
19:22:13 | Varriount | humbug! |
19:23:09 | Araq | if I need more speed than os (and I never do), I need to it in a platform dependent manner anyway |
19:23:25 | Araq | or I program knowingly how the abstraction gets translated to posix |
19:23:32 | Araq | which also kind of defeats the purpose |
19:23:56 | Varriount | Anyway, you mentioned a plan involving sockets? |
19:24:13 | Araq | yeah we like a low level sockets module |
19:24:30 | Araq | and then on top of it that higher level stuff including asyncio |
19:32:09 | * | OrionPK joined #nimrod |
19:37:52 | Varriount | By the way Araq, I was looking through the library documentation the other day, and saw staticRead. |
19:38:10 | Varriount | That's a pretty slick way to include binary resources. |
19:39:09 | Araq | I even mentioned it in my talk :P |
19:39:18 | Varriount | Talk? |
19:39:29 | * | gdos joined #nimrod |
19:40:25 | Araq | http://forum.nimrod-code.org/t/256 |
19:47:43 | Varriount | Araq, you should have mentioned one of nimrod's most important features! |
19:47:53 | Varriount | It doesn't require header files! |
19:50:33 | Araq | nah, no new language requires header files |
19:50:56 | Araq | not worth mentioning |
20:00:31 | * | krusipo joined #nimrod |
20:02:11 | Araq | hi krusipo welcome |
20:02:47 | krusipo | Araq: Hi and Thank You. |
20:07:13 | Varriount | Araq, you have 7 pull requests. |
20:11:01 | NimBot | Araq/Nimrod master 183886e Clay Sweetser [+0 ±4 -0]: Added a TSocketHandle type to winlean.nim and posix.nim... 2 more lines |
20:11:01 | NimBot | Araq/Nimrod master c48a38a Andreas Rumpf [+0 ±4 -0]: Merge pull request #624 from Varriount/win64/fix-sockets... 2 more lines |
20:13:40 | NimBot | Araq/Nimrod master 5ecffec Reimer Behrends [+0 ±1 -0]: Exposed process file handles in osproc module.... 5 more lines |
20:13:40 | NimBot | Araq/Nimrod master 1c23022 Andreas Rumpf [+0 ±1 -0]: Merge pull request #622 from rbehrends/master... 2 more lines |
20:16:30 | * | fowl joined #nimrod |
20:16:43 | NimBot | Araq/Nimrod master ca952af Billingsly Wetherfordshire [+0 ±1 -0]: Update xlib.nim... 2 more lines |
20:16:43 | NimBot | Araq/Nimrod master 8a7d4f7 Billingsly Wetherfordshire [+0 ±1 -0]: Update xutil.nim |
20:16:43 | NimBot | Araq/Nimrod master 271b38c Billingsly Wetherfordshire [+0 ±1 -0]: Update glx.nim... 2 more lines |
20:16:43 | NimBot | Araq/Nimrod master d7e4b3e Billingsly Wetherfordshire [+0 ±1 -0]: Update xutil.nim... 2 more lines |
20:16:43 | NimBot | 2 more commits. |
20:17:11 | NimBot | Araq/Nimrod master d3243df Markus Pfeiffer [+0 ±1 -0]: Add DragonFly as essentially a clone of FreeBSD |
20:17:11 | NimBot | Araq/Nimrod master 803254a Andreas Rumpf [+0 ±1 -0]: Merge pull request #617 from markuspf/master... 2 more lines |
20:18:14 | fowl | haha my github name is so cool |
20:19:40 | shevy | :P |
20:29:52 | Araq | fowl: why? is that not your real name? |
20:30:12 | fowl | no lol |
20:32:25 | Araq | do you fear github is like facebook? |
20:33:12 | * | Endy quit (Ping timeout: 240 seconds) |
20:33:31 | fowl | no, i just try to keep my real name private |
20:33:44 | fowl | i dont use my real name on facebook either, and my only picture is a closeup of my eyes |
20:34:05 | OrionPK | are you ashamed of ur real name? |
20:34:20 | * | Araq is famous now :P |
20:34:32 | OrionPK | my ass has over 10,000 views on youtube |
20:35:35 | Araq | OrionPK: that's slightly frightening |
20:35:57 | OrionPK | it's from a robotics competition > 7 years ago |
20:36:04 | OrionPK | and i was fully clothed |
20:36:23 | OrionPK | 23,000 views now |
20:36:44 | Araq | oh I misread, I read 100_000 |
20:38:19 | * | wlhlm quit (Ping timeout: 260 seconds) |
20:39:07 | * | fowl quit (Read error: Connection reset by peer) |
20:40:17 | * | fowl joined #nimrod |
20:42:19 | * | BitPuffin joined #nimrod |
20:45:04 | fowl | put me in nimrod-code and ill move the stdlib stuff to babel packages |
20:45:30 | Araq | dom96: please do it |
20:48:16 | dom96 | done |
20:48:20 | dom96 | I think. |
20:53:45 | fowl | You are a member of this Organization! |
20:56:32 | Araq | congratulations |
21:01:11 | * | Araq wishes he never had started with an AST based interpreter |
21:01:50 | Araq | this "first make it work, then make it fast" never works ... you have to start with an efficient design ... |
21:02:39 | fowl | did you write a whole new vm or using luajit |
21:02:48 | Araq | whole new VM |
21:04:25 | Araq | I was tired of codegens that consist of shitty string concats ... |
21:04:40 | * | Associ8or joined #nimrod |
21:04:41 | * | Associ8or quit (Changing host) |
21:04:41 | * | Associ8or joined #nimrod |
21:06:30 | * | Associat0r quit (Ping timeout: 265 seconds) |
21:07:03 | Araq | plus making luajit support our ASTs didn't look like fun at all |
21:09:02 | * | q66 joined #nimrod |
21:10:34 | fowl | is there a format you want these packages in, like src/ and examples/ directories |
21:11:23 | Araq | src/ and examples/ sounds good |
21:12:00 | fowl | ok |
21:13:46 | * | q66 quit (Excess Flood) |
21:14:08 | * | q66 joined #nimrod |
21:15:53 | * | XAMPP-8 quit (Ping timeout: 240 seconds) |
21:23:53 | Araq | Error: macro returned a cyclic abstract syntax tree -.- |
21:24:38 | fowl | whats the license on these |
21:25:17 | Araq | depends really but I think most can be under MIT |
21:26:11 | Araq | even the stuff coming from pascal has been edited enough over the years so its origin is no longer relevant; I think |
21:29:02 | fowl | ok |
21:30:47 | fowl | dom96, can you create repos for x11, opengl, gtk and cairo |
21:31:14 | dom96 | sure |
21:31:56 | * | Boscop_ is now known as Boscop |
21:32:10 | dom96 | i'll name the gtk repo gtk2 |
21:32:29 | dom96 | done |
21:33:48 | fowl | i have to be given access to each of them |
21:34:11 | * | Varriount is now known as Inner_Thoughts |
21:34:26 | Inner_Thoughts | Mine, mine, ALL MINE! |
21:34:33 | * | Inner_Thoughts is now known as Varriount |
21:34:51 | Araq | Varriount: creepy |
21:34:57 | dom96 | fowl: ugh really |
21:35:21 | Araq | just give him write access, dom96 |
21:36:21 | dom96 | meh, fine i'll just add him to the owners group |
21:37:51 | * | q66 quit (Read error: No route to host) |
21:37:56 | * | q66_ joined #nimrod |
21:37:58 | fowl | i wont let you down :p |
21:38:04 | fowl | well, i might, but it wont be on purpose |
21:54:29 | * | q66_ is now known as q66 |
21:58:35 | * | io2 quit () |
22:10:05 | Araq | quick |
22:10:21 | Araq | run: nimrod c -r lib/pure/xmltree.nim |
22:10:51 | fowl | no output |
22:11:02 | Araq | but it compiles, right? |
22:11:43 | fowl | yes |
22:12:01 | Araq | well I've got news for you then: it doesn't under the new VM :P |
22:12:09 | Araq | but I know what the problem is |
22:17:00 | * | fowl quit (Read error: Connection reset by peer) |
22:29:37 | * | Demos joined #nimrod |
22:31:25 | dom96 | Araq: How does the add(string, string) magic work? |
22:35:07 | * | shevy quit (Ping timeout: 272 seconds) |
22:37:47 | Araq | it's magic |
22:39:05 | Araq | http://star.psy.ohio-state.edu/coglab/Pictures/miracle.gif |
22:40:23 | Varriount | Has anyone given any thought into using an already established continuous integration and testing system, like, say, build bot? |
22:40:25 | Araq | system/sysstr.nim:163 implements a part of it |
22:40:56 | Araq | Varriount: we don't use software written in inferior languages here |
22:41:14 | Varriount | Then why do you use gcc to compile nimrod? |
22:41:22 | Varriount | :p |
22:41:31 | Araq | mat2 has a native backend :P |
22:41:42 | Demos | what is mat2? |
22:41:51 | Araq | he's a guy |
22:42:01 | dom96 | ugh, how do I make Nimrod show me the gcc line it's using to compile the C code? |
22:42:33 | dom96 | !seen Mat2 |
22:42:33 | NimBot | Mat2 was last seen on Sun Oct 6 21:24:17 2013 quitting with message: Quit: Verlassend |
22:42:55 | dom96 | He has been absent for quite some time now. |
22:43:29 | Araq | hmm true |
22:44:36 | Varriount | Araq, if you don't want to use inferior languages, why are you using nginx for the website? |
22:45:20 | Araq | Varriount: yeah yeah yeah |
22:45:30 | Varriount | ./troll |
22:45:38 | Araq | it's all temporary until NimOS arrives |
22:46:04 | Araq | though people say a dialect of C++ has been used to design the hardware ... |
22:46:18 | Araq | so ... we need to design our own hardware too |
22:46:51 | * | fowl_ joined #nimrod |
22:47:13 | * | shevy joined #nimrod |
22:47:15 | Varriount | I still think that build-bot might be better than the *buggy* builder.nim |
22:47:21 | dom96 | Araq: how do I make Nimrod show me the gcc line it's using to compile the C code? |
22:47:58 | fowl_ | --parallelbuild:1 |
22:49:28 | Araq | dom96: not sure what you mean but it's --embedsrc I think |
22:50:17 | dom96 | Araq: I want to know what it executes to compile the .c files. |
22:50:35 | dom96 | It's only showing me how it links it for some reason |
22:50:47 | Araq | it's listed in the /* top level comment */ |
22:50:57 | Araq | of the generated C file |
22:51:15 | Varriount | So, Araq, any other known bugs with windows/win64 that need to be fixed? |
22:51:19 | dom96 | ahh, alright. |
22:51:27 | dom96 | thanks |
22:51:32 | Araq | Varriount: and once we have migrated everything to stable software, how do we find bugs in our runtime? |
22:52:00 | Varriount | Tests? |
22:52:04 | Araq | lol |
22:52:12 | Araq | Tests never cut it |
22:52:38 | Araq | stuff in production, even if buggy, is a much better test |
22:53:06 | Varriount | Is this a hint that I should focus on refactoring builder.nim? |
22:54:01 | Araq | every feature I implement has tests and yet before somebody wrote a sizable library using that feature it's buggy as hell |
22:54:38 | Araq | and sometimes even afterwards (*cough* lambda lifting) |
22:55:20 | Araq | Varriount: builder.nim needs a "diff" feature asap |
22:55:43 | dom96 | Yes, small tests are never enough to test everything properly. You really can't think of a test for every single scenario. |
22:55:47 | * | Varriount is, coincidentally, working on diff-match-patch |
22:55:58 | Araq | because we have >600 tests, I fix something, something else breaks |
22:56:08 | Araq | and I don't want to go through the list again |
22:56:15 | Araq | and see what exactly I broke |
22:56:44 | Araq | and I think we should store the test results in a database, so that I can simply query it |
22:58:21 | * | ltbarcly quit (Quit: Computer has gone to sleep.) |
23:00:04 | * | Varriount quit (Read error: Connection reset by peer) |
23:00:31 | * | Varriount joined #nimrod |
23:01:10 | Varriount | That was.. odd |
23:01:19 | Varriount | Was I the only one disconnected? |
23:01:39 | fowl_ | was that your first time |
23:02:00 | fowl_ | were you disconnection virgin lol |
23:02:06 | Varriount | Disconnected (No such device or address) |
23:03:45 | fowl_ | Araq, want separate packages for lua, python and tcl or combine them? |
23:04:14 | dom96 | separate |
23:06:47 | fowl_ | mkdir {lua,python,tcl}/{examples,src} |
23:06:51 | fowl_ | so cool that works |
23:14:02 | Araq | Varriount: [22:45] NimBot linux-x86_64: Test results: 611/643 |
23:14:02 | Araq | [22:46] NimBot windows-x86_64: Test results: 603/643 |
23:14:17 | * | BitPuffin quit (Ping timeout: 240 seconds) |
23:14:27 | Araq | so .. check what works on linux that doesn't work on win64 and fix these bugs ;-) |
23:15:17 | * | q66 quit (Ping timeout: 272 seconds) |
23:15:37 | * | kryton9 joined #nimrod |
23:15:51 | Araq | hi kryton9 welcome |
23:16:04 | kryton9 | Hi Araq |
23:16:13 | kryton9 | I am loving Nimrod so far |
23:16:34 | kryton9 | our group is trying to write a translator for BASIC users to come over to Nimrod |
23:16:41 | Varriount | It's like C++, but without the masochism! |
23:16:51 | kryton9 | exactly |
23:17:15 | kryton9 | right now we are doing tests converting ScriptBasic to Nimrod. |
23:17:48 | kryton9 | In SciptBasic you can undefine an existing variable, is there a similar command in Nimrod? |
23:18:22 | kryton9 | killing the variable from memory |
23:18:30 | dom96 | ahh yes, I was wondering what you guys were up to after reading the forum. |
23:18:30 | Varriount | Set it to nil? Put it in a block? |
23:19:09 | fowl_ | kryton9, no, nimrod is not perl, python, lua or any other dynamic language, its compiled |
23:19:47 | kryton9 | I know, we are just using scriptbasic as it can output to c and compile also. |
23:20:13 | Varriount | kryton9, I think the closest thing is setting a variable to nil. |
23:20:21 | fowl_ | im curious to see what "deleting a variable" looks like in c |
23:20:28 | Araq | kryton9: you can do this: |
23:20:29 | Varriount | Just wondering, why would you undefine a variable? |
23:20:34 | Araq | let x = "abc" |
23:20:39 | Araq | if true: |
23:20:46 | Araq | # new scope here |
23:20:53 | Araq | let x = 23 |
23:21:13 | Araq | this doesn't delete the outer 'x' but hides it |
23:21:27 | kryton9 | thanks, but here is what i was meaning |
23:21:35 | kryton9 | var s = "abc" |
23:21:45 | kryton9 | kill s |
23:21:55 | kryton9 | var s = 42 |
23:22:22 | kryton9 | s = nil |
23:22:31 | kryton9 | then can I reassign to a different type/ |
23:22:36 | Araq | that can't work in Nimrod |
23:24:28 | kryton9 | a lot of BASICs had this ability with different keywords, but the same result |
23:24:55 | Araq | we could support it with some hack to ease the transition process |
23:25:00 | Varriount | kryton9, Why use this feature? |
23:25:33 | kryton9 | check out our c9.io site to see and get a better idea and also this forum thread: |
23:25:42 | kryton9 | https://c9.io/scriptbasic/nimrod |
23:26:29 | kryton9 | http://www.allbasic.info/forum/index.php?topic=246.0 |
23:27:37 | kryton9 | under projects the file I am working on is bc3v2.nim |
23:28:41 | kryton9 | https://c9.io/scriptbasic/nimrod nimrod/project/Kent/bc3v2.nim |
23:28:59 | Araq | I'm not familiar with scriptbasic or other basics but it can be really easy to do a bas2nim |
23:29:24 | kryton9 | Let me see if I can get our group leader in here... |
23:31:54 | Araq | kryton9: do you want to translate or to compile? |
23:31:58 | Araq | big difference ... |
23:32:29 | Araq | translate: one-time process and then your programs are in nimrod; manual tweaking ok |
23:32:53 | Araq | compile: compile to nimrod, needs to be 100% automatic but the code doesn't need to be readable |
23:33:29 | dom96 | Araq: Any ideas why the compiler generates an appendString sometimes but an add_XXXX some other times for the AppendStrStr magic? |
23:33:51 | kryton9 | I messaged John, the leader... he can explain better and answer your questions better than me. |
23:34:41 | Araq | 'add_XXXX' is only done for seqs, I think, dom96 |
23:35:10 | dom96 | Araq: Well I have this in my system.c: N_NIMCALL(void, add_6241)(NimStringDesc** x, NCSTRING y) |
23:35:41 | Araq | well that appends a cstring to a string |
23:36:09 | Araq | AppendStrStr doesn't deal with this |
23:36:49 | dom96 | ahh, I see it. |
23:38:17 | dom96 | well i'm away to sleep |
23:38:18 | dom96 | bye |
23:40:43 | kryton9 | while we wait for John, if he gets my message.... Araq, was the conference you presented at video recorded and will it be on the web? |
23:40:56 | Araq | yes and yes |
23:41:07 | kryton9 | great, can't wait to watch it |
23:41:09 | Araq | though I have no idea why, will contact the guy in charge |
23:41:16 | Araq | *when |
23:41:28 | Araq | I have no idea *when* it will be put online |
23:41:49 | * | BitPuffin joined #nimrod |
23:41:52 | kryton9 | will you post on the forums or on the news section when it does? |
23:42:17 | Araq | of course, everybody wants to see it |
23:42:26 | kryton9 | Cool. |
23:42:41 | Araq | I only had 25 minutes though |
23:42:49 | Araq | and wasn't allowed any questions |
23:43:02 | Araq | they screwed up their time table a bit |
23:43:04 | kryton9 | that's all, tough to present a new language in such a short time |
23:43:40 | Araq | I focussed on the meta programming, I didn't show anything else really |
23:44:30 | kryton9 | Google sponsors google talks and they invite language developers and give plenty of time and put it online. You should contact them |
23:45:01 | Araq | good idea |
23:45:03 | kryton9 | Nimrod is awesome and the more people hear and see it the quicker it will get the recognition it deserves |
23:45:16 | Demos | yeah! Nimrod is way cooler than Rust and people need to hear about it |
23:49:58 | kryton9 | I will try setting to nil and see what happens. brb |
23:50:39 | * | JRS_ joined #nimrod |
23:51:04 | JRS_ | Hi All - John from the ScriptBasic team. |
23:51:13 | Araq | hi JRS_ welcome |
23:51:22 | JRS_ | How can I help? |
23:51:31 | Araq | most important question first: do you want to translate to nimrod or to compile? |
23:51:36 | kryton9 | Araq this is John our group leader |
23:53:05 | kryton9 | nil didn't work, but I also enjoy nimrod's error message, very nice and easy to figure out stuff. |
23:53:08 | JRS_ | We are trying to create a BASIC to Nimrod text to text converter. It would be nice to allow multiple dialects of BASIC, C and ASM combined for translation. |
23:54:40 | Araq | you could also a basic parser to nimrod; the compiler has a pluggable parser architecture |
23:54:46 | Araq | *could add |
23:55:10 | JRS_ | The main goal is to be able to take the huge amount of BASIC code available and run it cross platform with the help of Nimrod's majic. |
23:55:29 | Araq | biggest problem I see is "goto" though; Basics make heavy use of "goto", nimrod doesn't support it |
23:55:49 | Araq | and it's hard to add for technical reasons |
23:56:19 | Araq | (not because I have some religious beliefs against it, I don't) |
23:56:35 | JRS_ | Have a peek at the ScriptBasic translator to Nimrod we are working on. http://www.allbasic.info/forum/index.php?topic=249.0 |
23:57:52 | JRS_ | Most BASIC programmers don't use GOTO / GOSUB much anymore. FUNCTION/SUB is preferred. |
23:58:33 | JRS_ | GOTO is a concern and thanks for mentioning it. |
23:59:19 | JRS_ | Can you define not supported? |
23:59:30 | Araq | it doesn't exist ;-) |
23:59:37 | Araq | you can do: |
23:59:39 | Araq | block: |
23:59:44 | Araq | foo |
23:59:44 | JRS_ | Can I work around it? |
23:59:50 | Araq | if bar: break |