<< 27-05-2015 >>

00:01:12vikatonis LLVM considered a programming language?
00:03:07def-llvm ir is an intermediate language: https://en.wikipedia.org/wiki/Intermediate_language
00:06:22*johnsoft quit (Ping timeout: 256 seconds)
00:06:42*johnsoft joined #nim
00:08:37vikatondef-, the compiled C from Nim looks pretty intermediate to me :/
00:09:25vikatonoh wait
00:09:35vikatonC is an intermediate language according to wikipedia
00:09:54reactormonk:D
00:10:07vikatonw0w
00:10:16vikatonlearn something new everyday :D
00:24:05*bassa quit (Read error: Connection reset by peer)
00:24:27*bassa joined #nim
00:28:40*CryptoToad quit (Quit: Leaving)
00:33:56*saml_ quit (Ping timeout: 246 seconds)
00:35:20*bassa quit (Read error: Connection reset by peer)
00:35:53*bassa joined #nim
00:37:16*mtj_ quit (Remote host closed the connection)
00:40:40*mtj_ joined #nim
00:41:09*mtj_ quit (Remote host closed the connection)
00:41:20*bjz joined #nim
00:41:31*mtj_ joined #nim
00:44:05*vendethiel joined #nim
00:59:46dhasenanI wish I understood the things that lead to the Nim C++ backend emitting TNimType records for wrapped types.
01:04:40*xificurC quit (Remote host closed the connection)
01:05:10*xificurC joined #nim
01:05:14*vendethiel quit (Ping timeout: 245 seconds)
01:06:16*kumul joined #nim
01:08:06Araqdhasenan: will tell you tomorrow.
01:08:10Araqgood night.
01:09:48dhasenano/
01:10:33*milosn quit (Ping timeout: 256 seconds)
01:11:20kumulhow do they manage to make such a dull dull game? #legendofzelda #allofthem
01:12:49*vendethiel joined #nim
01:17:27*strcmp1 quit (Quit: Leaving)
01:17:59*strcmp1 joined #nim
01:19:45*nande joined #nim
01:33:45*vendethiel quit (Ping timeout: 240 seconds)
01:37:49*Crocodick quit (Ping timeout: 246 seconds)
01:49:25reactormonkpigmej, how exactly do I get company to run? Doesn't seem to call my company-nim
01:52:33*ddl_smurf quit (Quit: ddl_smurf)
01:53:27*milosn joined #nim
01:55:30*dddddd quit (Ping timeout: 265 seconds)
02:00:16*jbomo quit (Ping timeout: 256 seconds)
02:06:46*jbomo joined #nim
02:07:23*darkf joined #nim
02:19:31*vendethiel joined #nim
02:32:45*pregressive joined #nim
02:41:24*PABLO joined #nim
02:41:36*PABLO left #nim (#nim)
02:43:02*iznogoodd joined #nim
02:46:09*BitPuffin|osx quit (Ping timeout: 240 seconds)
02:53:12*Demon_Fox quit (Quit: Leaving)
03:09:37*wb quit (Ping timeout: 264 seconds)
03:29:58*pregressive quit (Remote host closed the connection)
03:34:29*vendethiel quit (Ping timeout: 256 seconds)
03:43:29*Demon_Fox joined #nim
03:48:25*intra joined #nim
03:54:37*taesoo quit (Ping timeout: 264 seconds)
04:05:10Varriountvikaton: Writing a compiler backend that emits LLVM IR code would be challenging, but not impossible.
04:06:14fowlIts not too diff than c
04:06:17VarriountI had a look at the language specification page today, and I suspect that the most challenging aspect would be understanding the IR language sufficiently.
04:11:27Varriountfowl: http://qr.ae/7X7Eej
04:11:41VarriountSilly people will be silly.
04:12:52fowlObv troll
04:12:53ozraShut him with a benchmark..
04:13:33Varriount"Waah Nim doesn't have safety things like bounds checking" -> "Waah Nim's safety things make programs slow"
04:13:40Varriount-_-
04:14:08fowlIf its not a troll its someone with no manners
04:17:33reactormonkwow, that website is cancer compared to stackoverflow
04:18:12Varriountreactormonk: And yet, since people use it, we have to do our best to reply
04:22:32strcmp1haters gonna hate
04:24:45*johnsoft quit (Ping timeout: 244 seconds)
04:25:49*johnsoft joined #nim
04:42:18*Demon_Fox quit (Quit: Leaving)
04:46:15*Demon_Fox joined #nim
04:52:25*ozra quit (Ping timeout: 246 seconds)
04:52:47*johnsoft quit (Ping timeout: 276 seconds)
04:53:38*johnsoft joined #nim
04:58:11reactormonkVarriount, hmmm
04:58:51Varriountreactormonk: ?
04:59:28reactormonkVarriount, don't like it but I kinda see your argument
04:59:35Varriountreactormonk: For what?
04:59:48reactormonkVarriount, using quora
05:00:41Varriountreactormonk: Look at it like this - if *we* don't answer on there, someone else likely will.
05:02:01*johnsoft quit (Ping timeout: 250 seconds)
05:02:28*johnsoft joined #nim
05:13:12reactormonkand they'll bullshit around.
05:19:59TEttingeroutput LuaJIT source code, if they say it's slow blame Mike Pall
05:20:11TEttingerit's what I'm doing :P
05:26:06*ddl_smurf joined #nim
05:34:14avsejflaviu, how to install this options module? https://github.com/flaviut/nre/commit/9576bc087d20e8e5cacb9cd92c635d3f9efaf0a7
05:34:20*ddl_smurf quit (Quit: ddl_smurf)
05:34:26avsejnre 1.0.0 does not work without it
05:35:25*endragor joined #nim
05:35:58avsejoh, it is part of the language now :)
05:47:10*bjz quit (Read error: Connection reset by peer)
06:02:07*gokr_ joined #nim
06:02:30*pmbauer joined #nim
06:03:44*nande quit (Remote host closed the connection)
06:27:04*Matthias247 joined #nim
06:33:34*vikaton quit (Quit: Connection closed for inactivity)
06:37:45*gokr_ quit (Read error: Connection reset by peer)
06:51:09gokrVarriount: Fixing the Linux64 slave... sorry about that
06:51:39*Matthias247 quit (Read error: Connection reset by peer)
06:51:50*Andris_zbx joined #nim
06:51:51*no_name quit (Ping timeout: 258 seconds)
06:51:51*devzerp quit (Ping timeout: 258 seconds)
06:59:43*devzerp joined #nim
07:00:31*no_name joined #nim
07:03:39*jbomo quit ()
07:06:04*juturna quit (Quit: Page closed)
07:10:05*vendethiel joined #nim
07:10:12*endragor_ joined #nim
07:10:39*endragor_ quit (Read error: Connection reset by peer)
07:10:59*endragor_ joined #nim
07:12:10*endrago__ joined #nim
07:12:30*endragor_ quit (Read error: Connection reset by peer)
07:13:47*endragor quit (Ping timeout: 256 seconds)
07:16:55gokrhttps://news.ycombinator.com/item?id=9599500
07:21:10gokrVarriount: Linux64 builder restarted.
07:24:09*endrago__ quit (Remote host closed the connection)
07:24:48*endragor joined #nim
07:33:38*endragor quit (Remote host closed the connection)
07:36:22*vendethiel quit (Ping timeout: 252 seconds)
07:44:55*kumul quit (Read error: Connection reset by peer)
07:58:40*BlaXpirit joined #nim
07:59:52*ddl_smurf joined #nim
08:04:32avsejwhat is the best http client for nim at the moment?
08:06:26dtscodehttpclient
08:07:15*vendethiel joined #nim
08:18:28avsejdtscode, but it does not keep connection socket open, right?
08:18:40*dtscode shrugs
08:19:30avsejand there no alternative?
08:19:38*dtscode shrugs
08:19:46avsejokay, thanks
08:20:16Araqavsej: there is also a wrapper for curl?
08:22:58avsejessentially for my needs will be enough http parser + tcp socket, because the server software is known
08:25:33*endragor joined #nim
08:28:37*vendethiel quit (Ping timeout: 264 seconds)
08:30:06*endragor_ joined #nim
08:30:20*endragor quit (Ping timeout: 272 seconds)
08:33:33avsejis there caas integration for emacs? nim-mode very dumb. it cannot even indent properly :(
08:34:20Araqpretty sure there is caas integration but caas doesn't tell the editor when to indent
08:44:15*Trustable joined #nim
08:48:36*Ven joined #nim
09:05:56*ingsoc joined #nim
09:14:48*IronY is now known as sadasd
09:15:09*sadasd is now known as IronY
09:15:46*ReverTro joined #nim
09:16:07*IronY is now known as sdasdasd
09:16:55*ekarlso quit (Quit: WeeChat 0.4.3)
09:18:10*sdasdasd is now known as IronYU
09:18:12*IronYU is now known as IronY
09:20:39*Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
09:20:40*IronY is now known as sadasd
09:20:47*sadasd is now known as IronY
09:21:38*ReverTro quit (Quit: Page closed)
09:23:42*vendethiel joined #nim
10:07:02*superfunc joined #nim
10:10:29*Jehan_ joined #nim
10:13:16*vendethiel quit (Ping timeout: 256 seconds)
10:13:42*coffeepot joined #nim
10:13:56*coffeepot quit (Client Quit)
10:14:15*coffepot joined #nim
10:30:34*vendethiel joined #nim
10:35:35avsejis there something similar to reactivex in nim?
10:37:44strcmp1i dont know what that is, is it similar to asyncdispatch?
10:37:46*xcombelle joined #nim
10:38:50avsejyes, but reactivex is also somewhat standartized API which allows to work with data flows
10:39:39avsejthere is even visualization for its operators http://rxmarbles.com/
10:40:50*superfunc quit (Ping timeout: 246 seconds)
10:42:50*banister quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
10:51:32*sepisoad joined #nim
10:53:35*Demon_Fox quit (Quit: Leaving)
10:54:09*vendethiel quit (Ping timeout: 240 seconds)
10:55:01*banister joined #nim
10:55:30AraqJehan_: https://gist.github.com/Araq/b40932a30b9dbb824364 :-)
10:56:07*vikaton joined #nim
10:56:09TEttingeravsej: what the hell is debounce?
10:56:26TEttingerthat marble thing makes very little sense, nor does the name
10:57:48avsejTEttinger, debounce can be used for throttling. http://reactivex.io/documentation/operators/debounce.html
10:58:39Jehan_Araq: I'm just scared about what pinnedSpawn may be. :)
10:58:44vikatonVarriount: I replied
10:58:57Jehan_But in principle it looks very Erlang-y.
10:59:39Araqit's a ~10 line hack in the compiler
11:00:15Araqbut it completely sucks for lots of reasons
11:00:55Jehan_Heh. :)
11:01:01Araqhowever it produces "the" for "readme.txt" which seems the correct result
11:05:56*IronY is now known as davesdsd
11:06:12*banister quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
11:07:25*davesdsd is now known as IronY
11:08:49AraqJehan_: one problem (among many) is that this solution doesn't mark the spawning proc as 'locks: x'
11:09:16Araqso we have no deadlock detection
11:09:37Jehan_Araq: Yeah. That's why I'd basically instrument proc calls to do the necessary bookkeeping.
11:10:33Araqbut that's rather easy to fix, pinnedSpawn could get a bit more compiler magic
11:10:44Araqto produce a 'locks' effect
11:11:12*IronY is now known as sdsdsadasdasdweo
11:11:13*bjz joined #nim
11:11:17*sdsdsadasdasdweo is now known as IronY
11:11:33Araqwe could even produce 'locks: x' where x is the thread ID if known at compile-time and 'locks: unknown' otherwise
11:12:17Araqor make that a separate parameter for pinnedSpawn
11:12:18Jehan_I'm just not sure what the point is; it doesn't look like a solution that's viable in the long term and it seems to lack flexibility.
11:12:56*superfunc joined #nim
11:13:28*Ven joined #nim
11:14:45*Kingsquee quit (Quit: Konversation terminated!)
11:15:20AraqI'm not sure either, I'm playing.
11:20:05*Ven quit (Read error: Connection reset by peer)
11:21:09coffepotcan I get the name of a typeDesc easily?
11:22:19*mtj_ quit (Remote host closed the connection)
11:22:35Araqcoffepot: typetraits.name
11:22:51coffepotAraq tyvm :)
11:23:20*mtj_ joined #nim
11:42:20*NimBot joined #nim
11:48:42vikatonpong dom96
11:48:59dom96pong? Did I ping you?
11:49:30vikatonoh whoops, typo
11:49:36*kokozedman joined #nim
11:49:50vikatondom96, how can I get user input parameters in the irc module?
11:50:08dom96what do you mean?
11:50:12kokozedmanhey guys, in the slots/signal for Nim library (https://github.com/fowlmouth/signals.nim/blob/master/src/signals.nim), there is a "generic" keyword...
11:50:13*Jehan_ quit (Quit: Leaving)
11:50:22kokozedmancan anyone tell me where can I find-out more about it?
11:50:29vikatondom96, like !say [param]
11:50:37vikatonand the bot sends back [param]
11:50:37kokozedmancan't any use of that keyword in the manual
11:51:44kokozedmanit uses something like: HasSlots* = generic X
11:52:30Araqkokozedman: it's deprecated. instead look for 'concept'
11:53:02dom96vikaton: You have to parse that yourself.
11:53:06kokozedmanAraq, ok, thanks
11:53:19vikatondom96, yeah I know, but I'm not sure how
11:53:33vikatonRuby uses regex, should I do something similar?
11:53:49dom96nah
11:53:50dom96use http://nim-lang.org/docs/parseutils.html
11:54:04dom96var i = skipUntil(msg, Whitespace)
11:54:20dom96msg[i .. ^1]
11:54:20coffepotencountered my first name conversion problem, had a type SQLColumnType and it kept saying it was ambiguous. Turns out there was an SQL_COLUMN_TYPE in odbcsql - ofc doing find didn't find it :) We have a nimgrep thing don't we?
11:54:34coffepot* convention not conversion
11:54:38Araqyep
11:55:01AraqI use it all the time, works much better than grep anyway. ymmv.
11:55:12coffepotwhere do I get it, is it a nimble package?
11:55:32Araqyou already have it in nim/bin
11:55:50coffepotah cool, ta :) also googled and got help too :3
11:58:53*gokr_ quit (Remote host closed the connection)
11:59:06*gokr_ joined #nim
12:01:05*wb_ joined #nim
12:02:05*banister joined #nim
12:05:45vikatonError: tabulators are not allowed
12:05:50vikatonwhat exactly does that mean
12:06:11def-vikaton: use spaces for indentation, not tabs
12:08:43vikatono
12:10:01*BitR quit (Ping timeout: 255 seconds)
12:11:48vikatondef-, will Nim accept tab anytime soon?
12:13:10*banister quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
12:15:13vikatonno wait
12:17:14def-vikaton: i don't think so, but if you really need them you could do this: https://www.reddit.com/r/programming/comments/34ep78/nim_programming_language_0110_released/cqugfl3
12:18:22vikatondef-, are those replacements like templates?
12:19:38dom96vikaton: just use spaces :)
12:26:37def-vikaton: you can read about them here: http://nim-lang.org/docs/filters.html
12:33:05*superfunc joined #nim
12:34:33*wb_ quit (Ping timeout: 240 seconds)
12:37:08vikatonnice
12:39:22*OnO joined #nim
12:42:37OnOAraq: hi, I see you closed my ticket about ((pure)) :> Are considering some more general optimization techniques to Nim?
12:43:12OnOI can see Nim has dead code elimination, but I think we would need to have dead store elimination in fact that would help with my particular case and maybe the others
12:43:41OnOalso I wish to know what is you general opinion of which optimizations should be taken by Nim and which should be taken by C compiler
12:44:39OnOsince C compilers have very mature optimizers, and don't see the reason Nim shouldn't provide some hints for them, eg. "const" or "pure" functions attributes
12:44:39Araqwell I dunno about "general opinion" but stuff that's affected by Nim's effect system should all be done in the Nim compiler
12:44:55OnOlet's ditch effect system for the moment
12:45:08OnObut think of dead store elimination
12:45:13OnOC compilers can do that
12:45:15OnOalready
12:45:15AraqI don't like fragile mappings from .noSideEffect to pure or const
12:45:33OnOno no, me neither, I don't want to convince you about that
12:45:57Araqand last time I checked the C compilers they were all very bad at effect inference
12:45:59OnOI just want to think if we should introduce some new pragmas that are directly mapped to C compiler const & pure
12:46:30Araqthere are lots of things Nim can do that C cannot
12:46:36Araqor LLVM for that matter.
12:46:54Araqfor instance detecting that a seq doesn't escape and can be put onto the stack
12:47:55OnOI am absolutely aware of that, but this is very high level optimization, the Q is whether you want also introduce some really low level stuff, like dead store elimination
12:48:12OnObut this isn't really trivial I guess
12:48:34Araqescape analysis give you dead store elimination for free, I think.
12:49:52OnOis it? does nim have some concept of unused variables? or variables wrote once but never read?
12:50:03OnOif yes that would be cool
12:50:03*gokr_ quit (Read error: Connection reset by peer)
12:50:03*Jehan_ joined #nim
12:51:36OnOyou know the whole thing is to make compiler to solve some stuff for you, not to solve it manually eg
12:52:11OnOstupid example log(x) * log(x) -> call log once since it is constant
12:52:54Araqa variable that has not sfUsed set is a dead store
12:53:46OnOis variable let x = getSomeValue() <- where getSomeValue has no sideeffect considered unused?
12:54:59*OnO has phone call, sorrry
13:08:22*superfunc quit (Ping timeout: 256 seconds)
13:20:17*superfunc joined #nim
13:29:22*gokr_ joined #nim
13:33:04*taesoo joined #nim
13:36:52OnOhere's my problem https://gist.github.com/nanoant/32e51813b2e25d475721
13:37:19OnOI expect one "got 1" got two, even with dead code elimination on
13:37:42BlaXpiritthat's nuts
13:38:00BlaXpiriti don't know how you can possibly expect that
13:39:45*BitPuffin joined #nim
13:39:55AraqCSE is not hard to do in the compiler
13:41:10*superfunc quit (Ping timeout: 272 seconds)
13:41:35*BlaXpirit-UA joined #nim
13:41:45OnOBlaXpirit: because GCC and Clang, will optimize that
13:42:28*ozra joined #nim
13:44:28ozraVarriount: If you're around. I've made PR fixing the syntax highlighter Uni was missing all through. If you find it ok, I'd be happy if you could do required magic to update github's reference to it?
13:44:30OnOI am just trying convince Araq that we need to have this opt in Nim, eg. ((pure)) for RNG, and ((const)) for transcendental
13:44:30*BlaXpirit quit (Ping timeout: 252 seconds)
13:50:14*gokr_ quit (Read error: Connection reset by peer)
13:51:21OnOas a reference Rust had this discussion and the RFC was accepted: https://github.com/rust-lang/rfcs/blob/master/text/0911-const-fn.md
13:55:27AraqOnO: it's high time we get a real optimizer in the Nim compiler instead of hacking ever more and more pragmas that map 1 to 1 to GCC attributes cause we don't know better.
13:56:45OnOAraq: I do agree, if Nim is about to work using some other backends then we should rely on single backend
13:57:49OnOso going back to my example ... let x = variable should be eliminated, but not the call
13:58:11OnOwrong... it is eliminated, but call isn't
13:58:23OnOmy point is the call should be eliminated
13:58:35OnOalso many functions should be a subject for contact propagations
13:58:40OnOconstant propagation
14:00:44*Jehan_ quit (Read error: Connection reset by peer)
14:00:47OnOso I'd love to see Nim extension that "func" to be actually stronger version of .noSideEffect. ((pure)) counterpart, where no writes anywhere are accepted
14:01:15OnOand extension of "const" keyword for constant functions...
14:01:34OnOprobably we would need also related pragmas for external API such as math.h
14:02:09*Jehan_ joined #nim
14:02:10OnOthen Nim when removing dead stores can also remove calls to all "func" (aka ((pure)))
14:02:32OnOand when doing constant folding it can take use of ((const)) functions, such as all math functions
14:02:32Araqstrong "func" is coming. cannot promise it for version 1, but 'spawn' pretty much dictates what 'func' should look like
14:03:58OnOthat's why I'd go for C compiler fallback for the moment until Nim gets own optimizer ;)
14:04:53OnOI know you don't like this, but it would be just temporary
14:06:50OnOthe problem with using Nim for general calculation & math is following... modern C++ cmath does not use math.h, but in fact they directly map to __builtin_func
14:07:29OnOalso most of math functions are marked with C++ constexpr
14:08:20OnOso basically going trough C++ compiler gives you real benefit in terms of constant propagation
14:08:56Araqcompiler/vmops.nim
14:09:21Araqwe can evaluate 'ln' at compiletime too
14:09:47*xet7 joined #nim
14:17:20*yglukhov joined #nim
14:19:37*kumul joined #nim
14:21:48avsejflaviu, you didn't update nimble file https://github.com/flaviut/nre/blob/master/nre.nimble#L11
14:24:45*banister joined #nim
14:29:34OnOoops... TSymFlag has already 32 flags :(
14:33:18AraqOnO: you can use .codegenDecl already to annotate stuff with ((pure)) and ((const))
14:36:54OnOgood point, nice to know !
14:37:02*pregressive joined #nim
14:38:47vikatonsomeone just posted this: http://www.reddit.com/r/programming/comments/37gnxw/nim_on_llvm_vs_c/
14:38:55*BitR joined #nim
14:39:05vikatondamn
14:39:13vikaton165
14:41:21*synthmeat quit (Quit: WeeChat 1.3-dev)
14:43:17*Jehan_ quit (Read error: Connection reset by peer)
14:43:20*synthmeat joined #nim
14:46:49*Jehan_ joined #nim
14:46:49*Jehan_ quit (Client Quit)
14:47:06*Jehan_ joined #nim
14:47:50*milosn joined #nim
14:48:22*CrossCode joined #nim
14:49:50*TEttinger quit (Ping timeout: 264 seconds)
14:51:02dom96Seems people really want to talk about Nim http://www.reddit.com/r/programming/comments/37grbp/we_just_switched_from_rust_to_nim/
14:51:38*Jehan_ quit (Ping timeout: 264 seconds)
14:52:50*bluenote joined #nim
14:54:40bluenotedom96: I'm just trying to learn more about nimble
14:54:54dom96hey bluenote
14:55:02*Jehan_ joined #nim
14:55:27bluenoteone question, is this supposed to work: Requires: "nim >= 0.10.3, nim-stringinterpolation#e0746e3"
14:55:29Jehan_dom96: I'm honestly not sure if this post is good or bad for Nim. The ycombinator one, I mean.
14:55:48bluenotewhere e0746e3 is a commit hash?
14:55:58bluenote(I tried the full hash as well)
14:56:23dom96Jehan_: I would say it's good.
14:56:40dom96That said, it did make it to r/programmingcirclejerk too
14:57:11dom96bluenote: You need a space before the # IIRC
14:57:57dom96oh no wait, you don't.
14:57:57bluenotewith a space it tries to parse a range (FAILURE: Unable to parse dependency version range: Unexpected char in version range: #)
14:58:01dom96That should work
14:58:06dom96What happens without a space?
14:58:16bluenotewithout the space I get: fatal: Couldn't find remote ref e0746e3e184185e2cf8309b14b1ca207f31f1d41
14:58:39dtscodeUmmmm... Nim does have corporate backing...
14:58:56dom96bluenote: Does `git checkout e0746e3` work in your git repo?
15:00:05bluenoteyes
15:00:50bluenotelet's see if I can do it manually in the tmp_... dir
15:03:34bluenotestrange: I have a folder /tmp/nimble_14278 which contains a subfolder nim-stringinterpolation_<HASH>
15:03:41bluenotebut this folder is empty
15:04:31*yglukhov quit (Read error: Connection reset by peer)
15:05:06*yglukhov joined #nim
15:05:32bluenoteor rather: It has a .git but it looks like a fresh "git init" with a remote set
15:06:41dom96This is what Nimble does: https://github.com/nim-lang/nimble/blob/master/src/nimblepkg/download.nim#L57
15:06:43bluenoteand I can in fact run "git pull origin master" successfully in this tmp subfolder
15:06:45dom96Perhaps it's yet again incorrect
15:08:22bluenotethanks, I'll just try step by step -- looks like the first two steps are fine
15:08:36*taesoo quit (Remote host closed the connection)
15:10:57*Jehan_ quit (Read error: Connection reset by peer)
15:11:04*JehanII joined #nim
15:12:59*JehanII is now known as Jehan_
15:14:01bluenoteI ran the steps manually assuming the arguments were branch="" and tip=true, and all seems to work manually
15:16:23dom96try branch="e0746e3e"
15:19:23*CrossCode quit (Quit: Page closed)
15:20:54*BlaXpirit-UA quit (Quit: Quit Konversation)
15:21:23*Tennis joined #nim
15:21:23*Tennis quit (Changing host)
15:21:23*Tennis joined #nim
15:21:31bluenoteyep, emulating the steps with branch="e0746e3e" will lead to the call "git fetch origin --depth 1 e0746e3e"
15:21:38*pregressive quit (Remote host closed the connection)
15:21:42*yglukhov quit (Ping timeout: 265 seconds)
15:21:42bluenoteand this produces "fatal: Couldn't find remote ref e0746e3e"
15:22:39*BlaXpirit joined #nim
15:23:33*endragor quit (Ping timeout: 265 seconds)
15:24:44bluenoteso maybe it syntax for "Require" should contain a branch and an (optional) hash?
15:26:10*superfunc joined #nim
15:26:44*darkf quit (Quit: Leaving)
15:27:29bluenotebtw: Requires: "nim-stringinterpolation#master" leads to "fatal: A branch named 'master' already exists.", failing probably in the checkout step
15:29:56*gokr quit (Ping timeout: 246 seconds)
15:30:30*superfunc quit (Ping timeout: 258 seconds)
15:31:52*bluenote quit (Ping timeout: 246 seconds)
15:33:28*gokr_ joined #nim
15:34:29*Andris_zbx left #nim ("Ex-Chat")
16:00:01*pregressive joined #nim
16:01:51*gokr joined #nim
16:02:11*bluenote joined #nim
16:06:28*superfunc joined #nim
16:07:11dom96bluenote: Report an issue on github for it I guess.
16:08:57bluenoteok
16:12:29*vendethiel joined #nim
16:13:00vikatonsomeone needs to fix the email box in the Nim forum
16:13:08vikatonit wont accept [email protected]
16:14:03*coffepot quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client)
16:14:13dom96vikaton: Working on that as we speak.
16:14:30vikatonoh lol
16:22:10vikatonI always see pcwalton say something about Nim and unsafety in HN threads like those
16:23:17*brson joined #nim
16:24:35*sepisoad quit (Ping timeout: 256 seconds)
16:25:43vikatonhey brson
16:27:16brsonvikaton: hey hey!
16:27:35brsonhow's nim today?
16:28:21vikatonSeems pretty good, but I'm new to Nim so I can't really say
16:33:02*brson quit (Read error: Connection timed out)
16:33:18*brson joined #nim
16:36:37*vendethiel quit (Ping timeout: 265 seconds)
16:40:04vikatonhow can I check that a string starts with "foo"
16:44:29*wb_ joined #nim
16:45:03Jehan_import strutils; echo str.startsWith("foo")
16:50:22*vendethiel joined #nim
16:54:26vikatono
16:55:37*gokr quit (Quit: Leaving.)
17:05:55*dom96 quit (Changing host)
17:05:55*dom96 joined #nim
17:12:00*superfunc quit (Ping timeout: 244 seconds)
17:14:53*Arturo joined #nim
17:15:31*Arturo quit (Client Quit)
17:15:48*yglukhov_ joined #nim
17:18:48*Arturo joined #nim
17:19:02*Arturo quit (Read error: Connection reset by peer)
17:20:28OnOcan you please explain use of callsite() ?
17:22:38*Arrrrr joined #nim
17:23:54*boopisaway is now known as boop
17:24:57*BitPuffin quit (Ping timeout: 265 seconds)
17:24:58*gokr_ quit (Read error: Connection reset by peer)
17:26:18*gokr_ joined #nim
17:26:23*gokr_ quit (Client Quit)
17:26:50*gokr_ joined #nim
17:44:02*filcuc joined #nim
17:56:45Jehan_OnO: You mean?
17:57:09*Matthias247 joined #nim
17:57:33Jehan_If you have a macro foo(x: untyped) and call foo(0), for example, it'll return Call(Ident("foo"), IntLit(0))
17:59:30*brson quit (Quit: leaving)
17:59:42*filcuc quit (Ping timeout: 252 seconds)
18:00:10OnObut what's the benefit of it? I can guess that callsite is Call(Ident("foo"), x) for any x passed
18:00:15OnOor I am missing sthing
18:00:47Jehan_OnO: llineinfo() for error reporting, for example.
18:04:18OnOhmm... I wonder if it was possible to get whole statement macro was invoked in
18:04:40Jehan_I don't think that's possible right now, and I'd like that, too. :)
18:04:44OnOeg. whole: for x in macro: block, not just call(ident(x)...)
18:05:15OnOyeah, I can think of some new PR ;P
18:06:53Araqgoing up in the AST produces an insane language
18:07:06Araqso it's restricted to callsite()
18:07:17Araqwhich goes up 1 level, not more.
18:12:12reactormonkozra, close #2820?
18:17:03ozraYes, I definitely think so. I made an issue in Nimble for "require semver", and the other part of it belongs to #2019. The rest of the suggestions I made are moot.
18:17:46ozra(where moot = rubbish ;)
18:17:56reactormonkozra, then close it.
18:18:47ozraAha, I can do that? Hehe. On it.
18:19:03reactormonkyeah, the creator should be able to close
18:20:27ozraI've been working too much within corporate walls, so haven't used github too much yet. Done.
18:22:24*davidhq joined #nim
18:25:12*jubalh joined #nim
18:31:39*Jesin quit (Quit: Leaving)
18:33:01*kumul quit (Ping timeout: 265 seconds)
18:34:27*Jesin joined #nim
18:37:38*kumul joined #nim
18:45:01*fizzbooze joined #nim
18:46:51*shodan45 joined #nim
18:56:31*superfunc joined #nim
19:00:56*superfunc quit (Ping timeout: 252 seconds)
19:06:43*strcmp1 quit (Ping timeout: 255 seconds)
19:10:33*davidhq quit (Quit: Textual IRC Client: www.textualapp.com)
19:10:53*strcmp joined #nim
19:11:09*strcmp is now known as strcmp1
19:11:27*strcmp1 quit (Client Quit)
19:11:49*strcmp1 joined #nim
19:24:30*jubalh quit (Quit: Leaving)
19:24:54*Arrrrr quit (Quit: WeeChat 1.2)
19:25:54*vbtt_ joined #nim
19:27:26*ChrisMAN quit (Remote host closed the connection)
19:37:05avsejis it possible specify dependecies for task in nake?
19:38:25*ChrisMAN joined #nim
19:41:21avsejfound runTask()
19:44:34*filcuc joined #nim
19:53:02*fizzbooze quit (Ping timeout: 276 seconds)
20:03:37*xificurC quit (Remote host closed the connection)
20:06:25*kokozedman quit (Ping timeout: 264 seconds)
20:08:01*xcombelle quit (Remote host closed the connection)
20:08:46*xificurC joined #nim
20:12:25*gokr_ quit (Quit: IRC for Sailfish 0.9)
20:12:43*gokr_ joined #nim
20:18:34*jbomo joined #nim
20:19:54*banister quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
20:24:01*kokozedman joined #nim
20:33:51*mal`` quit (Ping timeout: 248 seconds)
20:35:09*mal`` joined #nim
20:37:43avsejare there examples of clients written using asyncnet?
20:38:15dtscodeclients for what
20:38:15*gokr_ quit (Read error: Connection reset by peer)
20:39:15avsejin general
20:39:28avsejfor this chat server for example http://nim-lang.org/docs/asyncnet.html#examples-chat-server
20:39:38dtscodeThere is the IRC module and the httpclient module
20:39:53avsejand it is using asyncnet?
20:39:56dtscodeYep
20:40:07dtscodeI can't think of anything else off the top of my head. but there might be some other stuff on the stdlib page
20:40:16*banister joined #nim
20:41:28avsejdtscode, i think irc module will be enought for now. thank you
20:41:45dtscodenp
20:42:26*kokozedman quit (Ping timeout: 276 seconds)
20:46:57*dtscode quit (Ping timeout: 240 seconds)
20:51:44*TEttinger joined #nim
20:55:08*gokr joined #nim
21:06:06*filwit joined #nim
21:06:07*Gonzih quit (Read error: Connection reset by peer)
21:06:23*Gonzih joined #nim
21:07:30vikatonsome people like Nim too much that it may hurt Nim's image
21:09:11vbtt_wat?
21:09:40OnOcan I humbly ask WTF is this? https://github.com/Araq/Nim/pull/2807 pull request, reverting changes previously accepted, no explanation given why reverting
21:10:09AraqOnO: I told him to do it.
21:10:29Araqwe don't like git submodules and Jehan_ gave the reasons in some bug report
21:10:48OnOokay, but wouldn't it be nicer to at least give some word of explanation or the reference
21:10:54OnOto the bug report you mentioning
21:10:56Araqof course
21:11:05OnOI mean in the commit itself
21:11:23Araqyeah i agree
21:11:33*Mat4 joined #nim
21:11:56vikatonvbtt_ some people may like Nim too much that they start bashing on other languages in public threads, like Rust
21:12:58OnOAraq: okay, so what was the reason again ;) ?
21:14:15filwitfowl: i enjoyed reading you Runtime Interfaces code
21:14:37Araqoh hi filwit
21:14:43filwithi
21:14:49Araqchannel has too many users
21:14:55filwitoh damn
21:15:10filwitmost i've seen so far
21:15:18OnOkick'em, I am first to go, asking bad quesstions, hehe
21:15:20strcmp1yeah Araq, stop developing such a popular language
21:16:53*Matthias247 quit (Read error: Connection reset by peer)
21:17:07OnOokay whatever, if you don't like submodules you need to ensure latest csources compile any version back at least always latest stable
21:17:37iznogooddsubmodules are the devil
21:17:47filwitfowl: your `drawableVT` proc in the implementation section is similar to what I've been playing around with in Nim recently.. I'm not sure what other languages are capable to doing that, but I'm glad someone is illustrating it's power with useful code.
21:18:09OnOye ye.. let's get back to dark ages, everything we don't know is evil
21:18:09boopusing the $project.nim.cfg stuff, is there a way to only use certain flags on certain OSes? (windows)
21:18:27filwitgenerics + {.global.} + static-overloading = awesomeness for meta-programming
21:18:30iznogooddi know them, but 99% of the time they are not good to use
21:18:39Araqboop: @if windows: --fooo @end
21:18:46boopah! thanks
21:19:21OnOAraq: changing subject, why semStmtList calls semExpr for each stmt in the list not semStmt ?
21:19:25AraqOnO: I don't think that's really important given that the releases ship with the generated C code
21:20:51OnOyeah, unless you want to build some older version to check for regressions for example, then you need to figure out proper csource for the build, because clone gets you latest (that may be broken)
21:22:24*intra quit (Ping timeout: 258 seconds)
21:23:28AraqOnO: semStmt is pretty much the same as semExpr due to the expr/stmt unification
21:24:08OnOsemStmt->semExprNoType->semExpr+with some extra check
21:25:20vikaton166 is the most I've seen
21:27:02*filcuc quit (Ping timeout: 264 seconds)
21:28:18*shodan45_ joined #nim
21:28:33*Demon_Fox joined #nim
21:28:41AraqOnO: then it's a good question
21:29:50dom96Somebody wanna implement user count tracking in NimBot?
21:30:11*shodan45_ quit (Client Quit)
21:30:35*shodan45_ joined #nim
21:30:43*shodan45 quit (Ping timeout: 255 seconds)
21:30:44*shodan45_ quit (Client Quit)
21:30:45OnOAraq: okay, I know... it is for last expr is a proc result
21:34:30*shodan45 joined #nim
21:35:18vikatonThe ignorance... http://www.quora.com/Is-Nim-really-that-unsafe/answer/Adam-Helps/comment/10762060?__snids__=1177736503&__nsrc__=2#comment10797063
21:37:29dom96Quora is really not the place to be arguing about this...
21:37:49vikatondom96: which is why I keep telling him to discuss this elsewhere
21:37:56dom96vikaton: good
21:39:38filwitglad you responded the way you did, vikaton. Someone needed to chime in on that.
21:39:49*dddddd quit (Ping timeout: 245 seconds)
21:40:09*vendethiel quit (Ping timeout: 265 seconds)
21:41:07*ingsoc quit (Ping timeout: 265 seconds)
21:41:54vikatonI try to be as rational as possible with ignorant people
21:42:41strcmp1as a language becomes popular, i think crap like this becomes more and more common. sad and frustrating.
21:43:09vikatontbh I don't know why Rust and Nim have to be so hostile to each other
21:43:19vikatonand it comes from BOTH sides
21:43:47vikatondie-hard Rusteceans about Nim's "terrible unsafety"
21:43:48filwitwell, even though he's being abrasive and started with an untrue statement (eg, Nim is "unsafe").. he does also have a point: Eg, Rust's nil-checks are "free" and Nim's aren't (which is why they're disabled by default for release builds.. which is great for many domains like games/simulations/etc).
21:44:01vikatonand die-hard Nim bashing Rust's syntax and speed
21:44:08*zahary quit (Read error: Connection reset by peer)
21:44:25*zahary joined #nim
21:45:08filwitbut Rust's non-null/Option<> design is not entirely as "free" as Nim's when it comes to mental overhead, IMO
21:46:19vikatonRust's philosophy is really cool, but It's a PITA to develop in imo
21:46:26filwitso there's a trade off.. and the most ideal solution depends on your project
21:46:55vikaton+ Nim has pretty amazing features and clean syntax
21:47:15*vendethiel joined #nim
21:47:18filwityeah
21:48:06vikatonNim is now starting to gain traction, so the best thing we needs is just facts right now
21:48:45gokrBoth are cool, I get nausea whenever I look at Rust - but that's fine, I appreciate any new language :) End of story. And oh, we should get that FAQ done - and just point at it.
21:49:04vikaton^ +1000
21:49:16vikatonAraq, anyway we can get that together as a community?
21:49:17filwitgokr: yeah a FAQ for these things is a great idea
21:49:39Mat4I think there isn't any advantage to take care of comparisons to languages like Rust
21:50:46vikatonMat4, both of us dont want Nim vs Rust comparisons
21:50:50Araqfilwit: the github wiki has a FAQ for anybody to improve
21:51:00Araqer vikaton
21:51:06vikatonbut people persist to compare them
21:51:11dom96https://github.com/Araq/Nim/wiki/Unofficial-FAQ
21:51:15vikatonand if Nim seems like it was favorable
21:51:20dom96It's fine to compare them.
21:51:25vikatonRust respond to "fix" the author
21:51:25gokrAraq: We would need to compile a few of these questions - and also link that FAQ more properly from the homepage.
21:51:52dom96They should be compared, but in a civilised manner.
21:52:03vikatondom96, very hard to do now :/
21:52:28vikatonOk, who is up to debunk the "Nim is terribly unsafe" myth in the FAQ? :P
21:52:56dom96I think the "Unofficial FAQ" should be merged with the website.
21:53:20dom96We need something which updates the website for us when it changes in the repo.
21:53:36vikaton^
21:54:00*gsingh93 joined #nim
21:54:19filwithow much time will that actually save you though?
21:54:24filwitdoesn't sound like a good trade
21:54:29*ingsoc joined #nim
21:54:42dom96generating the website is a PITA
21:54:50dom96the website should at the very least be separated from the main repo
21:54:51flaviufilwit: It'd be very easy to implement.
21:54:52filwitkoch website?
21:55:38filwitflaviu: yeah i guess so
21:56:07flaviuOh, filwit! I redesigned nim-by-example! https://nim-by-example.github.io/
21:56:19dom96filwit: That will generate all the docs, and likely fail on Windows.
21:56:50dom96flaviu: I really wish it would use more of my screen
21:57:01dom96Also, bullet points are too close to the ToC
21:57:10filwitflaviu: looks good.. though I don't see much difference. Also (sorry to crit), the code width is still pretty narrow
21:57:36dom96(Thank you for working on it though, nice job as always, just trying to give you some constructive feedback.)
21:57:56filwitdom96: er.. i meant `koch web` (which avoids docs... and if it fails on Windows isn't that a bug?)
21:58:29dom96filwit: koch web generates docs too
21:58:44dom96filwit: it is, but fixing it is always low priority.
21:58:45filwitreally? i thought there was one which avoided it...
21:59:15iznogooddmax-width: 720px; wtf
21:59:35iznogooddits like 1/10 of my screen
21:59:36filwitanyways, it doesn't take long either way.. isn't it just `koch website` -> ftp/upload new files -> done?
21:59:57filwitoh right.. breaks on windows..
21:59:59filwitnevermind
22:00:23flaviuiznogoodd: Can I see a screenshot? Real pixels != css pixels.
22:01:12iznogooddthis isnt 1990 lol
22:01:19filwitflaviu: what resolution is your monitor?
22:01:25dom96You should use a %
22:01:29flaviufilwit: 1920x1080
22:02:04dom96filwit: That's already too much work
22:03:24Araqfilwit: dom96 is not up to date with how the website is generated
22:03:38*yglukhov__ joined #nim
22:03:43Araqit's easy enough to add FAQ answers but I'm too busy
22:03:49iznogooddits easy to see, use CTRL+SHIFT+M in firefox
22:03:59iznogooddand input 1920x1080
22:04:03iznogooddyou will see what it looks like
22:04:11iznogooddnot even half the screen
22:04:14dom96Araq: Hence why this needs to be automatic.
22:04:24dom96If you're too busy to do it then it's not "easy enough".
22:04:50filwitiznogoodd: who are you talking too?
22:04:53Araq'koch website' is too hard for you?
22:05:05iznogooddflaviu:^
22:05:37filwitiznogoodd: he just said he had a 1080p resolution, so I don't understand your comments. He can obviously see his own design.
22:06:01flaviuiznogoodd: Yep, the goal is to keep it around 80 characters/line.
22:06:14iznogooddaka 1990
22:06:17*yglukhov_ quit (Ping timeout: 256 seconds)
22:06:17iznogooddok
22:06:19filwitflaviu: bad idea for a website, IMO
22:06:34iznogooddreally bad idea
22:06:40iznogooddnever ever use fixed width
22:06:51filwitflaviu: but of course, that's your prerogative
22:07:10flaviuWhat's the better alternative?
22:07:12Mat4use flex containers!
22:07:22iznogooddfor what? max-width: 100%..
22:07:27filwitno..
22:07:30filwitthat's bad too
22:07:43dom96Araq: how does 'koch web' work nowadays?
22:07:46filwitcode does not wrap with new lines
22:07:55flaviuhttps://imgur.com/0M58U5G looks terrible.
22:08:10filwitand choosing a set width is good... i just don't think keeping to the 80 colum is good for displaying code
22:08:19dom96flaviu: That actually looks nicer to me.
22:08:31dom96You just need the width to be higher.
22:08:37iznogooddat least keep it centered if you max width it
22:08:44flaviuiznogoodd: That's a good idea.
22:08:45dom96that too
22:08:49gokrfowl: What's the status of your interfaces stuff btw?
22:08:55gokrfowl: Just curious.
22:09:24filwitgokr: https://bitbucket.org/fowlsoft/interfaces/wiki/Home
22:09:30vikatonwho is down to add that submission to the FAQ qith me?
22:09:39gokrfilwit: I know, just ... curious about status
22:10:21filwitgokr: okay. He has a fully working code sample in the last page of that is why i posted it
22:10:31filwitgokr: also, he doesn't seem to be around right now
22:10:46dom96vikaton: Are you looking for help in writing it?
22:10:59gokrfilwit: I looked at it a few weeks back. I know he is busy playing with other stuff :)
22:11:11*vendethiel quit (Ping timeout: 250 seconds)
22:12:54filwitNim's meta-programming is really cool.. does anyone else know of a language where I can do: template eventList(T:typedesc, eventName:static[string]): var seq[T] = var result = newSeq[T](); result
22:12:55filwit?
22:13:51filwitthat overloads by parameter, so eventList(Foo, "update") and eventList(Foo, "render") generate two separate lists
22:14:04iznogooddflaviu: imo centering + moving the menu out of the text max-width would be ok
22:14:23flaviuiznogoodd: Sure, sounds good.
22:14:25Mat4filwit: yes
22:14:32filwitlisp?
22:14:35vikatondom96, I don't feel qualified to answer tbh
22:15:14dom96vikaton: I feel the same way.
22:15:20filwitMat4: the real question is not "does another language with that capability exist" but also "does it exist and compete with Nim's performance"
22:15:34vikatondom96, how so? you are like a Nim veteran
22:15:42Mat4yes, Forth
22:16:11filwitwait really? isn't that really old?
22:16:15filwitlemmy look it up
22:16:22dom96vikaton: I'm not up to date on the issue. Would need to read up on it but I'm trying to make everyone happy by adding password resets to the forum.
22:16:45vikatonok
22:16:50vikatonping Varriount
22:16:58Mat4filwit: Forth is one of the ealier languages beside Lisp
22:17:30filwitis Forth still popular in some industry?
22:17:42Mat4it is
22:17:56filwitif it has that sort of capability and it truly competes with Nim in performance, why isn't it more used?
22:18:21*pregressive quit (Remote host closed the connection)
22:18:37filwiter.. wait.. if this is it's syntax.. the answer is obvious
22:18:40iznogooddflaviu: imo it looks good with body {margin: auto} #sidebar { position: fixed; top: 0; left: 0}
22:19:08dom96filwit: Factor is the modern Forth.
22:19:18Mat4filwit: Forth is widly used. It's only you don't see many mentions because common usage is for military and space applications
22:19:22dom96It's not very popular though.
22:19:26iznogooddflaviu: (for desktop at least)
22:19:50filwitMat4, dom96: ah, okay. Thanks for the info.
22:19:50dom96But it's actually rather nice.
22:21:27*boop is now known as boopisaway
22:22:06fowlgokr: it needs a few safety checks
22:22:14gokrForth is strong (or was at least) close to the metal.
22:22:36gokrIts a cool language, it was the first language I saw where my own constructs were first class.
22:22:47gokrfowl: cool
22:23:50gokrIIRC OpenFirmware has a forth shell :). And postscript is basically a forth IIRC.
22:24:59filwitbbl
22:25:06dom96I wrote an interpreter for a Forth-like (well, more Factor-like) language in Nim a loooong time ago.
22:26:11dom96it was fun
22:26:12gokrBtw, Jones Forth was a cool one.
22:26:12Mat4Forth is extensible without any limitations. If someone want an ADA like type system, just load a library like StrongForth
22:26:25Mat4for example
22:26:32gokrMat4: I discovered Rebol the last few days btw
22:26:42Mat4Rebol has some Forth roots
22:26:50gokrAnd Red, the new open source implementation. Yes, I know :)
22:27:16gokrIt uses a similar "free form" syntax, but isn't stack based though.
22:27:31*OnO quit (Quit: My iMac has gone to sleep. ZZZzzz…)
22:27:43gokrMat4: http://www.red-lang.org
22:28:01gokrPretty slick stuff actually.
22:28:02Mat4very impressive
22:28:51gokrI found it quite funny btw, how Slava Pestov first wrote JEdit and then... said "bye bye" and created Factor instead.
22:29:54gokrMat4: Which forth are you using? I mean, of course you have "your own" ;) - but still?
22:30:06gokr(Forth is known for its balkanization)
22:30:09Mat4mainly retro
22:30:13gokrAh, cool
22:30:14dom96gokr: and then he got hired by Google and disappeared.
22:30:21gokrOh, really?
22:30:26dom96yep.
22:30:41gokrSeems to happen to a lot of talented guys.
22:31:06*vendethiel joined #nim
22:31:07*dtscode joined #nim
22:31:39gokrMat4: Red might be interesting to a Forth fella. It shares lots of similar strengths and philosophy, but sure is a bit friendlier on the eyes IMHO.
22:32:38gokr(Red and Rebol is ... like Lisp + Forth + Self kinda)
22:33:26gokrI remember when I downloaded and built Retro for the first time. I hit make (or whatever it was) and... I thought I did something wrong, because it didn't do anything.
22:33:40gokrThen I realized that sure, it had compiled Retro in like... 0.1 seconds or something.
22:33:45Mat4I think lisp was an influence to Rebol 8however the same is true for Forth)
22:33:49*superfunc joined #nim
22:34:23gokrYes, Rebol is homoiconic - so definitely Lispish. But syntax is free form "words" like Forth but also has blocks.
22:34:58gokrEvidently Carl (who created Rebol) also worked with Alan Kay and Dan Ingalls using Smalltalk for a while at Apple, so... a bit of Smalltalk too.
22:35:08gokrIts the Carl that also created Amiga OS :)
22:36:28*BlaXpirit quit (Quit: Quit Konversation)
22:38:26*superfunc quit (Ping timeout: 264 seconds)
22:40:10Mat4I see mainly one disadvantage of Red: It depend on some kind of garbage collector (which is bad some system programming tasks)
22:40:30ozraI've never coded Forth and the likes. But the Amiga OS , my heart warmed up immediately ;)
22:41:50gokrMat4: Well, Red is actually two different languages.
22:41:55gokrMat4: http://static.red-lang.org/Red-SFD2011-45mn.pdf
22:42:20gokrSo Red = Rebol basically. And "Red/System" is a lower level subset matching C kinda. It has no GC.
22:43:01gokrozra: I loved the C64, the Amiga 500 I mostly gamed on. Was too young to get into C etc.
22:43:24gokrMat4: Almost got myself a Jupiter Ace. Almost :)
22:43:48Mat4gokr: thanks, I see
22:44:54gokrMat4: The Red guys are churning out code, they secured half a million dollars too. So will be fun to see where it goes.
22:45:06ozraYeah, I loved the C-64 too. I started coding on the ABC-80, then the C-64, then on to the A500. The A500 is still my favourite though. Had like the perfect balance of gfx and sound caps to be beatuiful, and still leave most of the beuaty to your imagination, haha. Coded mostly Basic+Asm combo back then. Then E, then C.
22:45:48gokrI coded a lot on the C64, even made custom hw for it. But mostly gamed on the A500, but it was a beautiful system.
22:46:35ozraDeffo. Autoconfig in hardware, so sweet, the PC was a nightmare after switching, manually confing IRQ's and shit.
22:46:36Mat4an ABC-80. That means you probably are from sweden
22:46:50ozraMat4: Yup.
22:46:52gokrYup, he is. Me too :)
22:47:02*yglukhov__ quit (Quit: Be back later ...)
22:47:09ozraBought it in a barn sale for 50:- B-)
22:47:52Mat4I know the ABC 80 basic, which was a sophisticated, half compiling dialect
22:48:04Mat4if I remember correctly
22:48:50ozraMat4: I was too young to thing about such things then - I just read manuals and coded it. Had no tape station for it, so I had to program things from scratch each time I started it. Kind of good in retrospect :)
22:49:22Mat4oh
22:50:05ozraMat4: You swede too? Or just stumbled upon an ABC80?
22:50:30*kumul quit (Ping timeout: 276 seconds)
22:50:35gokrAre there any Swedes here today?? Mumblemumble... there is always one isn't there! Go stand in the back.
22:50:55ozrahaha
22:51:11*gokr loves Monty Python
22:51:34ozraYup
22:52:40ozragokr: still got your links btw, eager to check them, but too busy atm. Nim-hacking ;)
22:54:59Mat4ciao
22:55:12*Mat4 quit (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
22:55:14*vendethiel quit (Ping timeout: 252 seconds)
23:00:51*vendethiel joined #nim
23:01:03fowlfilwit: interfaces need a few safety checks before they're ready to be used
23:02:34*ingsoc quit (Ping timeout: 252 seconds)
23:05:03*Trustable quit (Remote host closed the connection)
23:05:09fowlX.f(...) We have to be sure f isn't generic here, that f has no varargs and that it follows the same form as other f's, a rule like 'x + x is int' we can immediately see breaks this x shows up twice, so this + can't be used
23:06:11gokrCould we throw them into experimental or something?
23:06:21gokrGet some more eyes on them
23:06:35gokrfuture I mena
23:06:37gokrmean
23:06:38*Siecje joined #nim
23:08:21fowlidc
23:10:04fowlOnce the vtable structure is set up, vtables can come from anywhere, for ex hot loaded from some dll
23:11:53filwitfowl: i see, that's cool
23:17:23filwitit would be interesting to see if there could be a hybrid approach to concepts and interfaces... maybe Araq is already building something like this (i think i remember him mention it before.. but not sure). That basically concepts that can be used as type members (which is 'invisibly' a VT ptr or proc tuple)
23:18:33filwitactually, i suppose your interfaces model is basically that.. nevermind
23:18:40*kumul joined #nim
23:22:37*vendethiel quit (Ping timeout: 265 seconds)
23:24:57*gsingh93 quit (Ping timeout: 265 seconds)
23:33:02vikatonI wonder if you can write a whole new language based off of Nim templates
23:35:54dtscodevikaton: You can create DSL's in nim, yes
23:36:02dtscodeSee jester ( I think that counts as one)
23:41:05vikatonmhm
23:41:21vikatonanyone here familiar with github api?
23:42:06dtscodeIts generally better to just ask your question
23:45:58*eldamar joined #nim