<< 05-11-2014 >>

00:01:29dom96_ldlework: hah, that's awesome.
00:02:04ldleworkdom96_: Go is frustrating because it turns completely otherwise capable developers into cultish massocists
00:02:20ldleworkI want to enjoy language discussions with my coworkers but Go makes that impossible
00:02:23ldleworkFor example
00:02:39ldleworkOne of the developers here who I respect, when confronted with the inability to use interfaces with built in maps
00:02:42ldleworkexclaimed
00:02:56ldlework"I like that it has that limitation. It removes entire classes of problems!"
00:03:09ldleworkI couldn't look that person in the eye for a couple days.
00:03:39VarriountIsn't that like saying that cutting peoples toes off prevents them from being stubbed, or getting a hangnail, etc?
00:03:57ldleworkVarriount: except I don't know what toe-stubbing he thinks that limitation prevents
00:04:15Araqit's like saying having no legs has its advantages cause they can be broken
00:04:16ldleworkI literally cannot think of *any advantage no matter how trivial* of preventing maps from being usable with interfaces
00:04:26ldleworkCan you?
00:04:55Araqno, it's surprising. maps are builtin in Go
00:05:08Araqwhy don't they work with interfaces?
00:05:25ldleworkAraq: they are specifically designed not to
00:05:37Araqhow hard can it beto hash a pointer?
00:05:37Araq*be to
00:05:47Araqwhy?
00:10:11VarriountAraq: Speaking of maps and interfaces, is having implicit iterators with more than two output elements planned?
00:13:14ldleworkVarriount: I have *no* idea.
00:13:21ldleworkerr
00:13:23ldleworkAraq: *
00:14:08AraqVarriount: I can't remember, do we already support implicit triples() iterators?
00:14:13AraqI guess not
00:14:28Araqwhat's the use case?
00:18:50VarriountAraq: I was looking at the parseargs module. There was an iterator returning tuple[kind, key, value]
00:19:33VarriountAraq: Why is the limit bounded? Why can't it be unlimited?
00:19:55Araqand which iterator would invoke that implicitly?
00:22:18Varriountproc items*[T](iterable: T): tuple
00:22:38*Matthias247 quit (Read error: Connection reset by peer)
00:25:40Araqbut for 2 'pairs' is invoked ...
00:26:08VarriountAraq: Why not (eventually) do away with that?
00:27:05VarriountWhy not just have one generic procedure, and unpack the tuple it returns?
00:27:37Araqno.
00:27:45Araqwe've been there before
00:27:55Araqdidn't work in generics
00:28:00Araqso we changed it.
00:29:31VarriountAraq: So now people are limited to being able to return only one- or two-element tuples to get implicit iteration?
00:30:36Araqoh come on
00:30:48VarriountIt's like java and having to use an absurd amount of overloads because the language doesn't support proper default arguments.
00:30:50Araqhow hard is it to write down the iterator's name anyway
00:31:21AraqI can't see how Java has anything to do with it
00:32:22VarriountAraq: I was using a comparative situation.
00:33:57Araqbtw the implicit items/pairs fails in generics iirc
00:34:16Araqcan we fix bugs before introducing ever more problems?
00:34:30*Joe_knock joined #nimrod
00:34:38*Joe_knock quit (Changing host)
00:34:38*Joe_knock joined #nimrod
00:34:39VarriountAraq: Fine. Spoilsport. :3
00:41:14NimBotAraq/Nimrod bigbreak 0dbec5a Grzegorz Adam Hankiewicz [+0 ±2 -0]: Adds support for the ``.. code::`` rst directive.... 4 more lines
00:41:14NimBotAraq/Nimrod bigbreak d935633 Grzegorz Adam Hankiewicz [+0 ±2 -0]: Modifies docgen to support new warning message.
00:41:14NimBotAraq/Nimrod bigbreak 078594c Grzegorz Adam Hankiewicz [+0 ±1 -0]: Improves macro tutorial with hyperlinks and numbered lines.
00:41:14NimBotAraq/Nimrod bigbreak 9c6d54d Grzegorz Adam Hankiewicz [+0 ±1 -0]: Hyperlinks quit related docstrings in system module.
00:41:14NimBot5 more commits.
00:41:34VarriountAraq: Since I'm generating the installers...
00:41:50VarriountHow about we include babel as a component?
00:42:14VarriountOr does babel not work?
00:42:39Araqdunno, I never update it, so it works for me
00:42:51Araqsame with aporia really
00:43:17AraqVarriount: I won't apply your koch PR
00:43:22Araqwhat's the point?
00:43:34Araqboot should support --out? wtf? why?
00:43:44Araqthat's not what bootstrapping is meant for
00:43:56VarriountAraq: Well, because temp doesn't support -d:release.
00:44:08Araqsure it does
00:44:23Araq"koch temp c -d:release test.nim"
00:44:40*q66 quit (Remote host closed the connection)
00:44:45Araqer wait
00:45:05Araqthat doesn't apply it to "temp"
00:45:13VarriountYeah. I know.
00:45:41VarriountAraq: I need the behavior for the builder, otherwise I have to do messy things with copying.
00:45:45onionhammerbigbreak isnt building
00:45:47onionhammercompiler/msgs.nim(416, 41) Error: type mismatch: got (Array constructor[0..28, string]) but expected 'array[0..27, string]'
00:46:05Varriountonionhammer: Pls fx it
00:46:54onionhammercant right now
00:47:02VarriountAraq: Besides, boot fails if you pass in a --out argument.
00:48:11Araqonionhammer: I'm fixing it
00:48:31onionhammerright-o
00:49:26AraqVarriount: boot does not reasonably support --out, nor should it
00:49:55Araqplease fix the "temp -d:release" issue differently, perhaps just introduce "temp_release"
00:51:51dom96_Varriount: It's called Nimble now, not Babel.
00:52:22VarriountAraq: https://drive.google.com/file/d/0B077nrrf63xtbUtsdC1adXFyb0E/view?usp=sharing
00:52:37VarriountThat contains the installers with fixed doc shortcut.
00:52:47VarriountNote that babel/nimble isn't included.
00:52:49Araqwhat about the aporia issue?
00:53:06Araqnot including nimble is fine with me. we'll do that for 0.10
00:53:24VarriountAraq: I haven't had a chance to investigate it. I don't know the aporia code in any case.
00:53:36Araqwell the thing is, it works for me
00:53:49Araqbut then I already have some other Nimrod in my path etc.
00:53:50dom96_Araq: What Aporia issue>
00:53:52dom96_*?
00:54:02VarriountActually, aporia works for me.
00:54:05Araqdom96_: aporia can't find Nimrod.exe
00:54:18VarriountPressing f4 doesn't crash aporia.
00:54:23Varriount(for me)
00:54:32Araqfor me neither
00:54:51Araqthat means it's XP specific?
00:54:58Varriount*shrug*
00:55:19VarriountHe's using an OS that was released... how many years ago?
00:55:59NimBotAraq/Nimrod bigbreak b13c51c Araq [+0 ±1 -0]: compiler bootstraps again
00:56:17VarriountBrb, folding clothes
00:56:43Araqfolding clothes? are you in the army now?
00:57:02VarriountNo, it's part of my chores.
00:57:56VarriountDon't you fold your own clothes?
00:58:33AraqI have a wife.
00:59:16VarriountAnd my parents just happen to have children.
01:01:07woodgiraffeI enjoy reading this channel
01:01:37VarriountI enjoy being in the company of a wooden giraffe.
01:01:42*xenagi joined #nimrod
01:02:16woodgiraffeYou better, we're a threatened species
01:02:41AraqVarriount: well the docs link now works
01:03:06Araqwhich is nice for the people using XP without internet
01:03:15Araqand thinking about it
01:03:23Araqthat's exactly how you should use XP
01:03:35VarriountConsidering that it
01:03:58Varriountdoesn't have support anymore, and that there are glaring vulnerabilities, you're right.
01:05:42Araqwell it can't be worse than executing 40K lines of generated configure scripts which could do all sort of things
01:06:28VarriountNot to mention, take 30 minutes to configure, and 3 hours to debug.
01:06:28Araqthis is just another security desaster on linux waiting to happen, if you ask me
01:07:35Araqand it performs really nice checks like "checking if your memset works correctly"
01:07:46woodgiraffeAraq: as long as you get it from a trusted source, one trusts microsoft as well if running a Windows I assume
01:09:09Araqwoodgiraffe: well sure but running 40K lines of generated batch/powershell scripts is not common
01:09:50woodgiraffeOn nix it is
01:09:57Araqyep.
01:17:31Joe_knockCan I install Nim in it's own folder and run all programs from that folder without breaking the system-wide install? Ubuntu 12.04
01:18:32Araqyou should be able to
01:19:05Araqbut I've heard that a system-wide install can confuse the local Nim installation
01:19:29AraqVarriount: thanks. updated the installers
01:19:41Joe_knockI want to box bigbreak in it's own folder.
01:20:36*darkf joined #nimrod
01:21:16VarriountWhich is what I find ironic about OpenBSD
01:21:44VarriountAraq: On OpenBSD, the server from which the package manager downloads stuff is controlled by an environment variable.
01:21:54Joe_knockUnless I break the symlink for system-wide install...
01:22:23VarriountJoe_knock: Port virtualenv to Nimrod. :3
01:23:01Joe_knockVarriount: Is it complex?
01:23:09VarriountNo idea.
01:24:05VarriountAraq: No comment regarding the openbsd method of installation?
01:24:18Joe_knockLet me ask the python peoples.
01:24:59VarriountJoe_knock: "The planet of the python peoples" - Sounds like some Sci-Fi B-Movie
01:28:24AraqVarriount: no comment necessary.
01:28:30*darkf quit (Ping timeout: 244 seconds)
01:29:16*vendethiel quit (Ping timeout: 265 seconds)
01:30:58Joe_knockVarriount: Somebody there said that virtualenv is python-specific
01:31:12Joe_knockWould I be cheating if I wrote the nim virtualenv in python?
01:31:19VarriountNot really.
01:31:41VarriountJoe_knock: The *implementation* is python-specific. The general idea can be applied to Nimrod.
01:32:18Joe_knockI understand the encapsulation, but I don't like how virtualenv does it.
01:33:23Araqgood night
01:34:07Joe_knocknight
01:34:12*darkf joined #nimrod
01:36:40*vendethiel joined #nimrod
01:39:57*brson quit (Quit: leaving)
01:49:06*Jehan_ quit (Quit: Leaving)
01:58:23*vendethiel quit (Ping timeout: 240 seconds)
02:07:19*mko quit (Ping timeout: 245 seconds)
02:22:38*superfunc quit (Quit: Connection closed for inactivity)
02:22:44*Varriount_ joined #nimrod
02:23:52*Var|Mobile quit (Ping timeout: 256 seconds)
02:23:57*Varriount quit (Ping timeout: 258 seconds)
02:26:51*vendethiel joined #nimrod
02:29:44*darkf_ joined #nimrod
02:32:39*darkf quit (Ping timeout: 265 seconds)
02:32:45*darkf_ is now known as darkf
02:38:52*flaviu quit (Ping timeout: 240 seconds)
02:38:53*superfunc joined #nimrod
02:44:28*flaviu joined #nimrod
02:53:17fowlhttp://www.youtube.com/watch?v=bmav517MQJc
02:53:36*AMorpork is now known as ZzZMorpork
02:58:11*enquora quit (Quit: enquora)
02:59:30*flaviu quit (Remote host closed the connection)
02:59:32ldlework...wow...
03:01:37*flaviu joined #nimrod
03:02:31*flaviu quit (Remote host closed the connection)
03:39:00*zombified joined #nimrod
03:43:08*zombified quit (Client Quit)
03:45:06*Joe_knock left #nimrod ("Leaving")
04:14:02*johnsoft quit (Ping timeout: 245 seconds)
04:15:10*johnsoft joined #nimrod
04:18:16fowlwrong channel >_>
04:52:38*superfunc quit (Quit: Connection closed for inactivity)
05:06:54*xenagi quit (Read error: Connection reset by peer)
05:57:38*BlaXpirit joined #nimrod
06:00:46*superfunc joined #nimrod
06:03:37*ARCADIVS joined #nimrod
06:15:48*superfunc quit (Quit: Page closed)
06:59:01*kemet joined #nimrod
07:03:24*kemet quit (Ping timeout: 258 seconds)
07:04:20*darkf quit (Ping timeout: 244 seconds)
07:04:59*darkf joined #nimrod
07:40:53*BlaXpirit quit (Ping timeout: 250 seconds)
08:21:40*tdc joined #nimrod
08:26:39*tdc left #nimrod ("Leaving")
08:28:43*Trustable joined #nimrod
08:29:28*mbenadda____ joined #nimrod
09:32:32*khmm joined #nimrod
09:37:01*gokr_ quit (Ping timeout: 250 seconds)
09:38:29*kemet joined #nimrod
09:40:05*kemet quit (Client Quit)
09:56:22*ZzZMorpork is now known as AMorpork
10:00:02*bjz_ joined #nimrod
10:00:03*bjz quit (Read error: Connection reset by peer)
10:05:37*Lynx_ quit (Quit: leaving)
10:11:47*Jehan_ joined #nimrod
10:37:23*dom96_ quit (Ping timeout: 255 seconds)
10:47:20*Jehan_ quit (Quit: Leaving)
10:54:51*kemet joined #nimrod
10:55:40*acidx joined #nimrod
10:59:35*dom96_ joined #nimrod
11:02:54*khmm quit (Ping timeout: 250 seconds)
11:13:01*khmm joined #nimrod
11:15:49*BlaXpirit joined #nimrod
11:27:20*johnsoft is now known as jiando
11:27:26*jiando is now known as johnsoft
11:55:14*khmm quit (Ping timeout: 245 seconds)
11:55:39*irrequietus joined #nimrod
11:57:28*mbenadda____ quit (Remote host closed the connection)
12:00:58*kemet quit (Read error: Connection reset by peer)
12:01:14*kemet joined #nimrod
13:18:04*xcombelle joined #nimrod
13:18:20*khmm joined #nimrod
13:23:34*johnsoft quit (Ping timeout: 244 seconds)
13:23:55*johnsoft joined #nimrod
13:27:33*kemet quit (Remote host closed the connection)
13:33:11*ARCADIVS quit (Quit: ARCADIVS)
13:40:37*Francisco quit (Ping timeout: 244 seconds)
13:48:37*khmm quit (Ping timeout: 245 seconds)
14:04:10*khmm joined #nimrod
14:40:28*darkf quit (Quit: Leaving)
14:45:10*kemet joined #nimrod
14:51:27woodgiraffeI have a proc that takes no parameters and returns an int, now it needs to remember always the last output it returned and I don't want to pollute "module namespace". - I'd turn to OOP/Singletons, any pointers on different takes?
14:51:45*superfunc joined #nimrod
15:08:24*Var|Mobile joined #nimrod
15:15:44fowlwoodgiraffe, {.global.} variable inside the function
15:17:54*xcombelle quit (Read error: Connection reset by peer)
15:18:34*khmm quit (Ping timeout: 250 seconds)
15:20:48*sdw_ joined #nimrod
15:23:59*BlaXpirit-UA joined #nimrod
15:24:25*BlaXpirit quit (Read error: Connection reset by peer)
15:24:26*sdw quit (Read error: Connection reset by peer)
15:25:05*kemet quit (Ping timeout: 264 seconds)
15:25:07*kemet1 joined #nimrod
15:59:16*EXetoC joined #nimrod
16:00:52*untitaker quit (Ping timeout: 255 seconds)
16:06:09*untitaker joined #nimrod
16:19:14*[CBR]Unspoken quit (Ping timeout: 244 seconds)
16:23:24*gokr quit (Quit: Leaving.)
16:31:57*[CBR]Unspoken joined #nimrod
16:47:41*gokr joined #nimrod
16:49:23*Hakaslak joined #nimrod
16:51:28*Hakaslak quit (Max SendQ exceeded)
16:52:11*Hakaslak joined #nimrod
16:54:17*Hakaslak quit (Max SendQ exceeded)
16:54:53*Hakaslak joined #nimrod
16:56:57*Hakaslak quit (Max SendQ exceeded)
16:57:36*Hakaslak joined #nimrod
16:58:27*brson joined #nimrod
16:58:41*Hakaslak quit (Max SendQ exceeded)
16:59:16*Hakaslak joined #nimrod
17:00:21*Hakaslak quit (Max SendQ exceeded)
17:00:57*Hakaslak joined #nimrod
17:02:02*Hakaslak quit (Max SendQ exceeded)
17:02:03*tillzy joined #nimrod
17:02:37*Hakaslak joined #nimrod
17:15:25ldleworkSomeone should have told Joe_Knock to use Docker
17:15:31ldleworkDocker is virtualenv for everything :)
17:16:40woodgiraffefowl: thanks
17:24:33*Mat3 joined #nimrod
17:24:35Mat3hello
17:26:50dom96_welcome Hakaslak
17:26:54dom96_hi Mat3
17:30:58woodgiraffeI have two 2d-sequences of int, I'd like to create a new sequence with its elements being the sum of those two given sequences pairwise. - Map doesn't accept multiple parameters?
17:31:43woodgiraffeAny pointers how to do this sweet and short?
17:38:18*Matthias247 joined #nimrod
17:41:19*kemet1 quit (Quit: Instantbird 1.5 -- http://www.instantbird.com)
17:51:12dom96_woodgiraffe: Use a for loop.
18:03:18gokrwoodgiraffe: Or look in sequtils.nim for inspiration and hack your variant :)
18:03:37gokrBut a for loop is definitely the principle of least surprise.
18:04:18gokrPersonally I played yesterday with making some new seq procs with inspiration from the insanely rich protocols in Smalltalk.
18:12:21*gokr quit (Ping timeout: 272 seconds)
18:12:38*superfunc quit (Quit: Connection closed for inactivity)
18:29:35*BitPuffin joined #nimrod
18:47:37*Var|Mobile quit (Read error: Connection reset by peer)
18:50:58*Var|Mobile joined #nimrod
18:57:53Mat3hi dom96
18:58:45Mat3gokr: That is for sure useful work :)
19:02:15*q66 joined #nimrod
19:15:57*Var|Mobile quit (Ping timeout: 260 seconds)
19:32:13*Joe_knock joined #nimrod
19:35:44*superfunc joined #nimrod
19:36:17*Var|Mobile joined #nimrod
19:36:34superfuncsup Var|Mobile
19:42:37wandom96_: the tfb has merged my pull request. Nimrod is now 0.10.0 from 31 october, and jester is at latest new-async
19:44:32wan(I had to disable scgi though and proxy http from nginx)
19:46:52*Joe_knock is now known as Joe_knock_afk
19:48:33*BitPuffin quit (Quit: See you on the dark side of the moon!)
19:49:50*khmm joined #nimrod
19:56:15*khmm quit (Read error: Connection reset by peer)
19:59:53*Var|Mobile quit (Read error: Connection reset by peer)
20:13:06*Var|Mobile joined #nimrod
20:19:21woodgiraffeI'm trying to multiple an int with a float expecting the result to be an int agagin, if I cast twice (int to float then the result to int again), I get a over- or underflow exception. - Am I approaching this the wrong way?
20:24:14superfuncvar res: int = x * f.int
20:24:29superfuncwhere x is of type int and f is of type float
20:26:46woodgiraffesuperfunc: f in my case is always in range [0,1], I assume int(0.5) = 0?
20:38:48woodgiraffeJust occured to me to just floor it
20:39:09*Var|Mobile quit (Ping timeout: 250 seconds)
20:39:51woodgiraffeI guess this can be done much more elegantly: cast[int8](floor(cast[float](x) * fac))
20:40:12Araqcasting is wrong
20:40:22Araqread some tutorial
20:40:53*tillzy quit (Quit: tillzy)
20:41:24woodgiraffeAh I just noticed that the tutorials contain things the manual doesn't have
20:41:38Araqreport that as a bug please
20:41:57Araqwe strive for the manual as the primary source of wisdom
20:42:45woodgiraffeI assume with not using casting you mean I should instead use toFloat etc.?
20:44:11Araqdo you know the binary representation of floating point numbers?
20:44:20Araqcause that's what 'cast' will give you
20:44:24woodgiraffeAraq: oh...
20:44:56superfuncwoodgiraffe: yes, saying f.int would floor it
20:45:25superfuncyou can test this easily by running: var x = 0.5 echo x.int
20:46:27superfuncAraq: the cast operator is akin to reinterpret_cast<T> in C++, right?
20:47:22Mat3cast[int8] <- ???
20:48:46*nullmove joined #nimrod
20:50:27*Var|Mobile joined #nimrod
20:51:57Araqsuperfunc: yes
20:51:58*Var|Mobile quit (Read error: Connection reset by peer)
20:54:59*nande joined #nimrod
20:55:41*dloss joined #nimrod
20:58:37*dloss quit (Remote host closed the connection)
21:01:06NimBotnimrod-code/csources devel dede2c0 Araq [+0 ±2495 -0]: rebuilt C sources
21:01:06NimBotnimrod-code/csources devel 96adf91 Araq [+0 ±3 -0]: changed back exename
21:01:06NimBotnimrod-code/csources devel ae68977 Araq [+69 ±0 -0]: added missing files
21:01:06NimBotnimrod-code/csources devel 11b85b9 Araq [+0 ±21 -0]: attempt to make the C sources work again
21:01:06NimBot3 more commits.
21:01:40AraqVarriount_: we didn't have "csources devel", right?
21:02:03ldleworkHas anyone Dockerized nim yet?
21:02:10*ldlework checks the registry
21:02:30ldleworkaha they have
21:06:04*Var|Mobile joined #nimrod
21:08:17*Var|Mobile quit (Read error: Connection reset by peer)
21:09:24nullmovecreateShared gives me Error: invalid pragma: benign
21:10:11nullmoveweird because other procs marked with benign works
21:10:50Araqdamn
21:10:54Araqthanks for reporting
21:11:15Araqit's a known bug in the compiler, I guess I should fix it rather than work around it
21:21:45*Var|Mobile joined #nimrod
21:21:45*Var|Mobile quit (Read error: Connection reset by peer)
21:22:03*Var|Mobile joined #nimrod
21:33:38NimBotAraq/Nimrod devel 0dbec5a Grzegorz Adam Hankiewicz [+0 ±2 -0]: Adds support for the ``.. code::`` rst directive.... 4 more lines
21:33:38NimBotAraq/Nimrod devel d935633 Grzegorz Adam Hankiewicz [+0 ±2 -0]: Modifies docgen to support new warning message.
21:33:38NimBotAraq/Nimrod devel 078594c Grzegorz Adam Hankiewicz [+0 ±1 -0]: Improves macro tutorial with hyperlinks and numbered lines.
21:33:38NimBotAraq/Nimrod devel 9c6d54d Grzegorz Adam Hankiewicz [+0 ±1 -0]: Hyperlinks quit related docstrings in system module.
21:33:38NimBot267 more commits.
21:34:04Araqnow we are one.
21:37:03*flaviu joined #nimrod
21:39:23*Var|Mobile quit (Read error: Connection reset by peer)
21:40:42*flaviu quit (Remote host closed the connection)
21:42:29*woodgiraffe quit (Ping timeout: 260 seconds)
21:46:16*woodgiraffe joined #nimrod
21:49:54Trustablewow, 269 commits, seems like much progress :)
21:50:07Joe_knock_afkDoes anybody know how to set your away username on XChat?
21:50:55*gokr joined #nimrod
21:53:09*Var|Mobile joined #nimrod
21:55:56*Joe_knock_afk is now known as Joe_knock
21:59:17*nullmove quit (Quit: Page closed)
22:00:36*mko joined #nimrod
22:08:33Araqhrm createShared works for me ...
22:09:07*tillzy joined #nimrod
22:09:18*Var|Mobile quit (Read error: Connection reset by peer)
22:10:26Araqbut freeShared fails
22:24:58*Var|Mobile joined #nimrod
22:29:02*Mat3 quit (Quit: Verlassend)
22:29:33*flaviu joined #nimrod
22:33:35*Francisco joined #nimrod
22:34:47*tillzy quit (Quit: tillzy)
22:38:06Araqso the next release will be 0.10.2
22:38:19Araqsince bigbreak reported 0.10.0 for a long time
22:38:32Araqwhich is wrong, it should have been 0.10.1
22:38:44dom96_it should report 0.9.9
22:39:10dom96_releasing 0.10.2 without 0.10.0 will be confusing
22:40:06Araqsemantic versioning means we need 0.10.x
22:40:42Araqaccording to Varriount_ bigbreak breaks at least one third of all babel packages
22:41:00flaviuSemantic versioning actually says 1.0.x
22:41:38*Francisco quit (Ping timeout: 256 seconds)
22:41:46flaviuBut I realize you're treating the middle number as the breaking version number, and the big number as big changes
22:42:03flaviua la Haskell
22:43:32dom96_this has nothing to do with semantic versioning
22:43:41dom96_you're skipping a 0.10.x version
22:43:49dom96_which you haven't done for 0.9.x
22:43:53dom96_0.9.0 was released.
22:44:02*Francisco joined #nimrod
22:44:39ldleworkWhy would previous threepoint releases matter about future threepoint releases?
22:45:32dom96_people will wonder what happened to 0.10.0
22:45:38flaviudom96_: You changed your nick color! :P
22:45:52dom96_especially because we told many people that when 0.10.0 is released that the name will change.
22:46:17dom96_Araq: bigbreak in devel now?
22:46:28ldleworkdom96_: sure but people are not going to crash planes into the ground over it
22:46:38Araqwell the release plan is now 0.9.6 -> 0.10.2 -> 1.0.0
22:46:53Araqwhich is confusing either way
22:47:01Araqeven if we stick to 0.10.0
22:47:15Araqdom96_: yes, devel=bigbreak now
22:47:38dom96_cool
22:48:30flaviuAraq: Sounds great!
22:48:41flaviuDon't forget to do `git push origin :bigbreak`
22:48:55Araqhrm? what does that do?
22:49:14flaviuDeletes the bigbreak branch from the origin remote
22:49:28*Var|Mobile quit (Ping timeout: 255 seconds)
22:49:51dom96_indeed, good idea.
22:50:01ldleworkHmm
22:50:10ldleworkWhere are typeclasses described in the language docs
22:50:55Araqsomewhere in the manual
22:51:08ldleworklol I can't find it
22:51:16ldleworktrying to sell someone on the "constraint based" declarations
22:51:21ldleworkI dunno what you guys call them
22:52:04Araqhttp://nimrod-lang.org/manual.html#user-defined-type-classes
22:52:15Araqhttp://nimrod-lang.org/manual.html#type-classes
22:52:18ldleworkgah thanks
22:52:51ldleworkAraq: how would you name Nim's style of "example usage" declarations for type classes?
22:52:57ldleworkis there a buzzword I can use?
22:52:59flaviuimplements_78 new_spawn newasync newparser newtempl revert-1618-patch-3 sigpipe vm2 vm2_2
22:53:02ldleworkdo any other languages use that style?
22:53:11flaviucan all definitely also be deleted
22:53:54flaviuldlework: I'm not sure, but IIRC D uses it too. Perhaps the have a word for it.
22:55:05ldleworkflaviu: I think "constraint based" isn't bad
22:56:29flaviuYep. http://dlang.org/concepts.html
23:01:27ldleworkflaviu: hmm that doesn't seem like the same thing?
23:01:32ldleworkthat seems like generics constraints
23:01:40ldleworkNim's typeclass constraints seem different?
23:01:42gokris it just me who ... wonders about the do syntax vs the new lambda syntax etc? It seems a tad .. confusing now.
23:01:43flaviuYes, but very similar
23:04:19dom96_gokr: I dislike the do syntax and think it should be removed.
23:04:32dom96_or at least it should be constrained
23:04:59gokrPersonally I never really liked it either. Felt... oddly disconnected. And all to just avoid a last ")" ?
23:05:06gokrOr "end" in ruby or whatever.
23:05:11dom96_Currently you get `do` nodes in the AST even if you have not written a 'do' keyword.
23:05:43Araqomg, again?
23:06:01Araqthere is no alternative "lambda" syntax
23:06:17Araqit's in a *module* implemented as a macro
23:06:23Araqbecause we can
23:06:29*Francisco quit (Ping timeout: 264 seconds)
23:06:31gokrYeah, fine, the net effect is the same.
23:06:35gokrIts meant to be used, right?
23:06:38Araqthe future module is a language showoff module
23:06:55AraqI personally don't use it
23:06:57gokrOk, so its ... not yet decided what happens with it?
23:07:10*Francisco joined #nimrod
23:07:33Araqno, it's "araq doesn't care, but it's not part of the core"
23:07:50gokrWell... stdlib is just as important as core.
23:07:53gokrIMHO.
23:08:21Araqlots of people argue that, but it's wrong IMHO
23:08:21ldlework+1
23:08:28ldleworkto gokr
23:08:31ldlework:P
23:08:58gokrSmalltalk without the libraries is... nothing.
23:09:20gokrLiterally I mean.
23:09:26Araqso? in C the stdlib is often avoided
23:10:06gokrAnd it seems to me that a lot of the idioms etc in Nim are in the stdlib. So it shapes how Nim code looks and how people write it.
23:11:04gokrC has quite a lot of the language "in the language".
23:11:33gokrNim seems to have much more in the libraries. operators. iterators. collection types.
23:15:50gokrAnd... one thing refreshing with Nim compared to say... Lua or Javascript (just to pick two out of the blue) - is that there actually is a stdlib.
23:16:22gokrJavascript now suffers from a huge amount of more or less good libraries - and combing it all is a mess.
23:16:24EXetoCand static typing :>
23:16:25gokrcombining.
23:17:07Araqwell the argument was "it's confusing", to which I replied "so don't use the future module"
23:17:11gokrI just mentioned those because they both suffer from a decent canonical stdlib.
23:17:52Araqwhat's the alternative? to remove the future module? then somebody will realize it's only an ordinary module
23:18:05Araqand creates a nimble package out of it
23:18:20gokrNo, I was just curious. The do thing - is that... in system or the language or?
23:18:36Araqthat's in the language
23:18:58Araqit's even a keyword
23:19:57gokrright
23:20:33*irrequietus quit ()
23:23:58gokrdom96: Hmmm, so... the "->" used in do - is a declaration. And ... same is used in lambda declarations. And then when you create one, you use "=>", that's the idea?
23:24:59dom96_gokr: In the lambda macro `->` is used for type annotations.
23:25:28gokryes, I am looking at the code etc. Ok, "type annotation" is perhaps a better term.
23:26:05gokrI was kinda confused first about -> vs => but ok, that clears that up - and is in fact ... symmetrical with the do syntax, kinda.
23:26:16dom96_The docs show it off fairly well I think http://build.nimrod-lang.org/docs/future.html
23:26:24gokrOh, perhaps I missed that.
23:26:42gokrAh, right - I saw the code :)
23:27:47gokrNow... the only thing that I will undoubtedly type wrong 100 times is the do syntax vs the proc syntax. So... " -> int:" vs ":int ="
23:28:27gokrI can understand how it came to be though, since I guess the idea with do is to end with ":" and... ":int :" looks odd.
23:29:06dom96_Araq: Can we please remove the do notation and adopt the lambda macro instead?
23:29:46Araqno
23:29:54gokrIs there semantic differences between them btw?
23:30:33Araq'do' is used by many people and it's required to be able to pass multiple blocks to a macro
23:31:06Araqwhereas the => macro is pointless sugar
23:31:26gokrBut ... kinda neat sugar.
23:32:28gokrOh well, time for bed. cya
23:36:08Varriount_Araq: Hm? What do you mean by 'csources devel'?
23:36:19Araqcsources repo with devel branch
23:36:30Araqnow we have it
23:36:40*BlaXpirit-UA quit (Quit: Quit Konversation)
23:37:00Varriount_We've had one for a while now.
23:37:51Varriount_Araq: Where should I host the new build hub?
23:38:28fowlAraq, csources devel branch works? or bigbreak
23:38:54AraqVarriount_: well I didn't
23:39:06Araqanyway I merged bigbreak into devel
23:40:22Varriount_:O
23:40:27*Varriount_ is now known as Varriount
23:45:04VarriountAraq: What service is currently being used to host the build bot?
23:45:16VarriountEr, the build bot hub
23:45:30Araqlinode
23:45:52VarriountIs it free, or paid?
23:46:02flaviupaid
23:46:07Araqbut you should host it on DigitalOcean
23:46:12flaviuIt's a generic VPS service
23:46:31VarriountAraq: Or on one of the other free vps services.
23:46:47flaviuVarriount: Those don't really exist :/
23:47:04Varriountflaviu: https://crissic.net/open-source_free-hosting
23:47:26flaviuOh, I see. That looks great!
23:49:31*Matthias247 quit (Read error: Connection reset by peer)
23:50:13Varriountflaviu: https://www.virtkick.io/blog/free-vps-for-open-source-meet-virtkick-federation.html
23:51:14VarriountSo, DigitalOcean vs VirtKick vs Crissic
23:52:02flaviuWhat's the point of VirtKick? You have to host your own servers to get access to a vps
23:52:17VarriountHrm, true.
23:52:27VarriountSo DigitalOcean vs Crissic
23:53:55*BitPuffin joined #nimrod
23:54:38*BitPuffin quit (Client Quit)
23:54:53flaviuApply to both, see if you get accepted
23:55:13VarriountAnd if we get accepted to both?
23:55:44dom96We already have a DO VPS
23:55:44flaviuExtra buildbot?
23:55:54Varriountflaviu: New buildbot
23:56:54dom96Varriount: But because you are a student you could probably get $100 for DO through GIthub student pack.
23:57:25dom96May be a good idea not to put the build bot on the same server as the main site.
23:57:53*BitPuffin joined #nimrod