<< 27-07-2017 >>

00:04:02*Sentreen quit (Quit: WeeChat 1.4)
00:05:49*Sentreen joined #nim
00:09:40*vlad1777d quit (Ping timeout: 276 seconds)
00:28:22*rosshadden joined #nim
00:47:59*Serenit0r joined #nim
00:51:27*Serenitor quit (Ping timeout: 240 seconds)
00:52:22*ipjk quit (Read error: Connection reset by peer)
00:52:29*gangstacat quit (Quit: Ĝis!)
00:54:33*yglukhov joined #nim
00:59:07*yglukhov quit (Ping timeout: 260 seconds)
01:12:44*vivus joined #nim
01:13:30*yingjun_ joined #nim
01:18:06*gangstacat joined #nim
01:25:13*rosshadden quit (Quit: WeeChat 1.9)
01:30:58*jinshil joined #nim
01:34:19*chemist69 quit (Ping timeout: 255 seconds)
01:44:21*dankrad quit (Ping timeout: 240 seconds)
01:46:35*dankrad joined #nim
01:48:07*chemist69 joined #nim
01:56:51*cspar__ quit (Ping timeout: 240 seconds)
02:12:39*mwbrown_ joined #nim
02:13:35*mwbrown quit (Ping timeout: 240 seconds)
02:13:35*mwbrown_ is now known as mwbrown
02:17:27*cspar__ joined #nim
02:26:51*endragor joined #nim
02:27:00*endragor quit (Remote host closed the connection)
02:27:27*endragor joined #nim
02:33:21*yingjun_ quit (Remote host closed the connection)
02:33:31*yingjun joined #nim
02:34:54*yingjun quit (Remote host closed the connection)
02:35:28*yingjun joined #nim
02:36:48*yingjun quit (Remote host closed the connection)
02:47:21*yingjun joined #nim
03:14:01*mahtob quit (Remote host closed the connection)
03:21:03*yingjun quit (Remote host closed the connection)
03:21:13*yingjun joined #nim
03:22:13*yingjun quit (Remote host closed the connection)
03:25:26*yingjun joined #nim
03:31:16*pilne quit (Quit: Quitting!)
04:01:33*vivus quit (Quit: Leaving)
04:27:30*smeady_ joined #nim
04:29:41*smeady_ quit (Client Quit)
04:53:02*Snircle quit (Quit: Textual IRC Client: www.textualapp.com)
04:56:19*Serenit0r quit (Ping timeout: 276 seconds)
05:03:22*yingjun quit (Remote host closed the connection)
05:03:32*yingjun joined #nim
05:04:55*yingjun quit (Remote host closed the connection)
05:09:44*yingjun joined #nim
05:21:15*Vladar joined #nim
05:28:13*tankfeeder joined #nim
05:31:45*dankrad quit (Ping timeout: 248 seconds)
05:33:28*dankrad joined #nim
05:46:33*user0 quit (Remote host closed the connection)
05:48:46*user0 joined #nim
05:54:48*yingjun quit (Remote host closed the connection)
05:54:58*yingjun joined #nim
05:56:20*yingjun quit (Remote host closed the connection)
05:56:30*yingjun joined #nim
06:00:22*rauss quit (Quit: WeeChat 1.9)
06:07:13*yingjun quit (Remote host closed the connection)
06:07:23*yingjun joined #nim
06:08:46*yingjun quit (Remote host closed the connection)
06:10:37*yingjun_ joined #nim
06:12:37*nsf joined #nim
06:17:36*arnetheduck joined #nim
06:27:41*andrzejku joined #nim
06:27:58FromGitter<Araq> @zacharycarter tries the 'devel' branch of karax?
06:36:30FromGitter<zacharycarter> let me do that
06:45:35*vlad1777d joined #nim
06:50:51*Sentreen quit (Ping timeout: 240 seconds)
07:03:02FromGitter<zacharycarter> @Araq seems to blow up after : 43ee8903561b0d06adb26c1d88f6d8ecb4cd7929
07:03:45*Sentreen joined #nim
07:04:28Araqthen report it properly so that I can reproduce it
07:04:46FromGitter<zacharycarter> working on it
07:04:47Araqhowever, if you mess with the .dom field too much, karax may get out of sync
07:05:25FromGitter<zacharycarter> alright I'll try to figure out how to reproduce it today
07:07:32Araqthanks
07:09:10FromGitter<zacharycarter> np thanks for the help
07:10:08user0Hi. I was wondering if there is any equivalent of ``chars() `` function in the standard library. For example, "おはよう".chars.nth(2) should provide 'よ'
07:11:08FromGitter<zacharycarter> stringval[2
07:11:09FromGitter<zacharycarter> ]
07:11:26FromGitter<zacharycarter> sorry - stringval[2]
07:14:14user0For some reason it's not printing 'よ', it's printing �
07:15:25user0echo "おはよう"[2]
07:16:54FromGitter<zacharycarter> echo "abcdefg"[4]
07:16:58FromGitter<zacharycarter> works fine
07:17:07FromGitter<zacharycarter> I'm guessing it's the character encoding or something I have no clue really
07:18:09user0Yes, unicode characters may contain weird code points
07:22:44FromGitter<zacharycarter> user0:
07:22:49FromGitter<zacharycarter> ```import unicode ⏎ ⏎ echo runeAtPos("おはよう", 2)``` [https://gitter.im/nim-lang/Nim?at=597994c9a7b406262d352a7d]
07:22:58user0I got it "おはよう".toRunes[3]
07:23:03FromGitter<zacharycarter> or that
07:27:12*andrzejku quit (Quit: Textual IRC Client: www.textualapp.com)
07:34:35*dankrad quit (Ping timeout: 240 seconds)
07:36:07*yglukhov joined #nim
07:36:38*dankrad joined #nim
07:48:15*Arrrr joined #nim
07:52:20*Arrrr quit (Read error: Connection reset by peer)
07:53:08*Arrrr joined #nim
07:53:12ArrrrError: system module needs 'copyString'
07:53:18ArrrrThis happened to me when i enabled threads
07:54:12*Arrrr quit (Client Quit)
07:55:47*Arrrr joined #nim
08:00:55*Arrrr quit (Ping timeout: 276 seconds)
08:08:38*Andris_zbx joined #nim
08:18:04*yingjun_ quit (Remote host closed the connection)
08:21:11*yingjun_ joined #nim
08:59:07*jinshil quit (Quit: Good-bye!)
09:07:08*dankrad quit (Ping timeout: 240 seconds)
09:09:32*dankrad joined #nim
09:17:59*rokups joined #nim
09:18:17*Arrrr joined #nim
09:21:22*Zevv left #nim (#nim)
09:53:28*ShalokShalom joined #nim
09:58:25*dankrad quit (Ping timeout: 248 seconds)
10:00:33*dankrad joined #nim
10:15:00*Arrrr quit (Quit: Arrrr)
10:15:29*Arrrr joined #nim
10:22:59*Arrrr quit (Quit: Arrrr)
10:23:24*Arrrr joined #nim
10:23:30*dankrad quit (Ping timeout: 255 seconds)
10:25:32*dankrad joined #nim
10:31:24FromGitter<TiberiumN> ehm, is GC v2 useful at all?
10:31:27FromGitter<TiberiumN> it doesn't compile :)
10:31:34FromGitter<TiberiumN> lib\system\gc_common.nim(355, 1) Error: redefinition of 'prepareDealloc'
10:45:57*yingjun_ quit (Remote host closed the connection)
10:47:19*yingjun joined #nim
10:47:52*yingjun quit (Remote host closed the connection)
10:51:44ArrrrEither sleep or cpuTime is broken in linux https://glot.io/snippets/es4413j97b
10:51:48ArrrrOr i don't understand how it works
10:55:35*samuell joined #nim
10:56:15*PMunch joined #nim
10:59:09Amun_Rawhat cpu time do you expect for sleeping?
11:12:21ArrrrAfter sleeping 1000ms i'd expect the result to be 1.0
11:12:28ArrrrIn windows that's how it works
11:12:43Amun_Rawhen the process is sleeping it does not run
11:12:49Amun_Raso it takes no cpu time
11:13:17Amun_Rawhat I would expect from this code is a very small number
11:13:43Arrrrwtf, well how do you measure the time in a multiplatform way? epochTime?
11:14:47Amun_Racpu time? the same
11:15:10ArrrrFor certain software you need to wait until x time has passed
11:15:16ArrrrSay, game loop
11:15:19cremWhat if code takes all time on multiple cores? Should cpu_time be more than 1 second per real second?
11:16:00cremWill wall time it's also not that easy! Does it go when computer is in low power mode? (sleep/hibernate).
11:16:37Amun_Rausually you sleep for the given ammount of time or wait for an event
11:16:44Amun_Ra(I'm not a game dev, tho)
11:17:24cremWhat if computer goes to low power mode while sleeping? Should time still go?
11:17:46Amun_Ra;>
11:18:09cremActually both windows (starting from win vista) and linux system calls stop timer in that case, but most libraries do not.
11:19:05cremcpu times usually are needed for profiling rather than for something else.
11:19:06ArrrrI really want a way to count time with a good resolution. Didn't know cpuTime work that way for unix and new windowes
11:21:32Amun_Rathere is times (2) function in posix
11:26:39*PMunch quit (Quit: leaving)
11:27:31FromGitter<TiberiumN> well for example: unity3d uses gettimeofday on linux :)
11:29:49*krux02 joined #nim
11:31:20FromGitter<TiberiumN> because there's a simple .c speedhack for games which use "gettimeofday", including all unity3d games
11:31:40FromGitter<TiberiumN> https://gist.github.com/fujin/db74f71aa7b2a8a461cf
11:33:02FromGitter<zacharycarter> playground gist support is up
11:33:03FromGitter<zacharycarter> https://play.nim-lang.org?gist=5834e30096ddb8a805db615930226909
11:34:10*yingjun joined #nim
11:34:47cremHow did it happen that in the last link there's no slash after ".org"?
11:34:50euantorUse `clock_gettime(CLOCK_MONOTONIC, timespec)` on posix
11:39:05euantorhttps://play.nim-lang.org?gist=28e7059e34f2e12904fe619853e9d740
11:39:30euantorThat way it's wall time, not CPU time
11:42:58FromGitter<TiberiumN> yeah
11:43:05FromGitter<TiberiumN> but it's not portable
11:44:14euantorShould work on most posix systems. Windows has similar functions
11:44:25FromGitter<zacharycarter> sdl2 timer solves this
11:44:28FromGitter<zacharycarter> or something like it
11:44:39FromGitter<zacharycarter> glfw3 has a cross platform timer too
11:45:40*xet7 joined #nim
11:49:05krux02best for timing stuff: http://ix.io/yIX
11:49:55euantorYeah, PerformanceCounter is the way to go
11:51:22krux02the performance counter is provided from SDL
11:52:20euantorAh, I thought you meant Windows performance counters: https://msdn.microsoft.com/en-us/library/windows/desktop/aa373083(v=vs.85).aspx
11:52:46euantorAlso just remembered that linux has a specific CLOCK_MONOTONIC_RAW clock that's not cross platform but that isn't affected by NTP
11:52:54krux02well they are windows performance counters when compiled on windows ;)
11:53:20krux02sdl is to provide cross platform API to performance counters
11:55:32*rokups quit (Quit: Connection closed for inactivity)
12:01:27*Arrrr quit (Quit: Arrrr)
12:03:00*Snircle joined #nim
12:07:33FromGitter<cyberlis> I have a question. I want run a thread with long calculation, but i don't want to use `threadpool`. How can i return a value from thread?
12:07:58euantorYou could use a channel: https://nim-lang.org/docs/channels.html
12:08:05FromGitter<zacharycarter> https://nim-lang.org/docs/asyncdispatch.html
12:08:06FromGitter<zacharycarter> futures
12:08:10FromGitter<TiberiumN> async is one-threaded
12:08:16FromGitter<zacharycarter> oh whoops
12:08:18FromGitter<zacharycarter> that's right my bad
12:08:23FromGitter<TiberiumN> it's good for IO stuff
12:08:25FromGitter<TiberiumN> and network
12:08:51FromGitter<cyberlis> ok, i will look for channels
12:08:57FromGitter<TiberiumN> @cyberlis do you still visit Rubukkit ? :)
12:10:24FromGitter<cyberlis> @TiberiumN no. minecraft died when it was bought by microsoft
12:11:09FromGitter<TiberiumN> yeah, I agree :)
12:11:39krux02minecraft died when it became über popular in 2010
12:11:57krux02yea I played minecraft before it became cool B-)
12:14:07cremMinecraft had very nice idea, but it felt that someone else could implement that idea nicer. I'm surprised there were no some more popular minecraft clone.
12:30:23krux02well there were a lot of mincraft clones, and Minecraft itselt is a clone of Infiniminer
12:30:55krux02but everybody who tried to do something similar got a lot of hate for cloning minecraft froth the very pround Minecraft Kids
12:31:20krux02sorry i mean Kidz
12:31:36FromGitter<TiberiumN> lol I didn't knew
12:32:53krux02it's sad I think
12:33:48krux02but one thig minecraft is pretty good at. It is so much of an inferior game with very simple rules that is really inspired mods to fill the gap of missing content
12:34:15krux02if mincraft would have a huge ton of content from the base game, I doubt that modding it would have gotten so popular
12:34:33krux02even I did a mincraft clone in 2010 :P
12:35:10krux02I did in in scala and thought I could rock it, but yea I failed
12:35:14krux02I was not good enough
12:35:20cremI played minecraft ~20 hours and never used any mods. Except higher-res textures.
12:35:44krux02I don't like higher-res textures, I think it makes the game more ugly
12:36:32krux02I played Minecraft with my Girlfriend back then and she decorated the rooms and I went hunting :P
12:36:49krux02good memories
12:37:48cremYeah and also from one hand monsters kind of unneeded there, but if you switch them off the game becomes boring.
12:38:36krux02I think the Monster types are ok, I hate the spawning behaviour
12:39:07*EastByte quit (Ping timeout: 276 seconds)
12:39:37krux02it is "oh you forgot to not turn the light off in the basement: creeper blows your house away"
12:39:40krux02silly concept
12:40:35krux02crafting sword and armor with different materials reall is encouraging and motivates to try things out, but that system falls short for all recepies you can't guess
12:41:00krux02so tha game was (they changed it now) always one window minecraft the other wiki
12:41:06krux02not really immersive
12:41:07krux02anyway
12:41:22krux02if you want to clone the game, don't clone the crap
12:42:56krux02Play Clonk and combine the good from clonk (elevators, electricity and mining based on blowing stuff up) with the good from minecraft (make buildings out of blocks)
12:53:09*EastByte joined #nim
12:54:13*dankrad quit (Ping timeout: 255 seconds)
12:56:08*dankrad joined #nim
13:13:46*Snircle quit (Quit: Textual IRC Client: www.textualapp.com)
13:18:05*rauss joined #nim
13:19:19*yingjun quit (Remote host closed the connection)
13:25:03*yingjun joined #nim
13:47:15*Snircle joined #nim
13:48:18pydsignerI'm experiencing deja vu because almost this exact conversation happened elsewhere yesterday ><
13:53:20*yingjun quit (Remote host closed the connection)
13:54:39*dankrad quit (Ping timeout: 258 seconds)
13:56:16*dankrad joined #nim
14:07:06*yingjun joined #nim
14:19:23*dom96|w joined #nim
14:20:01*vlad1777d quit (Quit: Leaving)
14:20:40*yingjun quit (Remote host closed the connection)
14:22:10*yingjun joined #nim
14:22:27*yingjun quit (Remote host closed the connection)
14:27:14*v17d joined #nim
14:47:00cremWhy is there a graph on every language webpage (crystal, nim, go, you name it!), that shows how their language is the fastest? :)
14:53:05federico3because someone is dishonest
14:55:16*Sentreen quit (Ping timeout: 255 seconds)
14:56:24FromGitter<zacharycarter> they're also probably all comparing different benchmarks
15:00:40*v17d quit (Ping timeout: 255 seconds)
15:04:59*PMunch joined #nim
15:07:41FromGitter<TiberiumN> lol, did crysal took some ideas from Nim?
15:08:15*Sentreen joined #nim
15:09:57*nsf quit (Quit: WeeChat 1.9)
15:12:48*v17d joined #nim
15:22:58*yingjun_ joined #nim
15:27:12*nhywyll joined #nim
15:27:20*yingjun_ quit (Ping timeout: 240 seconds)
15:41:20FromGitter<TiberiumN> lol, saving a picture of /r/place takes 12.8mb of ram and 3.4 seconds only ⏎ Code: https://gist.github.com/TiberiumN/e6ec6f6a865adc9ea7192b51ec8ccd51
15:42:29FromGitter<TiberiumN> I'm using nigui for simplicity
15:42:49FromGitter<TiberiumN> thanks for nim iterators it doesn't take so much ram
15:45:08FromGitter<TiberiumN> also diffs.bin is not very efficient: for example, it uses 32-bit integers for color id (which can take 16 possible values from 0 to 15)
15:45:23FromGitter<TiberiumN> and x in y can be 16-bit integers (since they're only from 0 to 1000) :)
15:49:22user0How can I create a lazy iterator?
15:49:53FromGitter<TiberiumN> maybe you can see it here? https://github.com/petermora/nimLazy
15:50:29krux02user0: iterators are lazy aren't they?
15:54:52PMunchIsn't that the entire point of the iterators?
15:55:39krux02nimLazy works more like haskell
15:55:51krux02with all this lazy collections
15:56:19krux02The nim way to do things is a bit different
15:57:45krux02iterator concatenation(): int = for x in iterA(): yield x; for x in iterB(): yield x
15:58:06FromGitter<TiberiumN> ah, yeah, I know about this
15:58:11FromGitter<TiberiumN> I misunderstoof the question
15:58:31user0I am making one that lazily iterates over characters in a string, like a lazy ``chars()``
15:58:31krux02one does not really need those infinite sequences
15:58:45krux02?
15:59:04user0It's for learning purpose
15:59:09krux02well ok
15:59:57krux02whats wrong with `items("here are some chars")`?
16:00:23FromGitter<TiberiumN> you can iterate directly
16:00:29FromGitter<TiberiumN> without the need for "items" :)
16:00:46FromGitter<TiberiumN> for x in "hello world": echo x ⏎ like in python
16:01:04*Andris_zbx quit (Remote host closed the connection)
16:01:40user0>items
16:01:54user0hmm, didn't know about that, I'll look into it
16:03:52*dankrad quit (Ping timeout: 260 seconds)
16:04:19*PMunch quit (Quit: leaving)
16:05:18*ipjk joined #nim
16:09:02*spkpp joined #nim
16:29:54*Trustable joined #nim
16:30:26krux02when iterating something the call to items is implicit
16:30:31*v17d quit (Ping timeout: 276 seconds)
16:30:32krux02same with pairs
16:36:20*smt quit (Ping timeout: 240 seconds)
16:41:57FromGitter<TiberiumN> yeah I know
16:42:41*user0_ joined #nim
16:42:57*user0 quit (Ping timeout: 260 seconds)
16:43:16*itseris joined #nim
16:44:50*v17d joined #nim
16:51:21*yglukhov quit (Remote host closed the connection)
16:51:37*smt joined #nim
16:55:45*Matthias247 joined #nim
17:05:26*yglukhov joined #nim
17:09:47*yglukhov quit (Ping timeout: 260 seconds)
17:24:48*yingjun_ joined #nim
17:27:50*ketralnis quit (Quit: Coyote finally caught me)
17:28:50*yingjun_ quit (Ping timeout: 240 seconds)
17:31:33*dom96|w quit (Quit: My Mac has gone to sleep. ZZZzzz…)
17:32:05*endragor quit (Remote host closed the connection)
17:34:48*endragor joined #nim
17:35:15*krux02 quit (Remote host closed the connection)
17:36:06*dom96|w joined #nim
17:38:45FromGitter<Varriount> krux02: My first experiences programming were helping extend a custom Minecraft server (back when Classic was the only thing available)
17:39:32*endragor quit (Ping timeout: 260 seconds)
17:46:44*samuell quit (Quit: Hejdå)
17:47:07*endragor joined #nim
17:47:38*yglukhov joined #nim
17:48:17*v17d quit (Ping timeout: 248 seconds)
17:50:03*v17d joined #nim
17:50:10*sz0 joined #nim
17:51:20*endragor quit (Ping timeout: 240 seconds)
17:52:25*yglukhov quit (Ping timeout: 276 seconds)
17:54:42*Trustable quit (Remote host closed the connection)
17:54:45*samuell_ joined #nim
18:00:37*samuell_ quit (Quit: Hejdå)
18:03:05*dom96|w quit (Quit: My Mac has gone to sleep. ZZZzzz…)
18:36:30*arnetheduck quit (Read error: Connection reset by peer)
18:37:42*arnetheduck joined #nim
18:46:26*yglukhov joined #nim
18:55:33*yuken joined #nim
18:55:36yukenTime to install Nim ;o
18:56:56FromGitter<TiberiumN> yep
18:57:04FromGitter<TiberiumN> https://github.com/dom96/choosenim
18:57:50yuken> no 64-bit option for Windows
18:57:56yukeni'll just install it manually
18:58:07FromGitter<TiberiumN> well you will able to compile for 64bit anyway :)
18:58:23FromGitter<TiberiumN> because if nim compiler is 32bit it doesnt mean it can't compile 64bit apps
19:00:01*v17d quit (Ping timeout: 276 seconds)
19:02:37yukenoh ok
19:02:40yukennimble isn't compiling
19:02:54FromGitter<TiberiumN> what's the error?
19:03:27yukenExecution of external program failed, gcc.exe - I've got that added to my path, though...
19:03:59yukenhttps://i.imgur.com/dbSsOaM.png
19:04:14FromGitter<TiberiumN> ah yes
19:04:38FromGitter<TiberiumN> probably because different architectures :)
19:04:41FromGitter<TiberiumN> scroll a bit up
19:04:50FromGitter<TiberiumN> you'll see thousands of errors
19:05:02FromGitter<TiberiumN> Nim and C compiler disagree on target architecture
19:05:04yukenyep, CreateProcess: NO such file or directory
19:05:11yukenodd thing is
19:05:22yukenI used both of these versions of Nim & the C compiler a few days ago to compile it and it ran fine.
19:05:23yukenboth 64-bit.
19:05:59*dom96|w joined #nim
19:06:21euantorDo those files exist (the .o files)?
19:06:25FromGitter<TiberiumN> hmm, I don't know then. ⏎ I've used manual install both on windows and linux, and now I use choosenim (it has built-in mingw)
19:06:37FromGitter<TiberiumN> can you scroll up in this window?
19:06:42FromGitter<TiberiumN> it should show compiler errors
19:07:28yukenBunch of this, https://i.imgur.com/X9SnEOY.png
19:07:36yukenTried to clone it again, nothing.
19:07:56yukenNone of the .o files exist in nimcache, it's all .c
19:08:12FromGitter<TiberiumN> probably you have ONLY gcc.exe in path?
19:08:14FromGitter<TiberiumN> no linker maybe?
19:08:21yukenNope, got all of mingw64 there.
19:09:15FromGitter<TiberiumN> https://stackoverflow.com/questions/3848357/createprocess-no-such-file-or-directory
19:09:35FromGitter<TiberiumN> did you also add something like this?
19:09:36FromGitter<TiberiumN> According to Code::Blocks wiki, you need to add C:\MinGW\libexec\gcc\mingw32\MinGW-Version to your PATH. There is no need to restart, but you need to open another terminal in order to get the newest PATH settings.
19:09:44FromGitter<TiberiumN> ah you did
19:09:52yukenI did, yeah.
19:10:02yukenAdded to path & restarted cmd.
19:10:38yukenUnless I have 2 instances of gcc somewhere in my path... one second
19:10:50FromGitter<TiberiumN> maybe you have win xp?
19:10:55yukenNah, Win10.
19:10:59FromGitter<TiberiumN> ok :)
19:12:37*dom96|w quit (Quit: My Mac has gone to sleep. ZZZzzz…)
19:13:11yukenFixed it, I was missing some files somehow.
19:13:17yukenmainly DLLs for mingw64
19:19:24FromGitter<TiberiumN> well, seems that mingw fails to tell that
19:23:47*krux02 joined #nim
19:24:42FromGitter<TiberiumN> dom96: about "meetups" section on this page: https://nim-lang.org/community.htmlhttps://www.meetup.com/nim-lang/ seems to be dead
19:25:02*rauss quit (Quit: WeeChat 1.9)
19:25:22federico3TiberiumN: despite the name, that meetup was in Paris only
19:25:53FromGitter<TiberiumN> there's https://www.meetup.com/The-Nim-Language-Meetup/ also
19:26:17*rauss joined #nim
19:26:28*yingjun joined #nim
19:29:02*rauss quit (Client Quit)
19:29:12*rauss joined #nim
19:30:48*yingjun quit (Ping timeout: 240 seconds)
19:38:37federico3TiberiumN: and Nim Brazil as well
19:39:30FromGitter<TiberiumN> it works for me
19:39:43FromGitter<TiberiumN> https://www.meetup.com/pt-BR/nim-br/
19:40:05FromGitter<TiberiumN> ah, you mean "dead" that there's no activity?
19:40:06FromGitter<TiberiumN> yeah
19:47:11dom96TiberiumN: You should know what to do: create a PR on nim-lang/website
19:47:43FromGitter<TiberiumN> ok!
19:48:16FromGitter<TiberiumN> dom96: also, sorry for being annoying: is there any ETA for community survey? just very curious about the results
19:48:33yukenDoes Nim have vectors built-in, or would I have to implement those?
19:48:48FromGitter<TiberiumN> you mean arrays?
19:48:52FromGitter<TiberiumN> ah
19:48:53dom96TiberiumN: nope, no ETA right now, sorry.
19:48:56FromGitter<TiberiumN> yes it does
19:49:01FromGitter<TiberiumN> "basic2d" and "basic3d"
19:49:11FromGitter<TiberiumN> modules
19:49:38yukenThanks, TiberiumN.
19:53:51*enthus1ast- joined #nim
19:54:41FromGitter<TiberiumN> dom96: https://github.com/nim-lang/website/pull/42
20:01:19*nsf joined #nim
20:04:20*nhywyll quit (Ping timeout: 240 seconds)
20:04:41*Nobabs27 joined #nim
20:08:00*Nobabs27 quit (Client Quit)
20:09:37*vivus joined #nim
20:14:51*ipjk quit (Read error: Connection reset by peer)
20:14:59*ipjk joined #nim
20:18:05*v17d joined #nim
20:18:17*nhywyll joined #nim
20:18:38krux02I also have open pull requests :)
20:18:49krux02I would like to see them merged, they are for the language though
20:19:04krux02it gives me the nice and warm feeling that my contribution is welcome in the language
20:19:50FromGitter<TiberiumN> this was a little reminder for araq and dom96 :) ?
20:20:14krux02well yes, haven't seen them very active recently
20:20:26krux02maybe vacation, or maybe a normal life, I don't know
20:20:40krux02to your question for a vector library
20:20:45krux02there is glm
20:20:56krux02it's better than basic2D and basic3D
20:21:04FromGitter<TiberiumN> yeah I know
20:21:18krux02and it is basically me who wrote it
20:21:23FromGitter<TiberiumN> basic3d library isn't looking very "nim-style"
20:21:47krux02basic3D as also not very good if you actually know how 3D graphcis work
20:21:55krux02it should be depricated in my opinion
20:21:57Araqbasic3d is old, it needs at least to support generics
20:21:58krux02it is misleading
20:22:15Araqkrux02: I'm indeed on vacation. that said, your other PR is incomplete
20:22:36AraqI wanted you to also change the type conversion rules, no conversion from arrays to cstrings
20:22:40krux02I have three and the one on size I do know it's incomplete
20:22:59krux02and still you are online here on the chat :P
20:23:06AraqI merged the "remove immediate from stdlib"
20:23:07krux02it was by the way just a guess
20:23:15krux02I saw that
20:23:25krux02thank you
20:23:27Araqthe future has arrived, I got wifi here
20:23:30*rauss quit (Quit: WeeChat 1.9)
20:23:35FromGitter<TiberiumN> lol :)
20:23:42krux02that one was the one that I put most "time" in
20:23:45krux02very tedious
20:23:52krux02haha
20:25:45krux02https://github.com/nim-lang/Nim/pulls/krux02
20:27:50krux02Araq: I have equality check on NimSym, printable arrays, and a nim version of std::rotate that is now rotateLeft
20:28:46krux02the rotate is a very old PR and I decided to give it a rewrite. It surely needs discussion, since it is an addition tothe standard library, but I think it wouldn't hurt to have it.
20:32:44krux02I think the printable array is ready for pull
20:33:36krux02and I think that echo($[1,2,3]) will be very conveniont for a lot of people.
20:33:42*v17d quit (Ping timeout: 268 seconds)
20:35:28Araqagreed.
20:35:43Araqbtw did you try {.reorder: on.} with your code?
20:35:58*Vladar quit (Quit: Leaving)
20:42:02FromGitter<TiberiumN> hmm, I have one issue, but I can't reproduce it with small example ⏎ ⏎ I'll try a bit more, and if I couldn't do it - I'll point you to the code in my project (it's opensource anyway, but sadly comments are in russian)
20:42:23krux02Araq: not yet, but when you say I should, I will try to break it :P
20:43:51krux02hmm I am on development brach and nimsuggest tells me that it doesn't know the reorder pragma
20:44:07FromGitter<TiberiumN> you must use latest version of compiler?
20:44:15FromGitter<TiberiumN> i mean really really latest
20:44:26FromGitter<TiberiumN> https://github.com/nim-lang/Nim/commit/50f62ff44a4c448eceacd2d0f8b8fe8457a2e820 ⏎ like 2 days old
20:45:01krux02ah I forgot to build the tools as well
20:47:47krux02well since it's a reorder it can't resolve mutual recursion
20:48:24FromGitter<TiberiumN> well in my project if I change the position of {.reorder: on.} pragma - error disappears :)
20:48:25FromGitter<zacharycarter> o/
20:48:30FromGitter<TiberiumN> maybe tomorrow I'll try harder to make a short reproduce script
20:48:53FromGitter<TiberiumN> because I don't want someone to try to read my code (with russian comments) xD
20:51:08krux02also when I generate the procedures, reordering doesn't help, but that is not breaking
20:51:38krux02I am still worried a bit that reording can obscure how the compiler works when the developer doesn't know about how the reordering takes place
20:52:09FromGitter<zacharycarter> yay I'm going to be giving a presentation on Nim at Carfax next week
20:53:10FromGitter<zacharycarter> any suggestions on topics I should cover?
20:53:56krux02I have an invitation to foundation of digital games
20:54:05krux02but I can't go, I don't go
20:54:19krux02too expensive to travel
20:55:04*mahtob joined #nim
20:56:08FromGitter<zacharycarter> I need a title for the talk
20:56:09FromGitter<zacharycarter> I'm thinking
20:57:50FromGitter<zacharycarter> and I have no good ideas
20:58:02FromGitter<zacharycarter> maybe just Nim: The programming language you've been missing or something like that
20:59:02krux02http://ix.io/yJR
21:00:20krux02well when you want the people to get your attention then you have to convince them that their foundation they are stinding on is crap and that Nim is the Holy Grail that solves it all
21:00:27krux02without insulting them
21:00:36FromGitter<TiberiumN> That's hard
21:00:49krux02and it's a lie
21:01:29krux02Nim has it's own problems and I am quite happy that not every newbie starts learning Nim
21:01:44FromGitter<zacharycarter> I don't want to convince anyone that Nim is the holy grail
21:01:47FromGitter<TiberiumN> But it's also dad that everyone starts insulting you if you say something about Nim (e.g. - new Nim release)
21:01:48krux02JavaScript as a good shield that sucks up all the noobs :P
21:01:52FromGitter<TiberiumN> *sad
21:02:03FromGitter<zacharycarter> but I do think Nim is a great language that can save me / us at Carfax from JS
21:02:21FromGitter<zacharycarter> I'm just going to keep it short and sweet
21:02:36FromGitter<zacharycarter> An introduction to the Nim programming language
21:02:37krux02Well I think there are small pieces missing in Nim to truly believe in it
21:02:39krux02not a lot
21:02:51krux02but I want to disable the GC once and for all
21:03:03krux02and that requires that seq and string don't relie on it anymore
21:03:33FromGitter<zacharycarter> well Nim is also still being authored
21:03:42krux02and then a working webassembly toolchain
21:03:43FromGitter<zacharycarter> and I think its direction is solid
21:03:48krux02but that is optional to me
21:03:52krux02it's just a nice to have
21:04:24krux02well I hope that my nim-mode PR gets pulled soon
21:04:39krux02I have improvement on my pile of improvement to Nim mode
21:05:15krux02I don't like that for some reasons all tests fail
21:05:51krux02I fell like because the tests fail the PR are not properly reviewed (no idea if it's true I don't get feedback), but the failing tests are not my fault
21:06:00*willprice joined #nim
21:06:06FromGitter<zacharycarter> okay so if I'm going to convince my audience that their way of coding sucks
21:06:09krux02the tests fail in both nim-mode and in my Nim PR
21:06:25krux02well not their way of coding
21:06:30FromGitter<zacharycarter> all I really have to do is bring up things like webpack, the ecosystem of react / vue / etc...
21:06:46krux02tell them that their way of coding is great and that they can transfer it to Nim
21:06:47*salewski joined #nim
21:06:48*willprice quit (Remote host closed the connection)
21:06:55krux02but their language sucks
21:06:56*willprice94 joined #nim
21:07:15FromGitter<zacharycarter> JavaScript does suck
21:07:20FromGitter<zacharycarter> and TypeScript / flow don't make it much better
21:07:36FromGitter<zacharycarter> and Java sucks too
21:07:54krux02I have the Java virtual machine
21:08:04FromGitter<zacharycarter> I hope you mean hate
21:08:06FromGitter<zacharycarter> because I hate it too
21:08:38salewskiPMunch, dom96: I have just uploaded oldgtk3 nimble package as advertized yesterday:
21:08:40krux02forced bad memory layout, forced slow startup, very bad naming conventions, oh and class loaders, yay
21:08:44salewskihttps://github.com/StefanSalewski/oldgtk3
21:08:49krux02no I am happy to not do it anymore
21:09:13FromGitter<zacharycarter> krux02: did you see my new engine project?
21:09:33FromGitter<zacharycarter> https://github.com/zacharycarter/zengine
21:09:36krux02well yes, I think so, but not the newest changes
21:09:47salewskiAnd already published sucessful, so soon a "nimble install" should work.
21:09:49FromGitter<zacharycarter> I'm working on skeletal animation now
21:10:07FromGitter<zacharycarter> are you still working on your sandbox?
21:10:25*yglukhov quit (Remote host closed the connection)
21:10:33salewskiNot much tested yet, but the files are very similar to the ngtk3 ones.
21:11:11salewskiAnd of course the gintro package is more interesing...
21:11:37salewskiBye. Will do some more tests tomorrow.
21:14:22krux02yes my sandbox in active, but I also worked on a lot of other things
21:14:36krux02writing PR for Nim for example
21:14:55krux02and improving the nim-mode for emacs
21:15:21FromGitter<zacharycarter> right
21:15:28krux02@zacherycarter I saw in your engine you have primitives like draw cube, draw model
21:15:39FromGitter<zacharycarter> I do
21:15:48krux02I explicity avoid these primitives, because I think that system doesn't scale very well
21:16:23FromGitter<zacharycarter> I plan to add a scene graph
21:16:32FromGitter<zacharycarter> but I also want to make it easy to prototype with
21:16:41krux02yea, there are common problems with scene graphs
21:17:06krux02a scene graph is a datastructure that has to fit every scenario and therefore it is doomed to fail
21:17:12FromGitter<zacharycarter> true
21:17:16krux02it is like the DOM in javascript
21:18:01krux02and when you add a scenegraph you are also just writing a game engine like there are already 100s out there
21:18:15krux02you have to focus on the things that are different otherwise you are ending nowhere
21:18:33krux02it doesn't matter how much your engine has as long as it has distinguishing features
21:18:53krux02at least that is my perspective on it
21:18:53*salewski quit (Quit: WeeChat 1.4)
21:19:15krux02I am always worried to get in the path of implementing everything engine X does well
21:19:24krux02and then I will always be behind the technology
21:19:26*Sentreen quit (Ping timeout: 246 seconds)
21:20:19Araqwise words.
21:21:00AraqI would add: don't write engines, write games
21:21:25FromGitter<zacharycarter> I never have ideas for games
21:21:37krux02well then you want my ideas book?
21:21:49krux02I have more than I can implement
21:21:52krux02most of them suck though
21:22:02FromGitter<zacharycarter> I'm okay at coming up with shitty ideas
21:22:11FromGitter<zacharycarter> it's good ideas that I'm not so great at producing
21:23:08krux02well a good idea is defined mostly in doability
21:23:41krux02therefore it should be planed to the end
21:23:55krux02not everything, but for most of the things you should have ideas of how to do it
21:24:05krux02and do it with abstract graphics
21:24:15krux02I really like the concept of demake
21:24:39krux02most of the demake games take a game and show how it could look 8-bit
21:24:44krux02but I don't mean that
21:24:56krux02I mean take a game that normally takes up hours to play
21:25:08krux02and make a 5 minutes version out of it
21:25:53krux02make empire earth and strip everything so that you can play it in 5 minutes
21:26:07Araqcreate a RTS inspired by Warcraft 1.
21:26:43Araq"why WC1?" I hear you asking. ok, here is why.
21:27:52krux02WC1 is simple and actually can be implemented by a single person
21:28:04Araqin WC1 you cannot build your HQ near the gold mine, you only have one HQ and its position is fixed. that means you need to conquer more and more of the map to keep your workers safe which have to travel ever longer distances.
21:28:40Araqmakes it a very interesting RTS design. ymmv.
21:29:24krux02well the demons that you can summon from the mages are totally overpowered, I think most powerful unit in the game, but only cost mana
21:29:28krux02but yea
21:29:37krux02I think that is just a detail
21:29:52krux02I think the most important part is to take an idea and strip it from unnecessary clutter
21:30:15krux02most people I work with only attach unnessary ideas to a game and make the game in my opinion less good
21:30:59krux02sorry not most people, but I had the experience
21:31:10krux02less is more
21:31:38FromGitter<zacharycarter> Araq: any suggestions on topics I should cover in my talk?
21:32:02krux02who is your audience?
21:32:06krux02c++ developers
21:32:11krux02javascript developers?
21:32:23krux02python developers?
21:32:26FromGitter<zacharycarter> java script and Java developers
21:32:38*Sentreen joined #nim
21:33:09krux02well generally speaking show them macros, for me personally the most important feature
21:33:18FromGitter<zacharycarter> okay
21:33:23FromGitter<zetashift> A bit about karax too?
21:33:42krux02I don't know if you can convince a java(script) developer with low level access when they have to idea of how to benefit from it
21:34:05FromGitter<zacharycarter> I was going to show them https://play.nim-lang.org
21:34:35FromGitter<zacharycarter> my intro was going to be showing them that, showing them my game engine and then showing them an amazon lambda job running in Nim
21:34:35krux02show them generics and how much they are like duck typing that is so important to people coming from dynamically typed languages
21:34:52FromGitter<zacharycarter> okay so macros generics gotcha
21:35:20krux02I think it is important that you give them something familiar
21:35:26krux02something they can relate with
21:35:41FromGitter<zacharycarter> the playground website they should be able to
21:35:47krux02so that they see that they can feel comfortable in the Nim language
21:35:51FromGitter<zacharycarter> it's a simple web app and they're mostly going to be front end / back end developers
21:35:53FromGitter<zacharycarter> right
21:36:00krux02and then show them how un unleach their chains
21:36:23krux02I don't know about the state of nim to javascript compilation
21:36:42krux02and when it sucks I don't know if you should show it
21:37:09FromGitter<zacharycarter> @zetashift the playground website was written with karax
21:37:12krux02but one language for front/backend is something that will get people interested
21:37:19FromGitter<zacharycarter> yeah
21:37:33FromGitter<zacharycarter> I'll show them FFI too
21:37:35FromGitter<zacharycarter> with JS anyway
21:37:43krux02it won't get them doing the change, for that the language needs to actually have benefits
21:37:56*nsf quit (Quit: WeeChat 1.9)
21:38:13krux02yes show them a macro that does automatic json serialization
21:38:24*willprice joined #nim
21:39:04krux02there is json serialization in the standard library, but I don't mean that, show them that they have full control over that
21:39:37*willprice quit (Max SendQ exceeded)
21:39:53*willprice94 quit (Read error: Connection reset by peer)
21:40:06*willprice joined #nim
21:40:14FromGitter<zacharycarter> looks like I have an hour so I should be able to do that
21:40:55Araqkrux02: the JS codegen is almost on par with the C codegen, all things considered
21:43:39krux02cool
21:44:15krux02Araq: I have the code example thet breaks with reorder on: http://ix.io/yJS
21:46:10krux02Araq: are there any compiler hoos that I can interface with macro functions?
21:46:35krux02I am thinking about writing a macro that adds my own debug information
21:49:09krux02hooks I mean not hoos
21:49:12krux02http://ix.io/yJT
21:49:22krux02that should not work
21:52:03*def-pri-pub joined #nim
21:52:24def-pri-pubAraq: have you looked at my proposal for fixing the `dlopen()` issue for Linux?
21:53:27*Nobabs27 joined #nim
21:56:23Araqdef-pri-pub: there is a better fix
21:57:01Araqthe config already contains:
21:57:04Araq@if freebsd or openbsd or netbsd:
21:57:05Araq gcc.options.linker = "-Wl,-rpath=.:/usr/local/lib:/usr/pkg/lib:/usr/X11R6/lib"
21:57:05Araq….
21:57:17Araqwe only need to extend it to linux
21:59:54Araqbut I cannot test it. can you?
22:00:04*Matthias247 quit (Read error: Connection reset by peer)
22:00:05def-pri-pubSure. Is there a branch out for that?
22:01:26def-pri-pubWait, where would I find this config?
22:01:34FromGitter<zacharycarter> it's in the nim repo
22:01:35Araqadd 'or linux' to nim.cfg
22:02:00Araqwell actually, only
22:02:17Araqrpath=.:/usr/local/lib should be required for linux
22:02:21Araqbut you get the idea
22:02:35*willprice quit (Ping timeout: 240 seconds)
22:02:36FromGitter<zacharycarter> https://github.com/nim-lang/Nim/blob/devel/config/nim.cfg
22:03:49def-pri-pubYeah, that works.
22:04:42FromGitter<zacharycarter> def-pri-pub is this to get raylib working?
22:05:09def-pri-pubYeah, dynamic linking on LInux.
22:05:18FromGitter<zacharycarter> gotcha
22:05:28FromGitter<zacharycarter> my engine is catching up :P
22:07:01def-pri-pubAraq: submitted a patch
22:07:09FromGitter<zacharycarter> not really raylib still has a ton of functionality mine doesn't
22:07:33def-pri-pubEh, I'm still trying to sort of other things with Raylib.
22:07:41def-pri-pubNamely fixing up the build system.
22:07:53def-pri-pubAll I wanted to do was write some Nim bindings...
22:08:00FromGitter<zacharycarter> lol
22:08:30FromGitter<zacharycarter> you could help me with zengine instead if you get bored
22:08:51def-pri-pubAnd now I'm fixing a build system, started a discussion on library names for GLFW, and submitted a patch to Nim...
22:09:33def-pri-pubI might want to. As nice as raylib seems, there are some problems that I am seeing with it. I want to see these bindings through, and help fixup the build system. One thing at a time.
22:11:08yukenHm.
22:11:31yukenzacharycarter, the main reason i want to use Nim, or a programming language similar to it, is so that nothing is done in those... drag-n-drop systems you have in Unity, UE4, or Godot
22:11:35yukenthink that makes sense? ;o
22:12:28FromGitter<zacharycarter> well maybe
22:12:33FromGitter<zacharycarter> but there are better options honestly
22:12:51yukenWell, go on if you have them.
22:12:56yukenI haven't started with Nim, so I'm open ears.
22:13:09FromGitter<zacharycarter> I'd say you use Nim if you want to use something niche / experimental and you want to build your own product not rely on a lot of other code
22:13:25FromGitter<zacharycarter> having said that Nim is terrific in terms of FFI
22:13:30yukenI just want something relatively simple, where I don't have to use UIs (or workarounds to avoid using the UIs)
22:13:33FromGitter<zacharycarter> so you can leverage existing code, but you must bind to it
22:13:41yukenI just like the workflow better.
22:13:59FromGitter<zacharycarter> libgdx is one option
22:14:06FromGitter<zacharycarter> haxe / that whole ecosystem is another
22:14:08yukenOh, and
22:14:15FromGitter<zacharycarter> this is all game speak btw
22:14:16yukenpreferably able to run in a web browser with HTML5/etc
22:14:30FromGitter<zacharycarter> maybe you might want to look at libgdx
22:14:40yukenLibGDX is... Java, correct?
22:14:46FromGitter<zacharycarter> right
22:15:06ipjkHaxe does that, just like Nim. It compiles, in a similar way. Both uses various compiler-backends.
22:15:19yukenWould I require 3rd party dependencies that I can't distribute in the binaries with that?
22:15:20yukenLike uh
22:15:20yukenjava.
22:15:40FromGitter<zacharycarter> there are ways to bake those games with a distributable jvm
22:15:42ipjkThat depends if you dynamicly or staticaly link it
22:15:51FromGitter<zacharycarter> but if you want to stay away from the JVM then haxe
22:16:09FromGitter<zacharycarter> there's actually an engine I've been following for a while written in haxe
22:16:13yukenI mean
22:16:16yukenI could go full JS/HTML5
22:16:19yukenand publish with Electron.
22:16:21FromGitter<zacharycarter> http://snowkit.org/
22:16:34FromGitter<zacharycarter> heh sounds like you want C/C++ or an alternative
22:16:35yukenoh god
22:16:39FromGitter<zacharycarter> then yes Nim is your best option
22:16:39yukenI hate those sites that don't work with Dark Reader
22:16:42yukenblinding white light.
22:16:53yukenzacharycarter, I don't care _what_ it is, so long as:
22:17:14*Nobabs27 quit (Quit: Leaving)
22:17:16yukenI can publish to multiplatform and HTML5 without restrictions, and I don't have to mess with a clunky UI or drag-n-drop stuff.
22:17:46ipjkyuken: Haxe enables those wishes
22:17:46yukenand preferably? Something relatively simple, though that isn't a requirement ;^)
22:17:59FromGitter<zacharycarter> there will always be restrictions when publishing to html
22:18:09yukenWell, restricitons as in
22:18:11FromGitter<zacharycarter> unless you want to write two separate code bases
22:18:18yukenthe engine putting limits on whether you can do it or not without paying, having splash screens, etcv.
22:18:28*Nobabs27 joined #nim
22:18:31FromGitter<zacharycarter> do you mind emscripten?
22:18:36yukenNever used it.
22:18:38FromGitter<zacharycarter> or web assembly
22:18:41FromGitter<zacharycarter> so something like
22:18:46yukenNever used that either! :p
22:18:52FromGitter<zacharycarter> http://www.raylib.com/examples.html
22:19:09yukenzacharycarter, want to see a video of what I'm trying to achieve?
22:19:11FromGitter<TiberiumN> Well ue5
22:19:25FromGitter<zacharycarter> should just use my engine and help me with it :P
22:19:32FromGitter<zacharycarter> sure yuken
22:19:34yukenmaybe, maybe.
22:19:34FromGitter<TiberiumN> unreal engine 4 is fully free and open source
22:20:01yukenzacharycarter, here is an early, scrapped (too much regex) build of my game: https://www.youtube.com/watch?v=RJfnUScp7Yk
22:20:08FromGitter<TiberiumN> But yeah, I'm not a game developer
22:20:10yukenTiberiumN, my system has problems running UE4 Editor.
22:20:14yukenHD 5770 is too weak x-x
22:21:03FromGitter<zacharycarter> yeah I mean you could build something like that with sdl2 / Nim pretty easily
22:21:25yukenProblem with that engine is:
22:21:27FromGitter<zacharycarter> I remember speaking with you last week yuken and you showed me that vid
22:21:33FromGitter<zacharycarter> BYOND
22:21:34yukenRequires you to use their client, doesn't port to Linux/OS X, web client is shit, lots of minor issues
22:21:36FromGitter<zacharycarter> :)
22:21:38yukenyeah, BYOND.
22:21:58FromGitter<zacharycarter> BYOND is going to be a lot further than anything you'll encounter in Nim
22:22:00yukenThankfully, BYOND didn't use some alien syntax, it's apparently pretty similar to C in some ways
22:22:16FromGitter<zacharycarter> in terms of features etc
22:22:25FromGitter<zetashift> GDNative(Godot bindings) bridge with Nim has also a release: https://github.com/pragmagic/godot-nim and I really liked nimgame2!
22:22:26yukenWell, built-in features, probably
22:22:32yukenit comes with networking, and is made for game dev
22:22:37yukenso it has a lot more game dev features built-in.
22:22:59FromGitter<zacharycarter> ugh godot
22:23:09yukenI was thinking of Godot, but that's just like Unity
22:23:14yukengotta use nodes and drag crap around.
22:23:30FromGitter<zacharycarter> just use my engine :) and then help me build it
22:23:38yukenwhich engine? frag?
22:23:43yukenalso
22:23:44FromGitter<zacharycarter> nah
22:23:45FromGitter<zacharycarter> done with frag
22:23:51FromGitter<zacharycarter> https://github.com/zacharycarter/zengine
22:23:54yukencompiling is a lot slower on my Pentium G3258 than my i5-3470 :(.
22:23:59yukenEven at 4.3GHz vs 3.2GHz
22:24:09yukenah right, that kajigger
22:24:19yukenWould I be able to easily implement networking? If so, I'm in ;o
22:24:43FromGitter<zacharycarter> I'd have to pump out a networking library
22:24:47FromGitter<zacharycarter> or you would
22:24:53FromGitter<zacharycarter> or you'd have to write it all yourself
22:25:34yukenAlso, how do object/class types work in Nim? In BYOND, I could just define something like...
22:25:35yukenhttps://gist.github.com/YukenK/f4b23de19d8800821fe10dc0207c5db4
22:25:36FromGitter<zacharycarter> Nim has pretty good socket support
22:25:43*arnetheduck quit (Ping timeout: 255 seconds)
22:25:57yukenBYOND uses var and proc like Nim though, which surprised me lol
22:26:10*Nobabs27 quit (Quit: Leaving)
22:26:58FromGitter<zacharycarter> you can't do that in Nim
22:27:16yukenHOw would I do that, or something similar?
22:28:43*yingjun joined #nim
22:28:48FromGitter<zacharycarter> You'd do something like this ⏎ ⏎ ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=597a6920c101bc4e3ac82833]
22:29:49*Sentreen quit (Ping timeout: 255 seconds)
22:30:00FromGitter<zacharycarter> you also have generics at your disposal
22:30:00yukenAh, that's rather simple.
22:30:19FromGitter<zacharycarter> so something like
22:30:27yukenso each "child" of that would just be a variable?
22:31:03FromGitter<zacharycarter> yes but you have to define them beforehand
22:31:13yukenMakes sense.
22:31:24FromGitter<zacharycarter> in other words you can't do this
22:31:29yukenBYOND is stupidly simple, so even some of the basic stuff in languages like this is a bit uh
22:31:30yukennew to me.
22:31:48FromGitter<zacharycarter> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=597a69d4614889d475f801ef]
22:32:35yukenzacharycarter, I don't fully understand that bit.
22:32:50*yingjun quit (Ping timeout: 240 seconds)
22:33:16FromGitter<zacharycarter> so I'm dynamically adding the type someOtherProp at runtime to the object Skill
22:33:23FromGitter<zacharycarter> it wasn't defined before the program ran
22:33:28yukenah
22:33:31yukencan't do that in BYOND either.
22:33:35FromGitter<zacharycarter> that's not allowed
22:33:44def-pri-pubhttps://github.com/zacharycarter/zengine/blob/master/examples/src/zengine_examples/00_Initialization/main
22:33:46yukenSo that's the same as BYOND then.
22:33:52def-pri-pubPutting an executable into git?
22:33:54def-pri-pubFor shame.
22:33:56yukenGotta have everything defined at runtime.
22:34:12FromGitter<zacharycarter> def-pri-pub: hahaha me so lazy
22:34:35FromGitter<zacharycarter> I'll remove it
22:36:09FromGitter<zacharycarter> fixed
22:36:30yukenzacharycarter, https://github.com/YukenK/HunterNin - dig around through the code to see how uh
22:36:38yukendead simple BYOND is compared to other languages.
22:38:50*user0 joined #nim
22:41:50*enthus1a1t- joined #nim
22:41:56*Snircle quit (Excess Flood)
22:41:57*enthus1a1t joined #nim
22:41:59FromGitter<zacharycarter> it definitely looks high level
22:41:59FromGitter<zacharycarter> and almost geometric haha
22:42:14*acidx_ joined #nim
22:42:49*ftsf quit (Ping timeout: 577 seconds)
22:42:50*acidx quit (Remote host closed the connection)
22:43:00*Sentreen joined #nim
22:43:01*Snircle joined #nim
22:43:13*ftsf joined #nim
22:43:27*user0_ quit (Remote host closed the connection)
22:44:17user0How would you break down a string into a seq[char] and then sort, and join it? like my_string.array.sort.join
22:44:50*mahtob quit (Ping timeout: 247 seconds)
22:45:47*mwbrown quit (Ping timeout: 269 seconds)
22:46:05*mwbrown joined #nim
22:46:51*enthus1ast quit (Ping timeout: 240 seconds)
22:48:07*enthus1ast- quit (Ping timeout: 260 seconds)
22:55:02FromGitter<TiberiumN> Well for converting a seq of chars to string you can also use cast
22:55:22FromGitter<TiberiumN> But I don't know if this is the best way
23:11:09*nhywyll quit (Quit: nhywyll)
23:26:05*ipjk quit (Quit: Leaving)
23:38:00*dankrad joined #nim