<<16-02-2013>>

00:34:23*Anaphaxeton quit (Read error: Connection reset by peer)
02:07:10*fowl joined #nimrod
02:56:04*q66 quit (Remote host closed the connection)
08:22:27*gour joined #nimrod
08:34:43*fowl quit (Ping timeout: 248 seconds)
08:48:13*fowl joined #nimrod
08:51:26dom96reactormonk: I see you're hard at work with the JS backend. Nice job :)
09:07:02*gour quit (Disconnected by services)
09:07:03*gour_ joined #nimrod
09:52:23*fowl quit (Ping timeout: 260 seconds)
10:38:50*FreeArtMan joined #nimrod
10:54:01*Anaphaxeton joined #nimrod
11:32:29*filwit joined #nimrod
11:33:03filwitmorning folks!
11:33:49filwitwhenever you get guys are around, check out my Nimrod Web Design mock up, here: http://reign-studios.com/nimrod/web-design.png
11:35:24*q66 joined #nimrod
11:36:20filwitlet me know what you think, or if you'd like to see something changed (not sure I have enough Gold in there for Araq), and I will try and see what I can do.
11:36:26filwithi q66
11:37:17q66hi
12:07:18*Anaphaxeton quit (Read error: Connection reset by peer)
12:09:25*FreeArtMan quit (Quit: rm -rf /)
12:21:59*Anaphaxeton joined #nimrod
12:24:18*filwit quit (Quit: Leaving)
13:44:11*Anaphaxeton quit (Remote host closed the connection)
13:51:56*Anaphaxeton joined #nimrod
14:07:57*filwit joined #nimrod
14:11:03*Anaphaxeton quit (Quit: Αποχώρησε)
14:26:04*filwit quit (Quit: Leaving)
14:32:03*Anaphaxeton joined #nimrod
14:38:59*Anaphaxeton quit (Quit: Αποχώρησε)
14:41:50*meeeee joined #nimrod
14:51:44*zahary1 joined #nimrod
15:08:40*Anaphaxeton joined #nimrod
15:18:21*Anaphaxeton quit (Remote host closed the connection)
15:20:54*Anaphaxeton joined #nimrod
15:22:29*Anaphaxet0n joined #nimrod
15:23:10*Anaphaxeton quit (Read error: Connection reset by peer)
15:53:18*exhu joined #nimrod
15:54:30exhufilwit, the design is glamorous -) although i suppose it's traffic heavy.
16:08:33*Anaphaxet0n quit (Remote host closed the connection)
16:22:10dom96filwit's design is absolutely beautiful.
16:26:21*exhu quit (Quit: Ex-Chat)
16:27:36Araqfilwit's design could indeed use more gold ;-)
16:28:07dom96I think it's perfect already.
16:28:17dom96You and your gold... :P
16:28:17Araqha, I knew you'd love it
16:30:08dom96well at least you don't want a picture of some trees or a sunset in there :P
16:30:25Araqhmm
16:30:35dom96NO
16:31:17Araqperhaps we need a crappy background full of 0s and 1s :P
16:31:26Araqbecause it's about "programming"
16:31:42dom96bleh
16:32:19dom96I think this design is perfectly fine, and we should be worshipping filwit for his great work ;)
16:32:49AraqI think we should do a voting on the forum
16:33:27Araqbut if we switch to that design, I'd prefer to switch the design when 1.0 or a significant milestone is released
16:34:10dom96i think if anything then on the release
16:34:15dom96*next release
16:34:25Araqthe fonts he used are excellent btw, I like them very much
16:34:42AraqI wonder if these are standard fonts
16:36:03Araqwell we'd better include important features in the next release
16:36:08Araq*for
16:36:25dom96yes :P
16:45:49dom96so what's up Araq?
16:53:59*_ponce quit (Remote host closed the connection)
16:54:04*FreeArtMan joined #nimrod
16:54:11*_ponce joined #nimrod
16:58:58gour_"User defined type classes" are not implemented ( yet)?
16:59:07*gour_ is now known as gour
17:00:20Araqdom96: not much, I'm still working on the generational GC
17:00:41Araqgour: afaik, yes
17:02:48gourthey're planned for 1.0?
17:03:08Araqnot sure ;-)
17:03:16Araqit's not on my todo
17:03:58dom96what are these "type classes" exactly?
17:04:07Araqask zahary
17:06:30gouralthough not familiar-enough with neither nimrod nor D, but I consider that the former has much more stuff in a very nice shrink-wrapped package
17:06:33gourok
17:06:35zahary1well, you can read about them in the manual
17:06:55gourzahary1: what's the plan with user-defined ones?
17:09:00*Anaphaxeton joined #nimrod
17:12:13zahary1they will be similar to the protocols in clay - just a predicate that is either true or false for a given type. the most common type of predicate should just check that a piece of usage code compiles for the given type and there will be a simple syntax in type sections that optimises this case
17:13:43gourzahary1: should i investigate about clay language?
17:13:45gour:-)
17:17:45zahary1https://github.com/jckarter/clay/wiki/Protocols
17:18:54zahary1http://channel9.msdn.com/Events/GoingNative/GoingNative-2012/A-Concept-Design-for-C- the updated plans for concepts in C++ are somewhat similar too (even more than clay)
17:27:35gourthanks
17:27:51*Anaphaxeton quit (Quit: Αποχώρησε)
17:28:12*Anaphaxeton joined #nimrod
17:28:42dom96aww, I can't create infix operators from words?
17:28:53reactormonkdom96, div isn't one?
17:29:11Araqyeah but 'div' is a keyword
17:29:20dom96yeah, I mean non keyword operators.
17:29:39Araqmake a proposal, I'd like to have them too
17:29:51AraqI don't think it can work with the current parser though
17:30:57Araqon the other hand x.infixOperator(y) is not too bad
17:31:07dom96well say I declare:
17:31:21dom96proc `bh`(foo, bar: int): int = ...
17:31:27dom965 bh 12
17:31:34reactormonkAraq, found the bug btw
17:31:35dom96Parser cannot handle that I guess
17:31:41Araqreactormonk: which one?
17:31:48Araqdom96: indeed
17:32:00Araqit should not rely on the symbol table
17:32:10Araqso anything you have to declare doesn't work
17:32:40dom965 ~bh 12?
17:32:43Araqyou need to come up with things like: a |infix| b
17:33:13Araqor: 5 ~bh 12, yeah
17:33:33*zahary1 quit (Quit: Leaving.)
17:33:46Araqa `infix` b would be nice, but it's ambiguous
17:35:28reactormonkAraq, https://github.com/Araq/Nimrod/issues/329 https://github.com/Araq/Nimrod/issues/328
17:35:38dom96a (bh) b # definitely ambiguous right?
17:36:13*zahary1 joined #nimrod
17:36:56dom96Thing is: having special symbols for this means that it's not consistent with the current infix keywords :\
17:37:55*Anaphaxeton quit (Quit: Αποχώρησε)
17:38:21*Anaphaxeton joined #nimrod
17:39:28*Anaphaxeton quit (Remote host closed the connection)
17:39:46*Anaphaxeton joined #nimrod
17:40:26Araqreactormonk: yes for #328
17:40:40Araqdunno about #329
17:40:49Araqwhat caused unittests to fail for JS?
17:41:19Araqdom96: yeah but it was a conscious design decision
17:41:25dom96Araq: out of curiosity, why did you decide to use keywords for things like bit shifting etc?
17:42:06Araqbit shifting was a close call, but << has the wrong precedence given Nimrod's precedence rules
17:43:08Araqand I wanted to keep them simple (they are a more complex now anyway)
17:44:13Araqdom96: I really don#t want to write x `or` y `and` z, so I made them keywords
17:45:25dom96yes, well, I meant. Why keywords instead of |, ||, && etc. Just because of precedence rules?
17:46:24Araq|| and && are uglier
17:48:43Araqin my mind they are like 'if', I don't use ?? for 'if' either
17:50:00dom96that's an interesting way of looking at it. I completely agree with you of course.
17:53:29*meeeee quit (Quit: meeeee)
18:51:18*Anaphaxeton quit (Quit: Αποχώρησε)
19:05:54reactormonkAraq, I sneaked in two other commits - are they good to merge?
19:06:23Araqlet me have a look
19:09:30*gour reached the end of the manual (1st slow reading)..
19:09:39reactormonkgour, yeah, it's short.
19:10:58gourAraq: once again, congrats for putting together very well-designed language...now i've better understanding why noSideEffect/func is not a big issue considering how many pragmas are on disposal for programmer
19:12:09*zahary2 joined #nimrod
19:12:17*zahary1 quit (Ping timeout: 252 seconds)
19:12:43reactormonkI'd prefer a sligtly less verbose syntax for pragmas, but fuck it.
19:13:52Araqactually I thought about using Unicode's « » as alternatives for {. .}
19:14:05reactormonkis that complicated?
19:14:15dom96reactormonk: what's less verbose than the current syntax?
19:14:25reactormonkdom96, no idea.
19:14:44Araqreactormonk: no but it means « » is not available for operators anymore then
19:14:53reactormonkhm
19:15:02Araqwell currently every unicode char is valid for identifiers only
19:17:25Araqyou can use {. } instead of {. .} btw but I'm not sure it's a good idea
19:21:09NimBotAraq/Nimrod 2a7aaf8 Simon Hafner [+0 ±1 -0]: UTC weekday in JS
19:21:09NimBotAraq/Nimrod 4847427 Simon Hafner [+0 ±1 -0]: elif on JS instead of generic else
19:21:09NimBotAraq/Nimrod 5448432 Simon Hafner [+0 ±2 -0]: on the path to get unittest running from JS
19:21:09NimBotAraq/Nimrod a09bea1 Simon Hafner [+1 ±1 -0]: WA for #329, caused by #335
19:21:09NimBotAraq/Nimrod eb724a4 Araq [+1 ±3 -0]: Merge pull request #336 from Tass/unittest... 3 more lines
19:21:55Araqreactormonk: what's the problem with #335?
19:22:10reactormonkAraq, come again?
19:22:33Araqnote that I deliberately don't use the lambdalifting pass for the JS backend
19:22:40Araqas JS supports closures natively
19:22:59reactormonkAraq, well, test the code
19:23:14AraqI don't want to
19:23:20Araqthat's why I ask :P
19:23:51reactormonkAraq, the problem is that the proc is generated as a function outside the inner function.
19:24:02Araqah
19:24:05Araqfix it :P
19:24:29reactormonk http://sprunge.us/LADe
19:27:32reactormonkAraq, maybe
19:41:30*Anaphaxeton joined #nimrod
19:47:10gouris there some lib for calculus available in nimrod?
19:51:05dom96Araq: hrm, what's the deal with the implicit 'result' variable and first class iterators?
19:53:10dom96gour: Sadly I don't think there is.
19:54:53gouris there some plan to have some support of mac os x packages in niminst or this is covered by UNIX shell scripts?
19:55:23dom96I think gradha was planning on implementing something.
19:55:33dom96Might want to ask him when he's around.
19:58:15gourok
19:58:50gourthe next step for me would be to play with c2nim in order to provide bindings for 3rd party C lib we'd need for our project..
20:04:21gouris niminst good-enough to provide complete build for nimrod-based projects?
20:04:59dom96niminst is designed to create installers.
20:05:17dom96If that's what you're after, then yes.
20:06:09gourisn't build.sh used to build nimrod itself created by niminst?
20:06:33dom96Yes.
20:06:55dom96You can also get a Inno setup installer for Windows using niminst.
20:07:39gourwell, for windows & mac i'd like to provide installers, but linux would be native platform, so how to build nimrod project from the source?
20:08:09gour...and e.g. make debian/ubuntu/rpm/etc. package from it later?
20:09:18dom96actually niminst supports the creationg of .deb packages
20:09:24dom96*creation
20:09:37*XAMPP-8 joined #nimrod
20:09:49dom96from source you just do: nimrod c app.nim
20:10:47dom96You can also just generate C sources (using niminst IIRC) and then give that to your users, they will then only need a C compiler to compile your app.
20:11:04gouri didn't know about ability to create .deb..cool...but what about when one has the whole source tree, with several nimrod-based libs to create/link etc.?
20:12:33dom96You can use babel to install them, and then it's as simple as nimrod c app (if your app simply imports that library)
20:12:34gouri spent (too) much time looking/evaluating different build systems (cmake, scons, waf, premake, tup, bento...) to find something adequate, so having all he infrastructure ready from within nimrod, would be great
20:13:01dom96if you want to dynamically link to a nimrod library which has already been compiled then that is a bit more complex.
20:14:56*zahary2 quit (Quit: Leaving.)
20:15:02gouri also have need to build nimrod bindings for the C lib, then have some 'target' for creating docs etc....none of the before-mentioned build systems do not have explicit support for nimrod, although probably adding it to waf/tup could not be difficult...
20:15:27gourhowever, in case of waf this involves new dep (python) :-/
20:17:26reactormonkAraq, would you have an idea how to fix it?
20:17:43dom96well if you need to build C libraries then you're forced to use whatever they use.
20:19:42gourdom96: C library is built using simple make, but the point is to integrate the whole build in one single build system...of course, i excluded autoconf considering we deserve something better today
20:24:03dom96what C libraries do you want to use?
20:24:14dom96Do you have some custom C libraries?
20:24:41dom96Because if they are pretty popular then they will be compiled already and available for most platforms, so you will just need to distribute the DLLs
20:27:02gourdom96: it's kind of niche library - http://www.astro.com/swisseph/swephinfo_e.htm?lang=e i did not find it available in many distros, so i'd like to include its sources, built it, build nimrod bindings as well as the rest of the project using it
20:27:35Araqreactormonk: yeah but explaining it is not that easy
20:27:42gourother things which we'd need is sqlite3, but that's not the problem
20:28:19reactormonkAraq, what to read?
20:30:46dom96gour: Just use some bash file that builds it all for you I guess, or write a Nimrod app which does it, or use tup. There are many choices. I don't do much C compiling so I'm not sure what the best approach is.
20:31:30gourdom96: i haven't looked, but how do you build aporia?
20:31:41dom96gour: nimrod c aporia
20:31:42dom96:P
20:31:53goursingle file?
20:32:33dom96nimrod compiles in all the modules which aporia.nim uses.
20:32:45dom96so it's just a matter of compiling the main file.
20:32:51gourooh, that's good
20:33:17gourso, nimrod-side is no problem then
20:38:16*fowl joined #nimrod
20:40:44*filwit joined #nimrod
20:40:58filwithi
20:41:31Araqreactormonk: line 970 of the JS codegen
20:41:32dom96filwit: Your design is absolutely sexy.
20:41:50filwitthanks dom96, glad you like it :)
20:42:03Araqit adds the proc body to 'p.g.code' which is the produced JS file
20:42:05filwiti'm not sure about the colors
20:42:15Araqfilwit: excellent work!
20:42:23Araqbut the colors need more gold ;-)
20:42:32filwitha! i knew it!
20:42:36dom96Araq and his gold...
20:42:41filwitwhat are you thinking?
20:43:02Araqapparently we spent way more time together than I remember :P
20:43:33filwityes, lol
20:43:44filwitdo you want to logo to be gold instead of blue?
20:43:51gourmy monitor shows everything too dark, so cannot comment on colors, but design is very fine
20:44:24filwit(i will have to reverse the accent colors [blue where there's gold, etc] that way)
20:44:28filwitthanks, gour
20:44:44filwiti will try and brighten the grey up if things are too dark
20:45:17Araqfilwit: yeah perhaps, I don't the blue, but it's weird the crown is not gold
20:45:18gouri'll try to check tomorrow on my netbook which shows 'em more realistic
20:45:20filwitthough you might try adjusting your colors, i keep my monitor pretty balanced and it looks good (IMO) the level of dark-grey
20:45:26Araq*I don't mind the blue
20:45:35filwitgour: okay, let me know if you think it's still too dark
20:45:48*gour has old 17" CRT...
20:46:01*Anaphaxeton quit (Quit: Αποχώρησε)
20:46:13filwitgour: ahh.. that makes sense
20:46:23filwitgour: you shouldn't sit in front of that thing
20:46:26filwitlol
20:46:32filwitjp
20:46:58filwitAraq: i will try adjusting things.. but you can't really use the gold and the blue (both) on the logo
20:47:12filwitthey conflict too much, it looks ugly, i tried
20:47:16gourthe paradox is that i've i7 with 8GB...but atm, budget is in such condition :-/
20:47:26*Anaphaxeton joined #nimrod
20:48:48AraqI don't upgrade my CPU anymore so that the compiler doesn't get too slow on older machines :D
20:48:51filwitAraq: both the blue and the gold are exciting colors (they grab your attention) so you have to combined them with a neutral color (like white, grey, black, brown, etc)
20:49:00gourfilwit: checked with my netbook...still i considered it a bit too dark
20:49:06dom96Araq: Get a raspberry pi :P
20:49:15filwitgour: okay, i will see what i can do there
20:49:40Araqfilwit: alright then I prefer gold over blue
20:49:53Araqit's a *crown* anyway
20:49:55filwitAraq: upgrade, but keep the old machine around as a test computer?
20:50:14gourfilwit: i'd prefer having lighter sidebar like in present version
20:50:18filwitAraq: okay, will try it that way and post another mock-up
20:50:21Araqfilwit: nah, I have no reason to upgrade anyway
20:51:51filwityou don't do anything with your computer besides program Nimrod?
20:52:04filwitwhat about watching movies?
20:52:21filwitguess computers have been able to play movies fine for ages huh...
20:52:31Araqit's an intel quad core, not too old
20:52:34*gour has to do some video-editing using cinelerra
20:52:59*filwit taxes the shit outta his system
20:53:33filwiti use a lot of demanding art programs, so having a good system is important
20:53:45Araqand cpus stopped getting faster years ago :P
20:53:51filwitplus, i play a couple video games (CS:GO & Skyrim)
20:54:00filwitlol, yeah true
20:54:18dom96Only thing my PC is missing is RAM...
20:54:21filwitthat's why i can't wait for Parallella to get faster
20:54:34dom96and somehow every new stick I buy fails to work :\
20:54:40filwitlame
20:54:41reactormonkAraq, uh-oh
20:54:57filwiti have 8gb, and Linux only ever uses ~ 2-3
20:55:04filwiteven with tons of stuff open
20:55:11filwitso it's kinda overkill
20:55:29filwitOpenShot sometimes eats it all up, but that's due to a bug I think
20:55:46reactormonkfilwit, use chromium and java
20:55:55gourfilwit: any news in regard to openshot's C++ lib?
20:56:02filwiti use Chromium.. don't know about Java though
20:56:04Araqbootstrap nimrod with --gc:none and compile aporia with it :P
20:56:50filwitbut even chromium takes up... lets see combined, ~300mb
20:56:55dom96I only have 2GB :\
20:57:10filwitgood thing you use Arch, domb96 :)
20:57:37dom96Doesn't help much :P
20:57:43filwitgour: i don't know anything about OpenShot's C++ lib, sorry
20:57:51dom96Currently using 1.5GB RAM and 500MB swap.
20:57:59*gour moved to debian after ~5yrs with arch and before that ~5yrs with gentoo
20:59:00*filwit no longer respects any of gours opinions
20:59:10filwit:p
20:59:35filwitseriously though, how could you leave Arch for Debian?
20:59:45gourfilwit: jonathan (openshot dev) is working for quite some time on the new lib written in C++ - http://www.openshotvideo.com/2012/12/openshot-library-introducing-time-curves.html
21:00:12gourtoo bad nimrod was not really available, 'cause it would be much better than python
21:01:19gourfilwit: i do not have so much time to tinker with my system as i used to have...besides that i was not overly happy with the quality which deteriorated in last few years...then things like systemd etc,
21:01:42filwityou don't like systemd?
21:01:54filwiti found it to be much easier than before
21:02:06filwitbut i don't know much about things at that level
21:04:23gourwell, init scripts 'just works' while i had problems with systemd when evaluating frugalware which is nice 'fork' of arch (e.g. no AUR)
21:04:58gourwhat are the blockers for 0.9.2?
21:06:42*Anaphaxeton quit (Read error: Connection reset by peer)
21:07:30Araqdunno, a couple of bugs and a few missing features
21:07:54gourso, not far away ;)
21:08:32Araqplus releases take too much of my time so I barely manage to make more then 2-4 per year
21:09:06gourrelease manager?
21:09:26Araqit's mostly automated already
21:09:51Araqwindows and mac os X testing machines would be very helpful though
21:10:03gourwhat takes most of the time then?
21:10:20gouri can winxp under vbox, not other OS-es
21:10:25gour*test
21:10:32fowlarch linux has this habit of introducing system-breaking changes and expecting you to read the arch front news before installing them
21:10:42*gour nods
21:11:08fowli also disliked the high-and-mighty feeling i got from the ppl in ##archlinux who would rather chide you than help you fix stuff
21:11:54gourfowl: #archlinux is one of the most useless channel i've ever visited, although i like(d) arch
21:12:09fowlyeah
21:12:17fowlarch itself is a good distro and i loved aur
21:12:28gournoise/signal ratio is...welll
21:13:07*XAMPP-8 quit (Ping timeout: 248 seconds)
21:13:27Araqcleaning up the documentation, building the installers, updating the website, ensuring the installers work
21:13:52Araqsomehow it always takes half a day
21:14:59gourit would be nice that the present manual one days evolves into PIN (Programming in Nimrod)
21:15:55filwitcolor-swap and I lightend the background: http://reign-studios.com/nimrod/web-design2.png
21:15:58*Anaphaxeton joined #nimrod
21:16:10filwityou can compare the two:
21:16:14filwithttp://reign-studios.com/nimrod/web-design.png
21:16:15filwithttp://reign-studios.com/nimrod/web-design2.png
21:16:32gourmuch better, imho
21:17:15filwitalso, I kinda like how the "nimrod" text is just a flat-color.. but if you want it to look more like "gold" Araq, I can try and add a little shine to it
21:17:20filwitgour: great!
21:17:38Araqfilwit: I like the *first* one better ;-)
21:17:53filwitLOL
21:18:05filwitthere is no pleasing you, i quit
21:18:12gourfilwit: the 3es could be more readable?
21:18:14Araqperhaps make only the crown gold
21:18:18filwitno, but what exactly do you like about the first one?
21:18:35filwitgah... that's going to look ugly
21:18:36filwitbut okay
21:18:55Araqthe side feels warmer if the side-bar is in gold :D
21:18:59Araq*the site
21:19:20Araqthe blue sidebar is too cold
21:19:23filwitalso, I agree with gour about the grey colors. I think it looks better with the lighter grey bg. what do you think about that Araq? new grey or old grey?
21:19:59Araqhrm I suppose I should check how it looks on my real machine
21:20:16Araqon my laptop the darker grey looks better
21:20:55filwithmmm... maybe okay i can darken it a little
21:21:11filwitdom96, do you have an opinion on the second image?
21:23:33filwitps. Araq, gour. My code example is stolen from the D homepage, but I think the actual website should have something similar (the current example is too short)
21:23:54AraqI noticed as there is no 'byLine' in Nimrod :P
21:24:28filwityeah... and i did "count.inc" instead of "count += 1".. not sure which is better
21:24:31Araqfilwit: the darker colors look better on my real monitor too
21:24:48filwitokay, well i will adjust some stuff
21:25:13filwiti'm telling you though, the whole "two-color icon" thing isn't going to look good (and if you think it does you're crazy)
21:25:19Araqwhat if you make the *white* part of "nimrod code" and the of the crown in gold?
21:25:43Araqwhy is it white in the first place?
21:26:25filwitwhite is a neutral color
21:26:36filwitlike i said, both the blue and the gold are the accent colors
21:26:41filwitthey grab your attention
21:26:54filwityou cant put them side-by-side, they conflict
21:27:04filwitso you use a neutral
21:27:11filwitand since the background is dark
21:27:22filwitwhite is really the only choice
21:27:34Araqwhat you say makes sense
21:27:40dom96oh sorry was away
21:27:46dom96give me a sec to read what was said :P
21:28:00filwiti'll play around with different combinations and see what I can come up with that looks good
21:28:58filwitps, dom86, notice the butterfly Aporia icon
21:29:13filwitthat actual icon is to simple for what the real one should be
21:29:29filwitbut i have an idea about how to make the Aporia one
21:31:56filwitBTW... i sorta forgot, why is there a "inc()" command in Nimrod again? Why not just require people to do "count += 1" ?
21:32:04dom96I prefer the first one, the background is too light in the second one I think.
21:32:19Araq"inc" existed before "+=" :P
21:32:19filwitokay, thanks for the input
21:32:26dom96filwit: Yes, I noticed the Aporia icon. Very nice touch ;)
21:36:40Araqfilwit: also 'myEnumValue += 1' looks weird, inc(myEnumValue) does not
21:43:44filwithybrid colors and grey-value: http://reign-studios.com/nimrod/web-design3.png
21:44:17filwitAraq: i much prefer 'myEnumBalue += 1' to 'inc(...)'
21:45:07Araq*shrug* I don't think you should be able to add ints and enums
21:45:28dom96I think the background colour should be as dark as it was at the beginning.
21:45:44filwitokay, will try that
21:46:02filwitAraq, what do you think about the logo hybrid-colors?
21:46:08filwitcompare with the other versions
21:46:15filwithttp://reign-studios.com/nimrod/web-design.png
21:46:17filwithttp://reign-studios.com/nimrod/web-design2.png
21:46:19filwithttp://reign-studios.com/nimrod/web-design3.png
21:46:21AraqI agree with dom96 about the background color
21:46:27filwitk
21:46:55AraqI'm wondering if "nimrod code" is appropriate
21:47:11Araqor if it should be "nimrod" instead
21:47:16filwitsure
21:47:53filwitwhat about the colors though?
21:48:05*gour --> sleep. will check log tomorrow :-)
21:48:11Araqthe crown is great now :-)
21:48:26filwityou like the gold crown with the blue letters?
21:48:27dom96I'm wondering whether the nav button's background colours should be as dark as they were too (together with the side bar gray)
21:48:40*gour quit (Quit: WeeChat 0.4.0)
21:49:05filwitdom96: i think they where a bit too dark before
21:49:11Araqthe gold crown with the blue letters is good
21:49:16filwitit was hard to see, they are a bit more clear now
21:49:24Araqbut please make one with gold letters for comparison
21:49:43filwitAraq: *sigh*... somehow i knew you where going to like that combo
21:49:44filwitlol
21:49:45dom96filwit: sure.
21:50:00filwitokay, i will make another one real quick
21:52:19*dom96 can only imagine how hard it will be to get all browsers to render this correctly
21:53:50filwitit's easy, i have been doing this kind of thing for awhile
21:54:14dom96That's good to hear :)
21:54:21filwitmost browsers are pretty consistent these days, even IE
21:54:49filwitusually you just give a warning message if someone has IE 7 and below, telling them to download Firefox or Chrome
21:54:49dom96I haven't done serious HTML coding in a while, so i'm still stuck in the "ugh, IE6 must be supported" mindset.
21:54:56dom96But we can screw IE 6 :P
21:55:13NimBotAraq/Nimrod e39b93c Araq [+0 ±4 -0]: micro optimizations for the evaluation engine
21:55:13NimBotAraq/Nimrod 857694d Araq [+0 ±6 -0]: preparations for a generational GC
21:55:13NimBotAraq/Nimrod 696f7f2 Araq [+6 ±22 -5]: Merge branch 'master' of github.com:Araq/Nimrod
21:55:14filwityeah, IE has a much lower network traffic now actaully
21:55:41filwitbut yeah, a few years ago IE6 (and 7... and 8) where a bitch
21:55:50filwitIE8 is till a concern, but not a hug deal
21:55:51dom96But it's probably quite rare that potential Nimrod programmers would even use IE.
21:56:02filwitreally the only thing it lacks is semi-transparent pngs
21:56:10dom96Unless maybe they are forced at work.
21:56:27dom96I can help you with the HTML/CSS if you'd like.
21:56:46filwityes that's true, but the point of advertising is to grab a larger audience.. so who knows :)
21:57:13filwitokay, but I'll probably be fine making the HTML myself
21:57:25filwitwill let you know if i run out of time and need your help
21:57:43Araqfilwit: excellent, thanks a lot
21:58:06Araqit should be easy to adapt whatever html you come up with with our build system
21:58:21Araqer, templating system
21:58:25filwityes i'll just give you guys the code and let you work it in
21:58:30dom96filwit: Great. Thanks a lot for doing this btw!
21:58:43filwityou said before you just use flat-html files per-page right?
21:59:12filwitdom96: np :) like i said I'm willing to help in these ways
21:59:23dom96yeah. We may add some dynamic stuff to the website though.
21:59:25Araqfilwit: yeah
21:59:34filwitthis stuff is quite a bit simpler (to me) than implementing a compiler feature
21:59:54Araqah well I was about to answer:
22:00:17dom96in fact hrm, perhaps it would be nice to think about the future of the website.
22:00:37dom96It will be very noticeable if we're forced to hack stuff in.
22:00:38Araqno, nimrod's flat procs do not "fall down" for a complex project
22:00:57Araqthere are other reasons that make the compiler hard to hack
22:01:18fowlAraq: i want to poke around the VM
22:01:22fowlwhats a good entry point
22:01:36dom96filwit: Will the sidebar be visible on all pages?
22:01:37filwitalso, you should really consider using less abbreviation, Araq. It's really hard to follow
22:01:55Araqfilwit: I never wrote it with contributors in mind :P
22:02:01filwitlol
22:02:10filwityeah i understand
22:02:19filwitdom96: that's the basic idea
22:02:29filwitwe should keep this project simple right now
22:02:34Araqbut I also don't get why the abbrevs are hard
22:02:40filwitflat HTML is fine, since we're all programmers here
22:02:54filwitif the sight starts getting really big, we can move to a CMS
22:03:06filwitbut that takes quite a bit more time
22:03:28filwitAraq: because descriptive names are .. descriptive
22:03:31dom96A simple jester app can be written instead of using a full blown CMS ;)
22:04:16filwitAraq: I don't like how C# forces you to set all those "public static override" stuff everywhere, but I do think their library names are done well
22:04:17Araqfilwit: nah, it'll only be verbose
22:04:26dom96Araq: When you have abbreviations everywhere, you have the same abbreviations in different procedures meaning different things. As you try to understand the flow of the code you move between procedures and get confused quickly.
22:04:35dom96Well at least I think that is a bit of a problem for me.
22:05:12Araqhonestly I think if the abbrevs are hard for you, maybe you shouldn't hack the compiler in the first place :P
22:05:26Araq'sem' is a prefix which means "semantic checking"
22:05:44filwitAraq: i think that's a poor attitude towards the issue if you want more support
22:05:51Araqthe compiler has like ~50 procs which start with 'sem'
22:06:06Araq'semanticCheckIf' vs semIf
22:06:18Araqthat's a problem for perhaps 5 minutes
22:06:20filwit^ perfect example
22:06:47filwitno, much more than 5mins
22:07:01Araqthe trick is to ask Araq :P
22:07:08filwityou just think that cause you understand the structure, and honestly I think you just pick things up really fast
22:07:35dom96"maybe you shouldn't hack the compiler in the first place :P" Yep, I shouldn't be. I am extremely unqualified, I have barely an idea of what 'semantic checking' is, and I don't have the time to learn this stuff. But the fact is that you are all I have, so if you want me to fix the compiler for you, abbreviations do not help me :P
22:07:41filwitwhen you don't know what's going on, and are reading the code to try and learn, having descriptive names helps a lot
22:08:14dom96I would say most potential contributors are in that boat.
22:09:13dom96You can just force people that know how compilers work to work on your compiler, but there are very few people that have that kind of experience.
22:11:03Araqhave you guys ever read http://nimrod-code.org/intern.html#short-description-of-nimrod-s-modules ?
22:11:45filwitonce a long time ago, but yeah that is useful
22:12:02filwitstill, some of those modules are pretty big
22:12:11filwitthe internals get pretty confusing sometimes
22:12:38Araqyeah the internals could be improved
22:12:45filwiti don't care about local-var abbreviation, that is easy to follow
22:12:47Araqno, it's not the abbrevs fault :P
22:13:51Araqyou have to realize that nimrod is more complex than you think it is
22:14:00Araqand the compiler reflects that
22:14:28Araqand there are books describing how a compiler works
22:14:55filwitAraq: I've shown tree different (C#/Java) programmers D before (independently). and a universal complaint was that the Standard lib was "too abbreviated" "like C++ STL"
22:15:14filwitNimrod is 5 times more abbreviated than D
22:15:26Araqand yet it's still too verbose :P
22:15:38Araqfor instance there is not enough type inference for anon procs
22:15:55dom96filwit: how so?
22:16:08filwitdom96: length vs len
22:16:17filwitdom96: "inc()"
22:16:28filwitdom96: newseq()
22:16:35AraqI keep writing lenght so making that 'len' was a good idea
22:16:53filwitAraq: i prefer "count" and always have
22:16:56Araqpython also chose that btw
22:17:01filwitmakes much more sense
22:17:11Araqa string has no "count"
22:17:13dom96'count' to me sounds like an action
22:17:20dom96as in 'count this for me'
22:17:26Araqand you want the same term everywhere
22:17:39Araqotherwise you never know if it's len, length, count, size ...
22:17:47Araqlike it's in C#
22:18:01Araqit's also very bad for generic code
22:18:11filwitdom96: yes, but it also means the "count of something" whereas "size/length" is more spacial
22:18:24Araqfowl: start with compiler/evals.nim
22:19:14filwitAraq: I dont' like everything about C#'s design
22:19:25filwitAraq: and the count/length thing is one of them
22:19:34filwit(of the things i don't like)
22:19:39Araqactually I wanted to make it an operator: #
22:19:52Araqbut then it was too late, # was taken for comments
22:20:23filwitwhat would '#' be used for?
22:20:36Araqit makes no sense to have an operator for bit shifting, but none for 'len'
22:20:46Araq# would be 'len'
22:20:56Araqit's common in math
22:21:23filwitwaayy to cryptic
22:21:25filwit:P
22:21:42Araqyeah. for 5 minutes.
22:21:51filwitfor learning
22:21:55dom96that would be quite elegant
22:22:03Araqand then you appreciate you never have to guess what it's called, as it is always #
22:22:08filwitpeople wont learn your code if it's really hard to understand at a glance
22:22:27filwitand new-programmers (like Game Script writers) will have a really hard time using things
22:22:45filwitwhich is what I wanted Nimrod for in the first place
22:22:57Araqinteresting
22:23:13filwitbut, ultimately it started to get to complicated. Which is why I'm arguing this issue so much
22:23:50filwitif you haven't noticed, i'm a bit of a perfectionist.. but people often don't realize how important the details are, and "first impressions" are very important as well
22:24:31filwitI found D because, at first, it looked like a hybrid of C++ and C#... unfortunately it has too many technical problems, and it's syntax is a bit over complicated
22:24:51filwitNimrod gets things right though
22:24:54filwiton the technical level
22:25:02filwitthe GC design is great
22:25:09filwitand most of the syntax is great too
22:25:23filwitthere are just fundamental concepts that I think break it
22:25:40filwitlike you having a "new" and a "newarr" and a "newseq"
22:25:52Araqthere is no newarr :P
22:25:52filwitthat points to a fundamental design flaw, IMO
22:25:58filwitoh, my bad
22:26:05filwitstill, you get my point
22:26:09filwitit's hard to remember
22:26:13AraqI could easily overload 'newseq' to 'new'
22:26:14filwitand it's hard to learn
22:26:33filwityes, but like i said, i think it points to a bigger problem
22:26:41filwitthings should be type-specific
22:26:43Araqbut you should use 'var x: seq[int] = @[]' anyway I guess
22:27:02Araqyou can also do: var x = int.new()
22:27:24filwityes see that is exactly what I'm talking about
22:27:39filwitthere are two ways of making a sequence, and that's confusing
22:27:51filwitit would be much better to say 'var x = int.new()'
22:28:02filwitand consistently use that syntax throughout
22:28:14filwitand enfore it as a standard somehow
22:28:28filwitbut anyways, that is just my thoughts
22:28:46dom96I don't think i've ever used newSeq()
22:29:05Araqwell we'll get proper constructors soon anyway for different reasons
22:29:11filwityes because we're talking about a core item
22:29:20filwitseq is a core type
22:29:33filwitso having a "convenience" syntax isn't that big a deal
22:29:46filwitbut apply the concept to other peoples objects
22:30:02Araqyeah I then can use 'new T(...)' great
22:30:12Araqexcept that I don't know the parameters anyway
22:30:22Araqand it's not 'new T' when it's behind a factory
22:30:23filwithmm, interesting. didn't know you where adding that in
22:30:38filwitAraq: i agree with you
22:30:46AraqI'm adding something like that in
22:30:50filwitAraq: i never liked contructors either
22:30:52Araqsyntax is up for debate
22:31:19filwitone sec
22:31:40dom96how about: make seq[T]
22:31:41dom96:P
22:34:26filwitthis is what i wish Nimrod did: https://gist.github.com/PhilipWitte/4969024
22:34:37*FreeArtMan quit (Ping timeout: 244 seconds)
22:34:53filwitand I wish that it was consistent like that, thoughout the standard-lib
22:35:47filwitthat to me, is easy and elegant to understand
22:36:08filwityou can bind things to the type directly, and enforce that it's used like OOP
22:36:28filwitand there is a distinction between an "init" and a "proc"
22:36:49filwitbut ultimately it's looks and feels the same as a global functions bound to a type
22:36:54Araqnot unlike Delphi does it
22:37:13filwiti've never used Delphi, so i can't comment
22:37:25filwitbut i'm sure others have used similar designs
22:37:39filwitthe point is, they probably don't have Nimrods awesome compiler behind them
22:37:45Araqis the implicit this/self passed by 'var'?
22:37:55Araqin your design?
22:38:08filwitno, ref probably (off the top of my head)
22:38:34filwityou could always have a way of distinguishing that, for instance.. if it's a tuple
22:38:38filwitit's probably var
22:38:41filwit(maybe)
22:38:54filwitor there could be a pragma
22:39:24Araqwhat about:
22:39:34Araqproc (var Foo).bar = ...
22:40:24filwitI'm perfectly fine with that.. and ultimately i think there should be a way of "embeding" the procs like regular OOP code
22:40:29filwittype Foo =
22:40:33filwit bar : int
22:40:44filwit foo : proc() =
22:40:50filwit bar = 10
22:41:06filwitbut that was just sugar for:
22:41:20filwitproc (var Foo).foo() = ...
22:41:30Araqwell as I said, you can get that today with a macro
22:41:37dom96https://gist.github.com/dom96/4969058
22:41:53dom96That's already possible with macros isn't it?
22:41:59Araqand maybe we should sanctionize a 'class' macro for the stdlib
22:42:20dom96I prefer that over writing 'Foo.'
22:42:33Araqdom96: yeah but you can go even further than that
22:42:45dom96Araq: what do you mean?
22:42:51filwitAraq: sure, but the whole language needs to be consistent like that... AND you need to be able to build global variabls like that as well (IMO)
22:43:18filwitif things aren't consistent, it's incredibly hard to use.
22:43:32filwitNimrod is a big project, so changing something like that would take a lot of time
22:43:51filwitit's not really a realistic request of me
22:44:13AraqI get your point but you're also overly concerned about this
22:44:30Araqfor instance, Lua is widely successful for game modding
22:44:30filwitlike i said, perfectionist :)
22:44:47filwityes, but I would never use Lua for games
22:44:48Araqand it neither has classes nor does it even catch most typos
22:45:07filwitwell the Classes are more for the Game Engine itself
22:45:18filwitbut not entirely
22:45:46filwiti have a really good design actually, which requires Partial classes (or similar concepts)
22:45:50filwitthat we're making in C#
22:45:55filwiti don't like C#
22:46:11Araqdom96: check fowl's class macros for example
22:46:25Araqfilwit: see that's suprising
22:46:40AraqI don't get what you dislike about C#
22:46:43filwitAraq: tell me, is it possible to make a macro which binds a var to a type?
22:46:54Araqfilwit: yes
22:47:05Araqer, or no
22:47:14Araqdepending on how you look at it
22:47:24filwitAraq: Mono sux, and I'm a linux fan. C# is low, and overly bloated, doens't support range based syntax, etc, etc
22:47:32filwitC# is slow***
22:47:33dom96Araq: You mean inheritance and stuff?
22:47:51Araqdom96: I mean no need to split 'Foo' into a type and a class
22:48:12dom96Araq: I see, yes, of course.
22:48:30dom96fowl's class macro is in fact very cool
22:48:53filwitAraq: can i do something like: var Person.speed = 10... then access it like: for p in people: p.pos += Person.speed ??
22:52:17Araqfilwit: no ;-)
22:53:26Araqyou can do: mac Person.speed = 10
22:53:35Araqwhere 'mac' is a macro
22:53:58Araqbut why is that so important in the first place?
22:54:16filwitbecause when you use someone's library, you do this:
22:54:25filwitvar player = Person.new()
22:54:39filwitand everywhere, you're using "Person.whatever"
22:54:56Araqso you have player.speed vs. Person.speed :P
22:54:56filwitso then, when you want to access global settings, you use the same syntax
22:55:19filwitno, lets do this:
22:55:24filwittype Person =
22:55:29Araqyeah, yeah, got it
22:56:23filwitokay fine, the point is. if you have an interal Person function, which uses a global variable, and you also want to present that to other to set in a consistent way (same applies to global functions), then everything is consistent
22:57:15filwitlook, know that i'm not actually making a feature request here or anything... i understand that's really unrealistic and unfare of me to ask
22:57:19filwiti'm just arguing a point
22:57:26Araqbtw games/simulations is one of the domains where OO can shine ;-)
22:57:51Araqit was called "simula" for a reason
23:00:19filwitidk, this is why i started making my own language. I wanted to get nitty-gritty with the syntax, but It was hard hacking on Nimrod, so I figured it would be just as easy to re-write my own (syntax-wise)
23:01:19filwitobviously, my language isn't going to go anywhere
23:01:22filwitit's just a toy
23:01:44Araqyou know, the compiler has the infrastructure for alternative syntaxes
23:01:59filwityeah i was thinking about that last night
23:02:45filwitbut idk, I will have to take another look
23:03:12filwitone of the things I did with my design, was that the "compiler" was designed to stay open, and accept changes in real-time
23:03:41Araqlike nimrod's :P
23:03:49Araqzahary is working on that feature
23:03:52filwitit maintains lists of things, so if a change is made, it catches and reports the error instantly (or it could if there was a IDE)
23:04:06dom96Araq: oh yeah, I think you missed my question about first class iterators. Do they support the implicit 'result' variable?
23:04:10filwityes i hear that Nimrod now has compiler-as-a-service
23:04:14filwitthat's good to hear
23:04:37Araqyeah and it's lots of work ;-)
23:04:54filwityes because the language wasn't designed that way to begin with :)
23:05:11Araqthat's debatable
23:05:36filwitwell i wasn't saying there's something wrong with Nimrod
23:05:40Araqit always had an ID mechanism to support incremental compilation
23:05:54Araqit's MUCH harder than you think it is :P
23:06:02filwiti was saying to make something "say open" vs "run 'n done" is a bit different
23:06:24Araqplus generating C doesn't help
23:07:00Araqit's much easier to do in an interpreter
23:07:16filwitAraq: i know.. like I said, i started writing a language :P it's complicated. mine can only add ints together right now in interpreted mode
23:07:24Araqdom96: I can't remember, try it
23:07:29dom96Araq: I get odd results when I don't define the 'result' variable.
23:07:43Araqo.O
23:08:04Araqwell you never have to define it
23:08:12Araqit's either there or it isn't
23:08:21filwitAraq: yeah exactly.. the language has to be designed to be interpreted , and compiled (obviously doesn't work in all cases)
23:08:43dom96yeah, this is definitely a bug :P
23:09:00Araqdom96: not necessarily
23:09:11Araqdoes 'return' set your explicit 'result' var?
23:09:23Araqwell ... hrm how would you know
23:09:46dom96with each 'yield' the 'result' variable seems to be reset.
23:09:57Araqfilwit: I have a hard time coming up with a language that can be compiled but not interpreted
23:10:22Araqdom96: that's a feature I guess
23:10:38dom96Araq: Care to explain how this is a feature? :P
23:10:42Araqwhat does 'result' mean when you 'yield' anyway?
23:10:47filwitAraq: i just ment that certain pointer arithmetic wont work in interpreted mode (not safely at least).
23:11:18Araqwell safety is a whole different topic :P
23:11:26filwitlol, yeah
23:11:31dom96Aporia really needs a gist feature...
23:12:06filwitpointer arithmetic is inherently unsafe anyways, so i guess it's the programmers fault if he kills the compiler
23:12:35dom96Araq: https://gist.github.com/dom96/a0fbc9ab2bca9bf35ce8
23:12:57filwitdom96: what do you mean gist feature?
23:13:07Araqif you pass fat pointers around, it's easy to make pointer arithmetic safe, filwit
23:13:27dom96filwit: As "Gist my selection and place URL in clipboard."
23:13:30dom96*As in
23:13:48dom96So that I don't have to switch to my browser and do it
23:13:52filwitAraq: unless the pointers have to be a certain size (they're passed to GPU shader constants for example).
23:14:10filwitAraq: in which case, they have to be completely unmanaged
23:14:26filwitAraq: thought that's a really, really rare situation
23:14:31filwitthough**
23:15:07filwitdom96: not a bad idea
23:15:09Araqdom96: ok, that's a bug I guess
23:15:22dom96ok, i'm reporting
23:17:57Araqfilwit: please make that alternative parser and use the rest of nimrod's compiler
23:18:46Araqthe shebang can be used to tell which syntax to use: #! alternativeSyntax
23:18:55filwitAraq: i will look into it
23:19:13Araqand ask if you're stuck
23:19:39Araqfilwit: I know you don't want to hear it but ...
23:20:11Araqfirst design with golden crown and "nimrod" would be best I think
23:20:27Araqno "nimrod code" please
23:21:12filwityeah that's fine, i will adjust somethings
23:21:27filwitso you like the blue?
23:21:37filwitoh nvrmd
23:21:44filwityou said golden crown
23:21:54Araqand golden "nimrod"
23:22:00filwitokay
23:22:02filwitone sec
23:22:05Araqthe blue is then only in the navigation
23:22:19filwitso.. not the first design then :P
23:22:29Araqyes the first design
23:22:40filwitokay, one sec
23:22:42Araqthe side-bar stays gold
23:23:07filwityeah i understand, i'm going to grab something to eat
23:23:11filwitand will make it after
23:53:23filwitokay: http://reign-studios.com/nimrod/web-design4.png
23:53:32filwitif you like it, i will make the HTML
23:54:09filwitnotice i added a hint of a shine to the "nimrod" to make it look more metallic
23:54:16filwitbut that's about the only change
23:54:47AraqI noticed it
23:54:49AraqI like it
23:54:57Araqall of it :-)
23:55:00filwitgreat!
23:55:09filwitwill make the template then
23:55:54Araqexcellent
23:56:32AraqI'll add a "design by filwit" in the footer
23:56:42Araqwell I may use your real name
23:57:04filwitokay, I'll add that in
23:57:14filwitdo you know my real name o.O?
23:57:43Araqnah
23:57:52filwitoh btw, you like the gold footer right?
23:57:53Araqbut it shouldn't be too hard to figure it out
23:57:55filwit(vs the blue)
23:58:13Araqyes I like it
23:58:15*dom96 thinks he would prefer the flat colour for the "nimrod" text
23:58:26filwitno dom96
23:58:28filwitdont start
23:58:32Araqbut gold is not really a color, dom96
23:58:37filwit;-P
23:58:43Araqflat gold is yellow :P
23:58:58dom96Go back to blue :P
23:59:06Araqblue is too cold
23:59:09filwit(i know dom96, i know)
23:59:36dom96The gold is too flashy