<< 08-05-2014 >>

00:09:38*oxful_ quit (Ping timeout: 240 seconds)
00:12:51*oxful_ joined #nimrod
00:23:23njoejoenimrod doesn't figure out int types? var a: array[0..1,int32]; a = ["str".len,"str2".len] i need to: a = [int32("str".len),int32("str2".len)]
00:24:08EXetoConly for the first element
00:24:18EXetoCor maybe that's for literals only
00:25:08njoejoeoh yea, only first needed it. still kind of annoying :-)
00:33:52*Demos quit (Read error: Connection reset by peer)
00:34:41njoejoemy code is blowing up with int32()'s. i don't understand, if i say var a:int32 why everytime that i assign an int to it do i have to coerce it.
00:36:06EXetoCint is either 32 or 64 bits, and narrowing operations cannot be implicit
00:37:37njoejoeis there a way i can tell my module that i want int to be 32 bits? because it is defaulting to 64 and i don't want that for this module.
00:39:30EXetoCno
00:40:08*Jesin joined #nimrod
00:44:04EXetoCneed to care about sizes?
00:46:44njoejoeyes, everything needs to be 32bits, writing bunch of offset pointers to disk and need to be 32 bits each otherwise size of file explodes
00:55:04*q66 quit (Quit: Leaving)
01:03:06fowluse int32 then
01:06:53*Johz quit (Quit: Leaving)
01:12:40*DAddYE quit (Remote host closed the connection)
01:16:39*bjz joined #nimrod
01:20:03renesacnjoejoe, you can probably write a converter that will affect only this module
01:20:21renesacfor implicit conversion between int and int32
01:20:57renesacand you can aways do "str".len.int32 instead of using parenthesis
01:24:29njoejoei will have to look into the converter. these int32()'s are uglifying my already ugly enough code :-)
01:28:00*havenwood joined #nimrod
01:36:36*BitPuffin quit (Ping timeout: 265 seconds)
01:45:07VarriountIt could be worse. It could be something like njoejoe.convertToInt32()
01:46:09*BitPuffin joined #nimrod
01:51:27*BitPuffin quit (Ping timeout: 252 seconds)
01:51:45njoejoeVarriount: yes it could be worse... http://goo.gl/rKZpIO at least i'm not calvin :-)
01:53:37Varriountnjoejoe: I just wish I could come up with an Araq-friendly way to remove all the 'when useWinUnicode... else: ...' blocks
01:54:16VarriountThe last time I tried, I used a macro, which made him nervous.
01:58:46njoejoei don't know how you'd do it
01:59:57Varriountnjoejoe: Well, on my first try, I made a macro which would generate the bindings based on whether the application was compiled with unicode support or not.
02:34:37*DAddYE joined #nimrod
02:46:29*Skrylar quit (Ping timeout: 264 seconds)
02:50:28*brson quit (Quit: leaving)
03:00:06*BitPuffin joined #nimrod
03:07:46VarriountAraq: Erm, do I need to bootstrap nimrod with some special flag to get the 'unchecked' pragma working?
03:25:05*havenwood quit (Write error: Connection reset by peer)
03:27:48*xenagi quit (Quit: Leaving)
04:20:44*BitPuffin quit (Quit: WeeChat 0.4.3)
04:21:36*BitPuffin joined #nimrod
04:26:27VarriountAnyone up?
04:36:07*Skrylar joined #nimrod
04:44:15VarriountHi Skrylar
05:00:44*Jesin quit (Quit: Leaving)
05:04:59*havenwood joined #nimrod
05:11:16VarriountHi havenwood
05:11:31havenwoodVarriount: hello
05:12:37*bjz_ joined #nimrod
05:13:57*bjz quit (Ping timeout: 276 seconds)
05:19:51Varriounthavenwood: I'm about to go to sleep. Araq, dom96, and some of the others should be awake in a couple hours. Ask Skrylar if you have any questions, if he's not too busy.
05:20:35havenwoodVarriount: Thanks much! G'night.
05:38:13uggedalanyone know if nimrod is packaged for other systems than freebsd, openbsd and archlinux?
05:40:41havenwooduggedal: there's an OS X brew package (i only know since that's how i installed)
05:42:10uggedalhavenwood: thanks
05:43:46fowlsomeone recently said that was old
05:43:50fowllike years old
05:44:06uggedalseems like its 0.9.2
05:44:18fowlok so not years old but still old
05:44:32havenwoodtoo old?
05:44:56uggedalI packaged nimrod for http://alpinelinux.org yesterday, just wanted to see if I missed something
05:46:02uggedalhttp://git.alpinelinux.org/cgit/aports/tree/testing/nimrod
05:46:39fowlhavenwood, yea thats old as madonnas boobs https://github.com/Araq/Nimrod#compiling
05:47:33fowluggedal, you should add -d:useGnuReadline to koch boot (if the distro is one that comes with readline)
05:48:57havenwoodfowl: thx for the headsup it was old, i never guessed. built. ;)
05:49:16fowluggedal, did you make an issue for whatever caused needing those patches
05:51:14fowlmaybe they are uclibc specific
05:52:59uggedalfowl: musl specific actually
05:53:47uggedalfowl: and bash/readline is not in the base system, but I could add a dep
05:53:59uggedalis readline used for repl?
05:54:44fowluggedal, it let you use up/down arrows instead of getting ansi codes
05:55:04fowli wouldnt make it a dep, maybe you can add the flag if readline is installed
05:57:44uggedalfowl: well, alpinelinux uses binary packages so readline will never be installed at build time unless we depend on it
05:58:57fowloh
06:02:51uggedalhmm, the repl seems to have issues: http://sprunge.us/NddC
06:03:35fowlthe importc errors?
06:04:11uggedalfowl: yes
06:04:41fowlnimrod got a new vm recently but lost FFI support
06:05:27uggedaland ^D in the repl prints '>>> ' repeatedly until I kill it
06:05:50fowlthats the kind of thing readline handles
06:06:09uggedalshould add a dependency on it then ;)
06:40:44*isenmann quit (Ping timeout: 252 seconds)
06:53:16*isenmann joined #nimrod
07:12:20*nande quit (Read error: Connection reset by peer)
07:12:34*vendethiel quit (Ping timeout: 245 seconds)
07:13:05*vendethiel joined #nimrod
07:13:50njoejoewhy do "cells" have "invalid data!" instead of [0,1]? https://gist.github.com/jots/e11ec6bfffd8a35f753b
07:14:36fowlnjoejoe, repr bug
07:14:53njoejoeah.
07:17:59fowlnjoejoe, you should define $ for openarray[t] and do a PR
07:19:36njoejoefowl: ok. will do in the morning. my brain has been fried by uint32's tonight.
07:26:45fowluint doesnt buy you much
07:28:07njoejoea uint and a dime will get you a cup of coffee...
07:28:42njoejoei'm working with 32 bit pointers stored on disk and they need to be uints (i think).
07:28:44fowlafter defining ? to turn T into TMaybe[T], im thinking about doing more, like +int #=> seq[int]
07:29:48fowltemplate `=>`* (a,b: typedesc): typedesc = TTable[a,b]
07:29:48fowlvar x: string => int
07:31:06njoejoeif I knew what TMaybe[T] voodoo was i might think that was cool
07:31:42*radsoc joined #nimrod
07:32:18Araqhi radsoc welcome back
07:32:19fowlnjoejoe, tmaybe[t] is a value that is either T or nothing
07:32:49fowlnjoejoe, sometimes called option[t], c# has special syntax for it
07:32:50radsochi Araq, thanks!
07:32:57Araqfowl: cool type constructors. :-)
07:33:40Araqhi havenwood welcome
07:33:44fowlC# int? num = null;
07:33:49fowlin nimrod we can use prefix op
07:34:08fowltemplate `?`* (some:typedesc): typedesc = TMaybe[some]
07:34:27fowlvar num: ?int
07:34:44Araqwe could also have postfix ops, but people are already scared when it comes to operators ...
07:35:25fowlhow could you have postfix operators and prefix operators without limitations on what the operator is
07:35:59fowlid rather have postfix notation like "degrees", "hours"
07:37:08fowland a "per" operator :D
07:45:52fowlAraq, thats a serious question, how do you discern between operators when parsing
07:49:55Araqfowl: first shot: operator followed by , ; ) ] } is a postfix operator
07:52:28fowlaha
07:53:38fowlwe could have ascii boobies contests!! ((1@)@1)
07:55:05fowlallow _ as an ident too so t(-_-t) is valid
07:57:40*DAddYE quit (Remote host closed the connection)
07:58:08*DAddYE joined #nimrod
07:58:57*kunev joined #nimrod
08:02:35*DAddYE quit (Ping timeout: 250 seconds)
08:12:38uggedalhow is readline loaded when I use 'nimrod i'?
08:13:07uggedalscanelf --needed /usr/bin/nimrod does not give me libreadline.so
08:15:37fowluggedal, its loaded at run time
08:18:41fowlthe rdstdin module
08:19:13uggedalfowl: thanks, if I understand it correctly I traced it back to compiler/cgen.nim
08:19:18fowlwhat does your distro use? editline?
08:20:01uggedalboth are available, but non of them installed by default
08:20:08fowlthere is a ruby port of readline, its pretty laughable code, like a 1:1 port of c:ruby
08:20:41fowlo
08:20:53uggedalalpinelinux is basically kernel, busybox, musl libc, initscripts
08:21:40*noam_ joined #nimrod
08:21:59uggedalthe problem was that our package builder uses readelf to trace shared lib dependencies unlike other distroes which have a direct dependency on a readline-dev package
08:22:23radsocdoes someone know if proc chaining can work with proc using var arguments like map? I get this error at compile time: 'expression map... has no type (or is ambiguous)' see https://gist.github.com/radsoc/13c599768aee38777bf3
08:22:46uggedalso, you define a build time dependency (readline-dev) and all used shared libs in the resulting binaries are added as dependencies
08:24:33Araqradsoc: the convention is to not allow for chaining when you have 'var' parameters
08:24:42Araqand so 'map' doesn't support it
08:24:54*noam quit (Ping timeout: 252 seconds)
08:26:49Araquggedal: readelf to trace shared lib dependencies is fundamentally flawed thanks to 'dlsym'
08:27:10Araqwhich is what nimrod defaults to btw so that we don't depend on crappy "devel" packages
08:28:37*Varriount|Mobile joined #nimrod
08:29:25Varriount|MobileAraq: I have a link you might like, which demonstrates a weak point in strongly OO languages
08:29:28Varriount|Mobilehttp://james-iry.blogspot.com/2013/03/king-null-stubborn.html?m=1
08:33:01radsocAraq, OK. I thought that using var parameters was more memory efficient when dealing with huge arrays but I may be wrong?
08:33:19AraqVarriount|Mobile: not a bad article, but OO has not much to do with it
08:33:39Araqinitialization is hairy in all imperative languages
08:34:26Varriount|Mobileradsoc: Parameters in nimrod are, 85% of the time, passed as pointers under the covers
08:35:11Varriount|MobileThat's why parameters are immutable.
08:37:22Araqradsoc: 'var' parameters are more efficient if you use them to change semantics
08:37:27Araqotherwise they are not
08:39:47milosnmorning :)
08:40:34milosnquick question ... i need to pass 'matches' parameter to re.find() ... how do you define openarray parameter?
08:40:50milosnlooking at the tut ... not much there (as in example)
08:41:05radsocAraq: not sure to understand 'change semantics'... each time you call map (with non var paramaters) on a array, you create a new array in memory, no?
08:41:28fowlmilosn, check out the implementation of `=~`
08:42:21Araqradsoc: the non-var version of 'map' creates a copy, yes. But if you're concerned about efficiency why would you use 'map'? ;-)
08:43:41fowlmilosn, you need array[9, string] or smthing like that
08:43:56milosnvar matches {.inject.}: array[0..MaxSubpatterns-1, string]
08:44:00milosnhmmm
08:44:04milosnugly :P
08:44:35milosnwhats 'inject' for?
08:44:37Araqdon't let the FP guys brainwash you, "map" and "fold" are slower and when decently optimized like a 'for' loop. And they don't have any interesting semantics that allow better optimizations.
08:44:56Araq*slower in Nimrod right now
08:45:32Araqmilosn: for your purposes you can ignore the 'inject'
08:46:36radsocAraq: good point! (but I really like the expressiveness of method chaining...)
08:49:16Varriount|Mobile'The C and C++ motto is "casting away safety since 1972."'
08:56:23AraqVarriount|Mobile: and what's worse, no casts are necessary, you get unsafety for every single operation by default
08:56:59Araqexcept perhaps for unsigned integers which are guaranteed to wrap around
09:06:18Varriount|MobileAraq: By the way, the new 'unchecked' pragma came in handy for me.
09:08:27Varriount|MobileI used it to parse a variable length string. (I'm also left wondering why the Pascal strings, who have their length prefixing the data structure, aren't more common)
09:09:04AraqI recently used 'scanf' :P
09:09:16Araqand think we need something like that for nimrod
09:09:31Araqwell it's only a macro away
09:09:55Araqbut we need it
09:15:12*uggedal quit (Quit: leaving)
09:16:43fowlis expr[ident] still a thing
09:18:03AraqI don't think so
09:18:28Araqexpr{ident} might work
09:30:20*havenwood quit (Remote host closed the connection)
09:31:13Varriount|MobileAraq: If I may ask, what are you working on at the moment?
09:32:33fowlhm
09:33:28AraqI have a "new_spawn" branch I need to push ...
09:33:30fowlmy task for when i wake up: rewrite the entitty macros to do more stuff at compile time
09:34:50AraqVarriount|Mobile: it's the "last" major thing to do for version 1.0 except for all the suff that I forgot
09:35:19Varriount|Mobilelike fixing the cache mechanism?
09:36:01Varriount|Mobile(although I heard zahary broke that.)
09:36:06Araqmy plan is to get 0.9.6 out with ALL the planned features and then have 2 versions of bugfixes
09:36:23Araqwe'll see how that will work out ...
09:36:47Araqthe symbolfiles are on hold until 1.0 is released
09:37:01Araqthat's what you mean by "caching mechanism", right?
09:37:06Varriount|MobileYeah.
09:38:41AraqI think we never managed to release more than 2 version per year ... so version 1.0 for christmas seems unrealistic :-/
09:40:07Varriount|MobileCurrently, I'm working on the new fsmonitor api, and researching how to expand the new asyncio api to support extensions and such
09:42:32*darkf_ joined #nimrod
09:45:44*darkf quit (Ping timeout: 265 seconds)
09:47:38Araqgood, but please micklat :P
09:48:14Araqhigh level interop with python and ruby might be a killer feature
09:48:49Varriount|MobileAraq: I don't see what needs to be done with micklat's package.
09:51:03Araqwell does it work?
09:51:17Varriount|MobileYes.
09:51:59AraqI thought there is still some show stopper bug in the compiler left
09:53:19Araqwell please ask him if you can help
09:54:07Araqnext step is to write native python/ruby addons with --os:standalone and *document* it
09:55:09Varriount|MobileYeah, but what would be suitable add-ons?
10:10:43Araqjust make some data structure like a B tree and wrap it for python
10:10:51Araqthat the standard example I think
10:10:59Araq*that is
10:13:02AraqVarriount|Mobile: if you're looking for work, you should checkout the new_comments branch or whatever I called it
10:13:13Araqit fixes comment handling but somebody needs to
10:13:24Araqa) add a transition switch for code like
10:13:29Araqif foo:
10:13:35Araq # comment counts as statement
10:14:06Araqb) check its consequences for "nimrod doc" and "nimrod doc2"
10:22:19*BitPuffin quit (Ping timeout: 258 seconds)
10:32:50*Jehan_ joined #nimrod
10:34:15*darkf_ is now known as darkf
10:50:47*eximiusw1staken joined #nimrod
10:54:57*Zuchto_ joined #nimrod
10:55:29*Zuchto quit (Ping timeout: 252 seconds)
10:55:31*eximiuswastaken quit (Ping timeout: 252 seconds)
10:56:47*Zuchto_ is now known as Zuchto
11:00:14*Johz joined #nimrod
11:15:29*uggedal joined #nimrod
11:21:15dom96Araq: Stop stealing my work force, fsmonitor is important :P
11:23:02*Zuchto quit (*.net *.split)
11:26:48Araqwhy? who runs windows servers anyway?
11:29:54*Zuchto joined #nimrod
11:31:37dom96fsmonitor's applications are not limited to server usage
11:31:56dom96Aporia needs it
11:55:05*BitPuffin joined #nimrod
11:58:37Araqhi Johz welcome
12:04:08*darkf quit (*.net *.split)
12:04:10*JStoker quit (*.net *.split)
12:18:35*JStoker joined #nimrod
12:52:18*Jehan_ quit (Ping timeout: 240 seconds)
13:45:57*nande joined #nimrod
14:23:48*wan joined #nimrod
14:34:41*Jesin joined #nimrod
14:41:26*Varriount|Mobile quit (Ping timeout: 252 seconds)
15:01:40*Jesin quit (Quit: Leaving)
15:05:18*Skrylar quit (Ping timeout: 240 seconds)
15:15:21*Jehan_ joined #nimrod
15:16:30*Jehan_ quit (Client Quit)
15:21:08*bjz_ quit (Ping timeout: 240 seconds)
15:37:14*zahary quit (Ping timeout: 240 seconds)
16:03:23*untitaker quit (Ping timeout: 252 seconds)
16:09:03*untitaker joined #nimrod
16:17:53*DAddYE joined #nimrod
16:34:39*chh joined #nimrod
16:36:43*jita joined #nimrod
16:37:14*jita left #nimrod (#nimrod)
16:40:25*kunev quit (Ping timeout: 250 seconds)
16:57:17*wan quit (Ping timeout: 252 seconds)
17:10:04*q66 joined #nimrod
17:10:05*q66 quit (Changing host)
17:10:05*q66 joined #nimrod
18:01:57VarriountMeep
18:06:01VarriountAnybody here awake?
18:06:06dom96yea
18:07:27boydgreenfieldyep
18:08:35VarriountHm. Is there any way to send messages to another user on github?
18:09:02*brson joined #nimrod
18:09:29fowlno
18:12:11EXetoCno
18:12:14EXetoCyeah
18:12:35EXetoCI mean yes I'm awake
18:13:35*Varriount slaps EXetoC around a bit with a small tuna.
18:13:47VarriountEXetoC: Now are you awake?
18:14:34fowloo i found a segfault
18:14:35EXetoCyes what what what
18:16:21VarriountHm. What should be the policy for style in the standard library, with regards to wrapper identifiers and functions?
18:17:23NimBotAraq/Nimrod devel 809390e Patrick Pelletier [+0 ±3 -0]: fix some typos
18:17:23NimBotAraq/Nimrod devel 4d5ad91 Simon Hafner [+0 ±3 -0]: Merge pull request #1186 from ppelleti/typos... 2 more lines
18:19:48EXetoCtypes often get the type prefix
18:20:36VarriountEXetoC: I mean, should we stick to using the same exact identifiers as the wrappers, or make use of Nimrod's style-insensitivity?
18:20:49EXetoCand lib prefixes are often stripped
18:21:20AraqVarriount: lib prefixes should be stripped unless really short like Q
18:21:35AraqcamelCase instead under_scores
18:22:10AraqTypes capitalized, dunno about Obj Ptr suffixes ...
18:22:19EXetoCthat's reasonable if you are indeed not using some tool like c2nim
18:22:30EXetoCbut
18:22:34VarriountEXetoC: I mean, outside the wrappers.
18:22:41Araqwhy? c2nim can transform names, EXetoC
18:22:51EXetoCI just remembered that
18:22:57Araqthough it needs a few more features
18:23:05VarriountLike, if os.nim imports windows.nim, should it stick to using the exact same style idents as in windows.nim, or the style of the rest of the library.
18:23:14EXetoCwhat about foo_bar -> fooBar?
18:23:35AraqEXetoC: I think that's missing in c2nim
18:24:21EXetoCotherwise it doesn't matter too much, because of the not-so-strict rules, but I'm sure there are other tools that can deal with this
18:29:42EXetoCVarriount: I don't know. I like to use camelCase everywhere, no matter what conventions are used in wrappers
18:30:22VarriountEXetoC: Should that be the case in the std library? I'm trying to draft a style guide.
18:30:25EXetoCand today I got lazy and started using only lower case in conjunction with the command syntax
18:31:50EXetoCAraq: ? ^
18:32:20EXetoCis referencing foo_bar symbols as fooBar encouraged in the std lib?
18:32:34Araqwho knows
18:32:41Varriount-_-'
18:32:46EXetoCright..
18:33:03VarriountFine, I'll just use my best judgement.
18:39:12*Matthias247 joined #nimrod
18:43:07VarriountHey Matthias247
18:43:18Matthias247hi
18:43:23Araqbbl
18:47:02CARAMis there a nim.vim?
18:47:26*Demos joined #nimrod
18:47:38fowlhm
18:47:43VarriountCARAM: There is.
18:49:04CARAMfound it, thanks
18:59:05*brson quit (Ping timeout: 250 seconds)
19:03:36*wan joined #nimrod
19:14:59*tdc joined #nimrod
19:17:44Araqback
19:30:58fowlim trying to rewrite entitty to store more info at compiletime
19:34:50*enurlyx joined #nimrod
19:40:38enurlyxIf i use type TEventHandler[T] = proc (e: var TEventArgs, data: T) {.closure.}
19:41:01enurlyxand proc add*[T] (e: var TEvent[T], h: TEventHandler[T])
19:41:41enurlyxThen if i add a closure to the add function, i get strange c compilation errors.
19:42:26Araqfeel free to report it but chances are high it's a duplicate bug
19:42:33Araqclosures still have some bugs left
19:42:48enurlyxthat is what i wanted to ask. Is it known?
19:43:02Araqhard to say without a gist
19:43:08Araqjust report it please
19:43:12enurlyxok
19:47:53enurlyxThe good thing is, it works if i replace TEventHandler[T] with its definition :)
19:48:09enurlyxproc add*[T] (e: var TEvent[T], h: proc (e: var TEventArgs, data: T) {.closure.})
19:48:53Araqhuh? that's a strange bug then
19:50:31Varriountfowl: What is entitty? Some console thing?
19:54:02fowlVarriount, no its a component entities thing
20:00:11VarriountSo.. dom96, what are you working on?
20:00:30dom96Varriount: nothing, studying for exams.
20:00:48VarriountAh. I hope you're having... fun
20:01:08dom96Varriount: hah, is studying ever fun?
20:01:50dom96I think i'm pretty much done though, there isn't much to study for a practical physics exam.
20:02:17Varriountdom96: Algebraic Physics? Or Calculus?
20:02:44*Varriount <3 Algebraic Physics
20:04:35dom96Varriount: no idea lol
20:04:52dom96The British don't use those names, so i'm not sure.
20:05:49Varriountdom96: Does it have regular formulas, or are "integrals", "derivatives", and "limits" involved?
20:06:13dom96Varriount: Just regular formulas.
20:06:49VarriountAh. Algebraic then.
20:06:59dom96I guess I should have deduced that.
20:07:21*brson joined #nimrod
20:07:40dom96But yeah, we don't have like a calculus exam. We just have "integration" and "differentiation" (that's what they call it here) mixed in among "core" math modules.
20:09:40Varriountdom96: Are those part of regular math classes, or are they for advanced/optional programs?
20:10:10dom96Varriount: Depends what you mean by regular. They're not compulsory.
20:10:31dom96At age 16 you take GCSEs where a Maths GCSE is compulsory.
20:10:57dom96At age 18 you take A levels and you can choose the ones you take.
20:11:12dom96There is a Maths A level as well as a Further Maths.
20:11:26dom96Calculus is part of the Maths A level.
20:12:13Varriountdom96: Your educational system is quite different from mine.
20:13:10*Varriount is idly reading python's asyncio pep, wondering which parts can be feasably replicated in Nimrod.
20:13:19fowlwow
20:13:23fowli think it works
20:13:31fowlusing const to pull information from compiletime variables
20:13:41dom96In any case, we should probably move this convo into #nimrod-offtopic, if you wish to continue it heh.
20:13:50Varriountfowl: Gist?
20:14:03Araqfowl: compiletime vars are now persistent across module boundaries
20:14:30Araqwhich is a PITA for --symbolfiles btw
20:14:50VarriountWhich doesn't work anyway, unfortunately.
20:14:59Araqbut I think I found a solution
20:15:26AraqVarriount: yes, but that doesn't mean we should *design* the language to be impossible to compile incrementally
20:15:28fowlhttps://gist.github.com/fowlmouth/4ed290e7c6b1f9e47a88
20:16:33fowlAraq, the ecs depends on single compilation though, if the number of messages or components changes after you start doing stuff it would probably fall apart
20:17:08Araqfowl: I can't follow
20:25:41dom96Araq: Can we get rid of getCurrentException and specify a var name in the 'except' instead?
20:26:06Araqdom96: we can but it's lots of work
20:26:38dom96Awesome! Because lots of time is what we have!!!!-- oh wait. :(
20:26:56*Matthias247 quit (Read error: Connection reset by peer)
20:27:44dom96But out of curiosity, why is it lot's of work?
20:28:40Araqparser/grammar needs changed, it needs semantic checking and codegen support for 3 backends
20:29:36fowlyou cant just inject let name = getcurrentexception() ?
20:29:37dom96can't we just transform it into a 'let varName = getCurrentException()' in the except block's body? :P
20:29:50fowl^5
20:29:59dom96fowl: :O
20:30:00Araqhmm
20:30:02VarriountPerhaps there needs to be an 'exception stack' instead, for when exceptions are being propagated? (That might be nonsense, I have no idea how the exception system works)
20:30:09dom96fowl: Great minds think alike :D
20:30:28AraqVarriount: we already have a stack for this
20:31:22Araqdom96: ok, this could work. What should the syntax be?
20:31:40Araqexcept e: EIO: ???
20:31:46dom96Araq: Yeah, that's a bigger problem lol
20:31:54dom96Python uses 'except EIO, e:'
20:32:24AraqPython 3 uses 'EIO as e' iirc
20:32:53dom96hrm
20:33:12dom96Maybe we should use that too.
20:33:35Araqyeah
20:33:43VarriountI like the Python 3 way over python 2
20:33:59AraqI recently tried the python 3 shell on their website
20:33:59dom96But won't we get inconsistency criticisms?
20:34:28Varriountdom96: Maybe your proposal needs a mini-NEP
20:34:58VarriountIt would be nice iff we could get a list of choices, pros/cons, etc
20:35:02dom96Varriount: Ain't nobody got time for that.
20:35:08Araqand I typed 'print foo' and it didn't work
20:35:10dom96I can create an issue for it with an RFC tag
20:35:10Varriount-_-
20:36:59fowlAraq, yea print used to be special syntax, its now a normal function
20:37:16VarriountAs a side note, do I need to create an issue stating that there is currently no way to have the asyncdispatch module share its IO completion port with another thread?
20:37:56Araqfowl: I know, but it puzzles me how one can think this is a change for the better
20:38:14AraqGuido could easily have generalized the command syntax instead like we do
20:38:36Araqthat would be against "there is one way to do it"
20:38:37VarriountAraq: You're forgetting that Guido can't just do whatever he wants.
20:39:02VarriountHe has the entire community pressuring him. A community of thousands.
20:39:26VarriountAnd the Python-Ideas mailing list can get quite... heated.
20:39:38Araqiirc getting rid of () for print was his idea?
20:39:52VarriountNo..
20:40:08Varriountprint started as a statement, since the beginning.
20:40:21Araqstill he could have veto'ed
20:42:20Araqwell I would only have changed / (div) for Python 3 and perhaps stole @foo for self.foo from Ruby
20:47:02*Varriount|Mobile joined #nimrod
20:53:11*Varriount|Mobile quit (Ping timeout: 276 seconds)
21:00:45*DAddYE quit (Remote host closed the connection)
21:07:46*Jehan_ joined #nimrod
21:10:44*zahary joined #nimrod
21:21:58fowlcan i see the expansion from a template
21:31:35*BitPuffin quit (Ping timeout: 255 seconds)
21:38:18*tdc quit (Ping timeout: 240 seconds)
21:40:03*Demos quit (Remote host closed the connection)
21:43:48*DAddYE joined #nimrod
21:47:00*BitPuffin joined #nimrod
21:48:05*brson quit (Quit: leaving)
21:48:18*brson joined #nimrod
21:51:34*DAddYE quit (Remote host closed the connection)
21:52:10*Jesin joined #nimrod
21:52:52*DAddYE_ joined #nimrod
22:17:54reactormonk@foo is not self.foo
22:24:23fowli would love if this worked echo(type(echo("Hello")) is void)
22:24:34fowlError: expression 'echo("Hello")' has no type (or is ambiguous)
22:24:51*Varriount|Mobile joined #nimrod
22:27:22Varriount|MobileAraq: Does nimrod use the remap_file_pages call on Linux for any core things, like memory management?
22:28:57EXetoCgrep it?
22:29:58Varriount|MobileEXetoC: Do you not see my nickname?
22:30:37Varriount|MobileI like Nimrod, but I think it might be a tad obsessive to try to develop it on my phone.
22:31:37EXetoCoops
22:31:44EXetoCit turns up nothing
22:33:24Varriount|MobileOk, good. Apparently there's talk of that particular syscall being removed from the Linux kernel
22:36:23Jehan_Hmm, I thought that Linux was extremely reluctant to break userland stuff?
22:38:12fowlunicast messages work :> https://gist.github.com/fowlmouth/4ed290e7c6b1f9e47a88
22:43:04Varriount|MobileJehan_: http://lwn.net/SubscriberLink/597632/6f444e69b9931d1a/
22:43:24*brson quit (Ping timeout: 245 seconds)
22:43:47Jehan_Varriount|Mobile: Oh, I believe you, I'm just surprised.
22:52:19dom96good night
22:53:50*brson joined #nimrod
22:59:12*Jehan_ quit (Quit: Leaving)
23:02:20*enurlyx quit (Quit: Nettalk6 - www.ntalk.de)
23:16:26*darkf joined #nimrod
23:18:39Araq"Starting with E 0.22, each release version has received a nickname. This usually is the name of a tea (or the corresponding tea garden) which I drank a lot while programming the version." XD
23:21:56Varriount|MobileWhat software is that?
23:22:41*Varriount|Mobile quit (Quit: AndroIRC - Android IRC Client ( http://www.androirc.com ))
23:22:54Araq"E"
23:23:05Araqsome tool for proving things
23:23:10*Varriount|Mobile joined #nimrod
23:23:47Varriount|MobileAraq: You mean, like formal verification?
23:24:02Araqyeah
23:25:12JohzSide note, if you search "E 0.22 tea", it actually turns up as the fifth link, below four links to shops selling tea equipment...
23:26:41Araqhi Johz welcome
23:26:53Araqbut I need to sleep now, good night
23:27:20JohzHi, bye? :P
23:28:57Varriount|MobileJohz: Don't worry, a couple of us are still awake.
23:33:59*xenagi joined #nimrod
23:43:18*Skrylar joined #nimrod