<< 15-10-2013 >>

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:38Demoswhat 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:06DemosI am kinda wondering if it is data compatible with BSTRs
00:59:49fowlDemos, theres a \0 at the end so its compatible with char* and a length field
01:00:11Demosis it length---data----\0
01:00:16fowlidk
01:01:13Demosbstrs are length(4 byte),data,two nulls
01:01:25Demosnot sure if length includes the second to last null
01:01:28Demostime to write a test
01:02:03fowlwhats a bstr
01:02:19Demosstring value used in COM
01:02:40DemosI am asking because .net can marshal strings as bstrs or LPCstrs (cstrings)
01:03:19*EXetoC quit (Quit: WeeChat 0.4.1)
01:03:41Demosalso did you ever look at my ECS stuff on github...
01:04:19fowlugh i have something misaligned in sdl2
01:04:25fowlno i forgot :x
01:05:58Demosnpnp, 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:36fowlinteresting
01:08:48DemosI think some sizes were also wrong there, do not write graphics code while sleepy
01:13:35*dyu joined #nimrod
01:14:31fowlabout to write a byterepr()
01:14:47fowlbyterepr(somepointer, int8, int16, ..)
01:17:16fowli cant do varargs[typedesc]
01:17:19fowlwhat kind of world is this
01:22:11Varriountfowl, what is byterepr?
01:23:20VarriountDemos, I believe it's a null terminated utf string
01:23:39VarriountWith the length encoded somewhere
01:23:49VarriountThat way it can be both!
01:24:12Demoswell I am testing it with a bstr, so we shall see, .net does not like my new 64 bit nimrod compiler though
01:24:50Demosnot sure about the second null terminator though
01:25:33Demosalso, 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:45fowlVarriount, 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:53VarriountNimrod has a C# compiler?
01:31:24Demosno, I am calling the Nimrod compiler from C#
01:31:36VarriountWhy?
01:31:37Demosvia the library that is the compiler
01:31:56Demosbecause then I can use the compiler to provide lexing and parsing to visual studio
01:32:03VarriountAh.
01:32:15*Varriount claps for Demos
01:33:08Demosand 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:30VarriountI have to find the 64 bit integer in the haystack.
01:34:00fowlhere's the outcome: https://gist.github.com/fowlmouth/8887d6a711e95a542e58
01:34:43VarriountFowl, what does that do exactly?
01:35:03VarriountGet the length of bytes in each field of a type?
01:36:24fowlshow each byte
01:37:05fowlbut yea it iterates over each field
01:37:56VarriountThat might be useful to me.. Since I'm trying to find objects with mis-sized types.
01:38:23Demoscan you compile with -Wpadding (or maybe -Wpadding)
01:38:26fowlwell im looking at sdl's headers and the types are the same but something is wrong
01:38:35Demoson msvc /Wall does it as well
01:39:12fowlgcc: error: unrecognized command line option ‘-Wpadding’
01:40:01fowl-Wpadded ?
01:40:29Varriountgcc: error: cosmic libraries not found. please recompile universe.
01:43:27*brson quit (Ping timeout: 260 seconds)
01:46:54fowlomg
01:46:57fowlim missing a field
01:47:01fowldamn you sdl2
01:47:48fowlno more writing wrappers for non-stable thigns
01:47:59Varriount:p
01:48:56Demosit 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:18VarriountDemos, at least nimrod isn't c++
01:49:49VarriountInterfacing C++ with anything is... challenging
01:50:09Demosyou 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:30Demosbut yeah, trying to call C++ functions directly is not smart
01:50:38*dyu_ joined #nimrod
01:50:48VarriountThe problem is when the creator of whatever you're acting on doesn't export *anything*
01:51:10Demosyou write some c++ in an extern "C" block
01:51:30Demossame could be said when the creator of the Nimrod compiler does not export anything to c#
01:54:25Varriountfowl, 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:45fowlVarriount, look at typeinfo
01:55:15fowlVarriount, 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:45Araq_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:54Araq_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:00Araq_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:53VarriountAraq, 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:15dom96hello
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:20dom96Araq: 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:49Araqdom96: I don't think so. but perhaps. how can "open" ever be discardable?
17:57:20dom96dunno
17:57:34dom96but in irclog.nim I used 'open' without discarding its result
17:57:41dom96only now the compiler complains
17:57:51dom96maybe it was an issue that was recently fixed in the compiler?
17:58:39*q66 quit (Quit: Leaving)
17:58:48Araqyep, quite possible
17:59:59Araqladies and gentlemen, Varriount fixed the last (*cough*) socket bug for win64 ;-) congratulation!
18:00:25Varriount:D
18:00:41dom96yay
18:02:57reactormonkdom96, so babel build doesn't do anything in my JS repo
18:03:30reactormonk... or am I getting the thingy wrong. No package upload to somewhere?
18:04:36dom96reactormonk: what's the output?
18:05:31reactormonknothing.
18:08:51Varriountdom96, 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:10dom96Varriount: hrm, i'm not sure. I rushed that code a bit.
18:24:41Varriountdom96, I'll be blunt - that's self evident
18:33:24*q66 quit (Quit: Leaving)
18:44:34Varriountdom96, you there?
18:47:35dom96yes
18:47:58VarriountDO you have access to the repository that builder.nim downloads for csources?
18:48:40dom96yes
18:49:44VarriountCould you please add, to the build64.bat file, the flag "-Isrc" to the link_flags and Comp_flags variables?
18:50:36VarriountI 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:07AraqVarriount: I'm on it, I named it "nimcache" though
19:00:07*gdos quit (Remote host closed the connection)
19:00:33VarriountNamed what nimcache? The batch file?
19:00:42Araqthe 'src' dir
19:01:36Araqand yeah I think TSocketHandle should be distinct
19:02:59Araqit's a breaking change but oh well people are so generous when it comes to that
19:04:17VarriountWell, it does state at the top that the api is unstable.
19:04:32Araqdoes sockets.nim state that?
19:05:15VarriountI think so.
19:05:40Araqwell I don't think it matters, people don't read, but very well...
19:07:17VarriountAraq, it was either that, or a bunch of when defined(windows)
19:07:33*gdos joined #nimrod
19:07:47Araqyour solution is very nice, don't worry
19:08:58VarriountOh how I wish windows was POSIX compliant
19:10:24Araqreally? I dunno
19:10:33Araqposix sucks in its own ways
19:10:35*XAMPP-8 joined #nimrod
19:10:53VarriountI just want an api that works across OS's
19:11:14AraqI just want 1 OS to rule them all
19:11:21Araqwritten in nimrod of course ;-)
19:14:23VarriountOk, got the builder to work.
19:14:35VarriountI 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:21VarriountAraq, how do you feel about the idea of a module which implements a low-level, cross platform api?
19:18:42Araqfor sockets? that's planned already
19:18:59VarriountFor more than just sockets - A module which would use winlean or posix, and abstract away the differences.
19:19:12Araqlook at os.nim
19:19:33VarriountWhat's the plan for sockets?
19:19:41AraqI can't see how an abstraction that uses 'cstring' instead of 'string' helps
19:19:53Araqmemory management often differs between posix and win
19:20:18Araqalso win uses utf-16 for filenames
19:20:40Araqso it would be: string from cstring from utf-16
19:20:47Araqin other words: slower
19:21:28Araqbut I guess you would introduce some abstract Filename string type instead?
19:21:49VarriountOr object
19:21:56Araqbah
19:22:13Varriounthumbug!
19:23:09Araqif I need more speed than os (and I never do), I need to it in a platform dependent manner anyway
19:23:25Araqor I program knowingly how the abstraction gets translated to posix
19:23:32Araqwhich also kind of defeats the purpose
19:23:56VarriountAnyway, you mentioned a plan involving sockets?
19:24:13Araqyeah we like a low level sockets module
19:24:30Araqand then on top of it that higher level stuff including asyncio
19:32:09*OrionPK joined #nimrod
19:37:52VarriountBy the way Araq, I was looking through the library documentation the other day, and saw staticRead.
19:38:10VarriountThat's a pretty slick way to include binary resources.
19:39:09AraqI even mentioned it in my talk :P
19:39:18VarriountTalk?
19:39:29*gdos joined #nimrod
19:40:25Araqhttp://forum.nimrod-code.org/t/256
19:47:43VarriountAraq, you should have mentioned one of nimrod's most important features!
19:47:53VarriountIt doesn't require header files!
19:50:33Araqnah, no new language requires header files
19:50:56Araqnot worth mentioning
20:00:31*krusipo joined #nimrod
20:02:11Araqhi krusipo welcome
20:02:47krusipoAraq: Hi and Thank You.
20:07:13VarriountAraq, you have 7 pull requests.
20:11:01NimBotAraq/Nimrod master 183886e Clay Sweetser [+0 ±4 -0]: Added a TSocketHandle type to winlean.nim and posix.nim... 2 more lines
20:11:01NimBotAraq/Nimrod master c48a38a Andreas Rumpf [+0 ±4 -0]: Merge pull request #624 from Varriount/win64/fix-sockets... 2 more lines
20:13:40NimBotAraq/Nimrod master 5ecffec Reimer Behrends [+0 ±1 -0]: Exposed process file handles in osproc module.... 5 more lines
20:13:40NimBotAraq/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:43NimBotAraq/Nimrod master ca952af Billingsly Wetherfordshire [+0 ±1 -0]: Update xlib.nim... 2 more lines
20:16:43NimBotAraq/Nimrod master 8a7d4f7 Billingsly Wetherfordshire [+0 ±1 -0]: Update xutil.nim
20:16:43NimBotAraq/Nimrod master 271b38c Billingsly Wetherfordshire [+0 ±1 -0]: Update glx.nim... 2 more lines
20:16:43NimBotAraq/Nimrod master d7e4b3e Billingsly Wetherfordshire [+0 ±1 -0]: Update xutil.nim... 2 more lines
20:16:43NimBot2 more commits.
20:17:11NimBotAraq/Nimrod master d3243df Markus Pfeiffer [+0 ±1 -0]: Add DragonFly as essentially a clone of FreeBSD
20:17:11NimBotAraq/Nimrod master 803254a Andreas Rumpf [+0 ±1 -0]: Merge pull request #617 from markuspf/master... 2 more lines
20:18:14fowlhaha my github name is so cool
20:19:40shevy:P
20:29:52Araqfowl: why? is that not your real name?
20:30:12fowlno lol
20:32:25Araqdo you fear github is like facebook?
20:33:12*Endy quit (Ping timeout: 240 seconds)
20:33:31fowlno, i just try to keep my real name private
20:33:44fowli dont use my real name on facebook either, and my only picture is a closeup of my eyes
20:34:05OrionPKare you ashamed of ur real name?
20:34:20*Araq is famous now :P
20:34:32OrionPKmy ass has over 10,000 views on youtube
20:35:35AraqOrionPK: that's slightly frightening
20:35:57OrionPKit's from a robotics competition > 7 years ago
20:36:04OrionPKand i was fully clothed
20:36:23OrionPK23,000 views now
20:36:44Araqoh 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:04fowlput me in nimrod-code and ill move the stdlib stuff to babel packages
20:45:30Araqdom96: please do it
20:48:16dom96done
20:48:20dom96I think.
20:53:45fowlYou are a member of this Organization!
20:56:32Araqcongratulations
21:01:11*Araq wishes he never had started with an AST based interpreter
21:01:50Araqthis "first make it work, then make it fast" never works ... you have to start with an efficient design ...
21:02:39fowldid you write a whole new vm or using luajit
21:02:48Araqwhole new VM
21:04:25AraqI 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:03Araqplus making luajit support our ASTs didn't look like fun at all
21:09:02*q66 joined #nimrod
21:10:34fowlis there a format you want these packages in, like src/ and examples/ directories
21:11:23Araqsrc/ and examples/ sounds good
21:12:00fowlok
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:53AraqError: macro returned a cyclic abstract syntax tree -.-
21:24:38fowlwhats the license on these
21:25:17Araqdepends really but I think most can be under MIT
21:26:11Araqeven the stuff coming from pascal has been edited enough over the years so its origin is no longer relevant; I think
21:29:02fowlok
21:30:47fowldom96, can you create repos for x11, opengl, gtk and cairo
21:31:14dom96sure
21:31:56*Boscop_ is now known as Boscop
21:32:10dom96i'll name the gtk repo gtk2
21:32:29dom96done
21:33:48fowli have to be given access to each of them
21:34:11*Varriount is now known as Inner_Thoughts
21:34:26Inner_ThoughtsMine, mine, ALL MINE!
21:34:33*Inner_Thoughts is now known as Varriount
21:34:51AraqVarriount: creepy
21:34:57dom96fowl: ugh really
21:35:21Araqjust give him write access, dom96
21:36:21dom96meh, 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:58fowli wont let you down :p
21:38:04fowlwell, i might, but it wont be on purpose
21:54:29*q66_ is now known as q66
21:58:35*io2 quit ()
22:10:05Araqquick
22:10:21Araqrun: nimrod c -r lib/pure/xmltree.nim
22:10:51fowlno output
22:11:02Araqbut it compiles, right?
22:11:43fowlyes
22:12:01Araqwell I've got news for you then: it doesn't under the new VM :P
22:12:09Araqbut 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:25dom96Araq: How does the add(string, string) magic work?
22:35:07*shevy quit (Ping timeout: 272 seconds)
22:37:47Araqit's magic
22:39:05Araqhttp://star.psy.ohio-state.edu/coglab/Pictures/miracle.gif
22:40:23VarriountHas anyone given any thought into using an already established continuous integration and testing system, like, say, build bot?
22:40:25Araqsystem/sysstr.nim:163 implements a part of it
22:40:56AraqVarriount: we don't use software written in inferior languages here
22:41:14VarriountThen why do you use gcc to compile nimrod?
22:41:22Varriount:p
22:41:31Araqmat2 has a native backend :P
22:41:42Demoswhat is mat2?
22:41:51Araqhe's a guy
22:42:01dom96ugh, how do I make Nimrod show me the gcc line it's using to compile the C code?
22:42:33dom96!seen Mat2
22:42:33NimBotMat2 was last seen on Sun Oct 6 21:24:17 2013 quitting with message: Quit: Verlassend
22:42:55dom96He has been absent for quite some time now.
22:43:29Araqhmm true
22:44:36VarriountAraq, if you don't want to use inferior languages, why are you using nginx for the website?
22:45:20AraqVarriount: yeah yeah yeah
22:45:30Varriount./troll
22:45:38Araqit's all temporary until NimOS arrives
22:46:04Araqthough people say a dialect of C++ has been used to design the hardware ...
22:46:18Araqso ... we need to design our own hardware too
22:46:51*fowl_ joined #nimrod
22:47:13*shevy joined #nimrod
22:47:15VarriountI still think that build-bot might be better than the *buggy* builder.nim
22:47:21dom96Araq: how do I make Nimrod show me the gcc line it's using to compile the C code?
22:47:58fowl_--parallelbuild:1
22:49:28Araqdom96: not sure what you mean but it's --embedsrc I think
22:50:17dom96Araq: I want to know what it executes to compile the .c files.
22:50:35dom96It's only showing me how it links it for some reason
22:50:47Araqit's listed in the /* top level comment */
22:50:57Araqof the generated C file
22:51:15VarriountSo, Araq, any other known bugs with windows/win64 that need to be fixed?
22:51:19dom96ahh, alright.
22:51:27dom96thanks
22:51:32AraqVarriount: and once we have migrated everything to stable software, how do we find bugs in our runtime?
22:52:00VarriountTests?
22:52:04Araqlol
22:52:12AraqTests never cut it
22:52:38Araqstuff in production, even if buggy, is a much better test
22:53:06VarriountIs this a hint that I should focus on refactoring builder.nim?
22:54:01Araqevery feature I implement has tests and yet before somebody wrote a sizable library using that feature it's buggy as hell
22:54:38Araqand sometimes even afterwards (*cough* lambda lifting)
22:55:20AraqVarriount: builder.nim needs a "diff" feature asap
22:55:43dom96Yes, 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:58Araqbecause we have >600 tests, I fix something, something else breaks
22:56:08Araqand I don't want to go through the list again
22:56:15Araqand see what exactly I broke
22:56:44Araqand 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:10VarriountThat was.. odd
23:01:19VarriountWas I the only one disconnected?
23:01:39fowl_was that your first time
23:02:00fowl_were you disconnection virgin lol
23:02:06VarriountDisconnected (No such device or address)
23:03:45fowl_Araq, want separate packages for lua, python and tcl or combine them?
23:04:14dom96separate
23:06:47fowl_mkdir {lua,python,tcl}/{examples,src}
23:06:51fowl_so cool that works
23:14:02AraqVarriount: [22:45] NimBot linux-x86_64: Test results: 611/643
23:14:02Araq[22:46] NimBot windows-x86_64: Test results: 603/643
23:14:17*BitPuffin quit (Ping timeout: 240 seconds)
23:14:27Araqso .. 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:51Araqhi kryton9 welcome
23:16:04kryton9Hi Araq
23:16:13kryton9I am loving Nimrod so far
23:16:34kryton9our group is trying to write a translator for BASIC users to come over to Nimrod
23:16:41VarriountIt's like C++, but without the masochism!
23:16:51kryton9exactly
23:17:15kryton9right now we are doing tests converting ScriptBasic to Nimrod.
23:17:48kryton9In SciptBasic you can undefine an existing variable, is there a similar command in Nimrod?
23:18:22kryton9killing the variable from memory
23:18:30dom96ahh yes, I was wondering what you guys were up to after reading the forum.
23:18:30VarriountSet it to nil? Put it in a block?
23:19:09fowl_kryton9, no, nimrod is not perl, python, lua or any other dynamic language, its compiled
23:19:47kryton9I know, we are just using scriptbasic as it can output to c and compile also.
23:20:13Varriountkryton9, I think the closest thing is setting a variable to nil.
23:20:21fowl_im curious to see what "deleting a variable" looks like in c
23:20:28Araqkryton9: you can do this:
23:20:29VarriountJust wondering, why would you undefine a variable?
23:20:34Araq let x = "abc"
23:20:39Araq if true:
23:20:46Araq # new scope here
23:20:53Araq let x = 23
23:21:13Araqthis doesn't delete the outer 'x' but hides it
23:21:27kryton9thanks, but here is what i was meaning
23:21:35kryton9var s = "abc"
23:21:45kryton9kill s
23:21:55kryton9var s = 42
23:22:22kryton9s = nil
23:22:31kryton9then can I reassign to a different type/
23:22:36Araqthat can't work in Nimrod
23:24:28kryton9a lot of BASICs had this ability with different keywords, but the same result
23:24:55Araqwe could support it with some hack to ease the transition process
23:25:00Varriountkryton9, Why use this feature?
23:25:33kryton9check out our c9.io site to see and get a better idea and also this forum thread:
23:25:42kryton9https://c9.io/scriptbasic/nimrod
23:26:29kryton9http://www.allbasic.info/forum/index.php?topic=246.0
23:27:37kryton9under projects the file I am working on is bc3v2.nim
23:28:41kryton9https://c9.io/scriptbasic/nimrod nimrod/project/Kent/bc3v2.nim
23:28:59AraqI'm not familiar with scriptbasic or other basics but it can be really easy to do a bas2nim
23:29:24kryton9Let me see if I can get our group leader in here...
23:31:54Araqkryton9: do you want to translate or to compile?
23:31:58Araqbig difference ...
23:32:29Araqtranslate: one-time process and then your programs are in nimrod; manual tweaking ok
23:32:53Araqcompile: compile to nimrod, needs to be 100% automatic but the code doesn't need to be readable
23:33:29dom96Araq: Any ideas why the compiler generates an appendString sometimes but an add_XXXX some other times for the AppendStrStr magic?
23:33:51kryton9I messaged John, the leader... he can explain better and answer your questions better than me.
23:34:41Araq'add_XXXX' is only done for seqs, I think, dom96
23:35:10dom96Araq: Well I have this in my system.c: N_NIMCALL(void, add_6241)(NimStringDesc** x, NCSTRING y)
23:35:41Araqwell that appends a cstring to a string
23:36:09AraqAppendStrStr doesn't deal with this
23:36:49dom96ahh, I see it.
23:38:17dom96well i'm away to sleep
23:38:18dom96bye
23:40:43kryton9while 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:56Araqyes and yes
23:41:07kryton9great, can't wait to watch it
23:41:09Araqthough I have no idea why, will contact the guy in charge
23:41:16Araq*when
23:41:28AraqI have no idea *when* it will be put online
23:41:49*BitPuffin joined #nimrod
23:41:52kryton9will you post on the forums or on the news section when it does?
23:42:17Araqof course, everybody wants to see it
23:42:26kryton9Cool.
23:42:41AraqI only had 25 minutes though
23:42:49Araqand wasn't allowed any questions
23:43:02Araqthey screwed up their time table a bit
23:43:04kryton9that's all, tough to present a new language in such a short time
23:43:40AraqI focussed on the meta programming, I didn't show anything else really
23:44:30kryton9Google sponsors google talks and they invite language developers and give plenty of time and put it online. You should contact them
23:45:01Araqgood idea
23:45:03kryton9Nimrod is awesome and the more people hear and see it the quicker it will get the recognition it deserves
23:45:16Demosyeah! Nimrod is way cooler than Rust and people need to hear about it
23:49:58kryton9I will try setting to nil and see what happens. brb
23:50:39*JRS_ joined #nimrod
23:51:04JRS_Hi All - John from the ScriptBasic team.
23:51:13Araqhi JRS_ welcome
23:51:22JRS_How can I help?
23:51:31Araqmost important question first: do you want to translate to nimrod or to compile?
23:51:36kryton9Araq this is John our group leader
23:53:05kryton9nil didn't work, but I also enjoy nimrod's error message, very nice and easy to figure out stuff.
23:53:08JRS_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:40Araqyou could also a basic parser to nimrod; the compiler has a pluggable parser architecture
23:54:46Araq*could add
23:55:10JRS_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:29Araqbiggest problem I see is "goto" though; Basics make heavy use of "goto", nimrod doesn't support it
23:55:49Araqand it's hard to add for technical reasons
23:56:19Araq(not because I have some religious beliefs against it, I don't)
23:56:35JRS_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:52JRS_Most BASIC programmers don't use GOTO / GOSUB much anymore. FUNCTION/SUB is preferred.
23:58:33JRS_GOTO is a concern and thanks for mentioning it.
23:59:19JRS_Can you define not supported?
23:59:30Araqit doesn't exist ;-)
23:59:37Araqyou can do:
23:59:39Araqblock:
23:59:44Araq foo
23:59:44JRS_Can I work around it?
23:59:50Araq if bar: break