| 00:00:15 | Varriount | OrionPKM are you using a gui for git, or just the command line? |
| 00:00:25 | OrionPKM | command line |
| 00:00:33 | Varriount | Ah, that would be why. |
| 00:00:44 | OrionPKM | the gui doesnt work for shit |
| 00:00:54 | Varriount | Depends on which one you use. |
| 00:01:10 | OrionPKM | which do you use? |
| 00:01:11 | Varriount | <3 GitExtensions (for Windows) |
| 00:02:46 | Varriount | OrionPKM, if you're a linux user -> http://stackoverflow.com/questions/1516720/git-gui-client-for-linux |
| 00:03:00 | OrionPKM | nah im on windows on this box |
| 00:03:25 | Varriount | (Why is it that some of the most helpful questions I see on stackoverflow are always closed?) |
| 00:03:49 | * | tylere quit (Quit: Page closed) |
| 00:04:41 | Varriount | OrionPKM, the only trouble I've had with GitExtensions was setting up an ssh handler (OpenSsh or PuTTy) and that's because I switched from one to the other. |
| 00:08:44 | * | ics quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
| 00:10:41 | * | ics joined #nimrod |
| 00:57:08 | * | ryeguy joined #nimrod |
| 01:09:39 | * | datura quit (Ping timeout: 252 seconds) |
| 01:32:33 | * | noam_ joined #nimrod |
| 01:33:51 | * | mflamer_ joined #nimrod |
| 01:34:46 | * | mflamer quit (Ping timeout: 245 seconds) |
| 01:36:06 | * | noam quit (Ping timeout: 265 seconds) |
| 01:50:55 | Varriount | Anyone know a nimrod module which makes use of exponent literals, or hexadecimal literals? |
| 01:52:49 | EXetoC | lib/pure/md5.nim, lib/pure/htmlparser.nim |
| 01:59:25 | EXetoC | lib/pure/basic3d.nim has a couple of exponents |
| 02:26:31 | * | ryeguy quit () |
| 02:33:34 | * | Varriount_ joined #nimrod |
| 02:37:02 | * | Varriount quit (Ping timeout: 240 seconds) |
| 02:37:03 | * | Varriount_ is now known as Varriount |
| 02:45:11 | * | mflamer joined #nimrod |
| 02:45:36 | * | mflamer_ quit (Ping timeout: 245 seconds) |
| 02:58:11 | * | DAddYE_ quit (Remote host closed the connection) |
| 02:58:37 | * | DAddYE joined #nimrod |
| 03:03:14 | * | DAddYE quit (Ping timeout: 264 seconds) |
| 03:23:56 | * | mflamer quit (Ping timeout: 245 seconds) |
| 03:30:22 | * | DAddYE joined #nimrod |
| 03:30:30 | * | DAddYE quit (Remote host closed the connection) |
| 03:30:36 | * | DAddYE_ joined #nimrod |
| 03:49:10 | * | Varriount_ joined #nimrod |
| 03:49:12 | * | ryeguy joined #nimrod |
| 03:53:02 | * | Varriount quit (Ping timeout: 264 seconds) |
| 03:53:03 | * | Varriount_ is now known as Varriount |
| 03:53:39 | * | brihat quit (Ping timeout: 252 seconds) |
| 03:57:14 | * | brihat joined #nimrod |
| 03:59:10 | * | mflamer joined #nimrod |
| 04:12:09 | * | DAddYE_ quit (Remote host closed the connection) |
| 04:12:37 | * | DAddYE joined #nimrod |
| 04:16:38 | * | DAddYE quit (Ping timeout: 240 seconds) |
| 04:22:22 | * | DAddYE joined #nimrod |
| 04:22:35 | * | DAddYE quit (Remote host closed the connection) |
| 04:22:41 | * | DAddYE joined #nimrod |
| 04:43:01 | * | shodan45 joined #nimrod |
| 04:52:16 | * | brson joined #nimrod |
| 05:05:40 | * | Varriount_ joined #nimrod |
| 05:09:02 | * | Varriount quit (Ping timeout: 240 seconds) |
| 05:09:02 | * | Varriount_ is now known as Varriount |
| 05:14:13 | * | ryeguy quit () |
| 05:15:26 | * | DAddYE quit (Remote host closed the connection) |
| 05:15:53 | * | DAddYE joined #nimrod |
| 05:17:46 | mflamer | I wonder what it would take to implement a "Top" type in nimrod. A supertype of all types. So a None[Top] could pass for a None[int], None[string] etc. |
| 05:17:49 | * | xenagi quit (Quit: Leaving) |
| 05:20:38 | * | DAddYE quit (Ping timeout: 264 seconds) |
| 05:43:54 | * | ics quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
| 05:58:38 | * | mflamer quit (Ping timeout: 240 seconds) |
| 06:00:27 | * | isenmann joined #nimrod |
| 06:05:43 | * | brson quit (Ping timeout: 246 seconds) |
| 06:17:13 | * | DAddYE joined #nimrod |
| 06:18:01 | * | ics joined #nimrod |
| 06:19:06 | * | brson joined #nimrod |
| 06:34:34 | * | ics quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
| 06:50:15 | * | DAddYE_ joined #nimrod |
| 06:50:15 | * | DAddYE quit (Remote host closed the connection) |
| 06:56:54 | * | brson quit (Quit: leaving) |
| 07:19:39 | * | DAddYE_ quit (Remote host closed the connection) |
| 07:20:11 | * | DAddYE joined #nimrod |
| 07:25:04 | * | DAddYE quit (Ping timeout: 240 seconds) |
| 07:30:27 | * | DAddYE joined #nimrod |
| 07:30:37 | * | DAddYE quit (Remote host closed the connection) |
| 07:30:44 | * | DAddYE_ joined #nimrod |
| 08:17:09 | * | Jackneill joined #nimrod |
| 08:47:17 | * | girvo joined #nimrod |
| 08:47:22 | girvo | hi all |
| 08:49:58 | girvo | question: hows nimrod's ARM support these days? |
| 08:56:10 | Araq | girvo: people routinely build Nimrod on rasberry pi |
| 08:56:55 | girvo | Araq: yeah I saw the arm6 support on the github page, was curious about cross-compilation to an ARM target |
| 08:57:25 | Araq | cross-compilation works quite well too afaict |
| 08:57:43 | girvo | Araq: sweet! thanks :) |
| 08:58:00 | girvo | trying to compile on my mac atm, as my linux laptop died *sigh |
| 08:58:33 | Araq | the process is documented here: http://nimrod-lang.org/nimrodc.html#cross-compilation |
| 08:58:56 | girvo | Araq: perfect, thanks so much |
| 09:10:47 | Araq | bbl |
| 09:11:17 | girvo | oh, just compiled latest nimrod on OSX Mavericks, worked absolutely perfectly, no issues at all. stoked, was a lot easier than last time too |
| 09:18:03 | * | dirkk0 joined #nimrod |
| 09:22:48 | girvo | what editor is best for a mac? most of the ones on the wiki rely on gtk which i've been struggling with (I use homebrew, not ports, so i can't get compilation to work properly) |
| 09:26:37 | * | DAddYE_ quit (Remote host closed the connection) |
| 09:27:04 | * | DAddYE joined #nimrod |
| 09:31:26 | * | DAddYE quit (Ping timeout: 240 seconds) |
| 09:31:36 | dirkk0 | I use Sublime Text 2 - which works very well, but would rather switch to an open source alternative. |
| 09:40:42 | girvo | dirkk0: yeah I use it too, but I wanted to find an editor that is similar to Geany but works on mac. SciTE seemed like it'd fit, but they're asking $49 for something that is FOSS on other platforms... leaves a bad taste in my mouth |
| 09:41:15 | girvo | so now I just forked QSciTE (a QT clone) and am going to see if I can't get it up to date and nice first-class support of Nimrod into it. Really simple code-base, i'm impressed |
| 09:43:23 | girvo | latest binary doesn't run on mavericks, but i'm compiling the source now, so we'll see |
| 09:47:11 | girvo | hell, maybe it's worth building one in Nimrod, an Aporia clone that is mac-native... but i'd probably be biting off more than I can chew there |
| 09:55:16 | dirkk0 | cool |
| 09:55:46 | dirkk0 | I wonder what's wrong with gtk? |
| 10:27:50 | * | DAddYE joined #nimrod |
| 10:32:38 | * | DAddYE quit (Ping timeout: 240 seconds) |
| 10:34:51 | * | dirkk0 quit (Ping timeout: 250 seconds) |
| 10:37:41 | * | dirkk0 joined #nimrod |
| 10:54:13 | * | q66_ joined #nimrod |
| 10:54:43 | * | q66 quit (Disconnected by services) |
| 10:54:45 | * | q66_ is now known as q66 |
| 11:30:11 | * | DAddYE joined #nimrod |
| 11:35:26 | * | DAddYE quit (Ping timeout: 240 seconds) |
| 11:43:50 | * | yodi joined #nimrod |
| 11:44:35 | yodi | hi all |
| 11:46:03 | * | CarpNet joined #nimrod |
| 11:49:26 | * | BitPuffin joined #nimrod |
| 11:49:40 | EXetoC | yodi: hi |
| 11:50:19 | yodi | so what's the status of the sensitive vs insensitive convention? |
| 11:55:00 | * | _dymk joined #nimrod |
| 11:56:26 | * | zielmicha joined #nimrod |
| 11:57:38 | * | dymk quit (Ping timeout: 240 seconds) |
| 11:57:39 | * | dom96 quit (Ping timeout: 240 seconds) |
| 11:57:43 | * | Amrykid quit (Ping timeout: 240 seconds) |
| 11:57:51 | * | Amrykid joined #nimrod |
| 11:57:51 | * | dom96 joined #nimrod |
| 11:58:24 | * | dom96 quit (Changing host) |
| 11:58:24 | * | dom96 joined #nimrod |
| 12:00:48 | EXetoC | yodi: it's not a convention. I think it might go from case insensitive to case sensitive soon |
| 12:03:23 | EXetoC | I'm assuming that you're referring to *case* (in)sensitivity |
| 12:04:02 | EXetoC | actually, I need to read that thread again |
| 12:05:31 | yodi | yes, that's what i meant |
| 12:11:04 | EXetoC | the hybrid solution presented here http://forum.nimrod-lang.org/t/191/4 seems alright |
| 12:12:43 | EXetoC | but I don't know if having a specialized grep tool is good enough. people might want to resort to alternatives for whatever reason, and that will be an inconvenience |
| 12:15:02 | BitPuffin | EXetoC: who needs a grep tool when there's ack? |
| 12:15:07 | BitPuffin | woop woop |
| 12:15:09 | BitPuffin | well |
| 12:15:12 | BitPuffin | grep is still useful |
| 12:15:15 | BitPuffin | but not for code |
| 12:15:49 | BitPuffin | OH GASH NEW KÖRNÖL |
| 12:16:34 | BitPuffin | mein kürnel |
| 12:18:43 | BitPuffin | mein mirhor ist langsam |
| 12:22:26 | yodi | ExetoC: thanks for the link |
| 12:23:02 | EXetoC | np |
| 12:23:56 | * | BitPuffin quit (Ping timeout: 245 seconds) |
| 12:27:39 | * | BitPuffin joined #nimrod |
| 12:28:12 | BitPuffin | back! |
| 12:31:13 | BitPuffin | dom96: sorry got a bit held up yesterday by family stuff and may have also ended up playing some dota 2 |
| 12:31:21 | BitPuffin | I'll try to get it done and write the article asap :P |
| 12:31:49 | * | DAddYE joined #nimrod |
| 12:32:13 | EXetoC | BitPuffin: well, I encountered your arguments anyway with the fact that the shell I use now has aliases and globbing |
| 12:32:30 | EXetoC | good defaults are useful, but I haven't had to distribute any such scripts yet |
| 12:33:56 | EXetoC | nimgrep has --replace. neat |
| 12:34:15 | BitPuffin | EXetoC: well ack is also faster |
| 12:34:29 | BitPuffin | which might not matter with a small codebase |
| 12:34:30 | BitPuffin | but still |
| 12:34:45 | BitPuffin | Actually both grep and ack are useful, but for different things |
| 12:35:58 | BitPuffin | EXetoC: I think you should at least try it |
| 12:36:35 | * | DAddYE quit (Ping timeout: 260 seconds) |
| 12:43:36 | Araq | yodi: the compiler supports --cs:partial so that Foo and foo are different. I plan to make the stdlib and the compiler itself compile with --cs:partial. Later it will be the default. Note that --cs:full might be provided even later, but I really like the "partial" solution and think it should work really well. |
| 12:44:48 | Araq | "nimrod pretty" can do the style enforcings/changes but it's still a bit buggy |
| 12:45:59 | BitPuffin | Araq: case insensitivity is being phased out? :( |
| 12:46:08 | yodi | Araq: thanks, love to have a crack at it. The language is looking great |
| 12:47:13 | BitPuffin | or style insensitivity |
| 12:48:57 | Araq | BitPuffin: well underscores are still optional and you'll have a hard time to convince me they shouldn't be |
| 12:49:34 | yodi | Araq: would that partial flag work in conjunction with interactive mode? |
| 12:50:10 | Araq | yodi: the interactive mode is still broken enough to be unusable |
| 12:50:46 | EXetoC | Araq: you don't like single-letter prefixes? it's very concise |
| 12:50:57 | Araq | EXetoC: lol? |
| 12:51:29 | EXetoC | for types. you proposed ~3 letter suffixes in that thread |
| 12:51:42 | EXetoC | actually |
| 12:51:47 | yodi | Araq: fair enough |
| 12:51:51 | Araq | well I don't mind T P E prefixes obviously |
| 12:52:45 | Araq | but enough people do mind them and what's worse among them people who can code ... |
| 12:52:45 | BitPuffin | Araq: oh really? How come? |
| 12:52:58 | EXetoC | if by primary types you mean the type that's supposed to be used in most cases, then it doesn't matter too much I guess. that means the name contains less information than before though |
| 12:53:12 | BitPuffin | the thing is that with case sensitivity and optional underscore it's just gonna be weird to have underscore |
| 12:53:19 | BitPuffin | take for example fooBar proc |
| 12:53:29 | BitPuffin | with underscore I think that looks best as foo_bar proc |
| 12:53:39 | BitPuffin | and I think foo_Bar proc looks silly |
| 12:53:59 | EXetoC | "No style is enforced and underscores remain optional but the first letter (and only that) is case sensitive, so 'var parser: Parser' becomes valid in more contexts" |
| 12:54:02 | Araq | BitPuffin: you're right cs:full with optional underscores is weird |
| 12:54:12 | EXetoC | if that's even relevant anymore |
| 12:54:30 | Araq | EXetoC: that's exactly what --cs:partial implements |
| 12:55:12 | BitPuffin | problem is that people using cs:full in their projects with third party libs with a different style than them are gonna have a hard time |
| 12:57:24 | Araq | BitPuffin: I don't plan to provide cs:full for now. I think cs:partial is the best solution. |
| 12:59:10 | EXetoC | Araq: so these people think a ~3 letter suffix is better? oh well |
| 12:59:33 | Araq | EXetoC: well the suffix is irrelevant since it's so rarely used |
| 13:03:08 | zielmicha | What's the proffered model of contribution? Pull requests on Github? |
| 13:03:25 | Araq | yes |
| 13:03:54 | BitPuffin | Araq: actually first letter sensitivity is pretty nice in some ways. I know that I've accidentally done stuff like proc foo[T](t: T): T = |
| 13:03:54 | Araq | or just provide a babel package, depending on what you do |
| 13:04:16 | BitPuffin | and gotten a scary error message that takes yeras to decrypt |
| 13:04:24 | Araq | BitPuffin: that works I think but relies on weird scoping rules |
| 13:04:45 | Araq | in the proc body you can get issues then though |
| 13:05:38 | BitPuffin | how come ? |
| 13:06:12 | BitPuffin | but with that first letter thing does that also mean that if someone writes a ProcLikeThis it has to become Proc_like_this ? |
| 13:06:41 | EXetoC | Araq: this means that less information will be presented to the user. do you consider this a minor issue? |
| 13:07:15 | Araq | BitPuffin: no |
| 13:07:31 | EXetoC | I assume that primary types can be pointers etc. that seems to be implied |
| 13:07:43 | Araq | EXetoC: I consider this a classical "wie man sich bettet so ruht man" |
| 13:07:44 | EXetoC | *should |
| 13:09:38 | Araq | EXetoC: people don't care. It's ugly, so it must go. |
| 13:09:48 | Araq | never mind it encoded valuable information |
| 13:15:54 | zielmicha | why there are both TStreams and TFiles? They seem to do the same job. |
| 13:17:14 | EXetoC | hopefully they are confident that it will indeed only have a minor effect on readability in practice |
| 13:20:31 | yodi | a serious question for you guys, regardless of style (camel vs underscore) but why not case sensitity? |
| 13:20:53 | Araq | zielmicha: TFile is C's FILE* and it's hard to add features on top of these |
| 13:22:03 | Araq | yodi: the original idea was that you either want under_scores or camelCase. and that consistently everywhere. So what do you do? You make the compiler not care and then your editor can show the identifiers as you prefer. |
| 13:25:27 | Araq | but editors are still too primitive and people can't even think of how better tools should look like... :P |
| 13:25:50 | C0C0 | Araq: +1 |
| 13:26:16 | C0C0 | (but I can think of a lot of ways editors could be better) |
| 13:26:52 | yodi | Araq: hmm... i see the trouble of trying to please both camps |
| 13:27:42 | EXetoC | and then you need somehow be able to adhere to the column limit of said project |
| 13:28:29 | C0C0 | I would love to see a texteditor that offers multiple views on the text |
| 13:28:57 | C0C0 | e.G. {} style blocks / indentation style blocks / do ... end style blocks |
| 13:29:09 | C0C0 | or "hide type declarations while not editing" |
| 13:33:07 | * | DAddYE joined #nimrod |
| 13:36:53 | * | dirkk0 quit (Ping timeout: 272 seconds) |
| 13:37:23 | * | DAddYE quit (Ping timeout: 252 seconds) |
| 13:37:39 | Araq | C0C0: that was my idea too :-) |
| 13:38:04 | yodi | either way, i don't think we can't fully escape the camelCase vs under_scores. Code are are mostly read anyway |
| 13:38:36 | Araq | well the coding convention is camelCase, yodi |
| 13:38:55 | Araq | some exceptions like GC_disable exist though |
| 13:42:15 | yodi | i don't mind camelCase or under_scores as long as it is consistent |
| 13:45:37 | Araq | another idea of me was to forbid underscores in identifiers and make it case sensitive |
| 13:46:10 | Araq | than you only have the problem that some fool considers isupper a perfectly good name |
| 13:47:06 | yodi | yeah i suppose you can't stop people from having stupid names |
| 13:47:30 | yodi | in any convention |
| 13:47:33 | Araq | actually the alllowercasestyle is really handy in a REPL |
| 13:47:50 | Araq | and I like that it simply works with the current Nimrod |
| 13:48:17 | yodi | hehe i just read that as "Allow Case Style" |
| 13:48:21 | yodi | it's getting late |
| 13:48:36 | Araq | ;-) |
| 13:49:25 | yodi | is there such a mode? |
| 13:49:31 | yodi | i love to play around with it |
| 13:49:51 | Araq | well the current Nimrod is case insentitive and underscores are ignored, so go ahead and have fun |
| 13:50:38 | yodi | oh yeh that's right |
| 13:51:07 | yodi | i thought i might have to turn "strict mode" vb style |
| 14:17:47 | * | yodi quit (Quit: Page closed) |
| 14:34:51 | * | DAddYE joined #nimrod |
| 14:37:11 | * | dirkk0 joined #nimrod |
| 14:38:20 | * | q66_ joined #nimrod |
| 14:38:42 | * | q66 quit (Disconnected by services) |
| 14:38:44 | * | q66_ is now known as q66 |
| 14:39:19 | * | DAddYE quit (Ping timeout: 260 seconds) |
| 14:53:29 | * | noam_ quit (Disconnected by services) |
| 14:53:55 | * | noam__ joined #nimrod |
| 14:57:06 | * | datura joined #nimrod |
| 15:04:05 | * | tylere joined #nimrod |
| 15:04:54 | tylere | Has any thought been given to sugaring up variant types a bit. E.g. Instead of having an explicit "kind" field or similar, declare that implicitly and then be able to use the values as contstructors? |
| 15:06:11 | tylere | (this would be functionally identical to the current system using an enum, but syntactically in a client code would be a bit more ML-ish) |
| 15:09:53 | zahary_ | you could try to deliver it as a library; |
| 15:09:53 | zahary_ | algebraic Foo: |
| 15:09:53 | zahary_ | Bar(int, string) |
| 15:09:53 | zahary_ | Baz(float) |
| 15:10:03 | tylere | Ahh right, duh, macros ;) |
| 15:10:23 | tylere | but yea, that's sort of what I'm thinking |
| 15:12:48 | * | mflamer joined #nimrod |
| 15:13:23 | tylere | This is kinda what I'm thinking of |
| 15:13:23 | tylere | https://gist.github.com/tylereaves/7750953 |
| 15:19:54 | * | mflamer quit (Ping timeout: 272 seconds) |
| 15:21:14 | * | girvo quit (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 15:36:09 | * | DAddYE joined #nimrod |
| 15:38:14 | zahary_ | it can be done with the syntax I described. the nkIf and nkFloat constructors will have to be procs after the macro expansions, because a regular enum could be associated with multiple case types and it won't be clear which one is being constructed |
| 15:39:14 | tylere | yea |
| 15:39:14 | zahary_ | you also know about the current object construction syntax that is not very far off from the example, right? |
| 15:39:29 | tylere | yea |
| 15:39:54 | tylere | the bit of code that got me thinking about this was an implementation of a Maybe type which struck me as very ugly |
| 15:40:14 | tylere | because you had to pass in a hasValue boolean in addition to the value |
| 15:40:34 | tylere | just seems a little weird that that last little bit of sugar for full variant types isn't there in core |
| 15:40:44 | zahary_ | well, it's just a missing constructor on the other hand |
| 15:40:54 | tylere | since ADT are such a strong selling point, even wihtout fullblown pattern matching |
| 15:42:34 | * | ics joined #nimrod |
| 15:43:49 | * | DAddYE quit (Ping timeout: 260 seconds) |
| 15:56:05 | * | datura quit (Ping timeout: 246 seconds) |
| 16:01:45 | * | noam__ is now known as noam |
| 16:10:55 | * | datura joined #nimrod |
| 16:39:36 | * | shevy joined #nimrod |
| 16:39:46 | shevy | teach me daily nimrod code snippets! |
| 16:40:16 | * | DAddYE joined #nimrod |
| 16:44:57 | * | DAddYE quit (Ping timeout: 260 seconds) |
| 16:45:17 | * | MFlamer joined #nimrod |
| 16:46:17 | * | Varriount_ joined #nimrod |
| 16:46:17 | dom96 | oh cool, just realised i'm not the only Polish person in here. Finally. |
| 16:46:17 | dom96 | zielmicha: Cześć :) |
| 16:46:57 | * | faassen joined #nimrod |
| 16:50:12 | * | Varriount quit (Ping timeout: 264 seconds) |
| 16:50:12 | * | Varriount_ is now known as Varriount |
| 17:03:37 | * | hoverbear joined #nimrod |
| 17:06:57 | zielmicha | dom96: hej |
| 17:09:38 | * | Varriount_ joined #nimrod |
| 17:13:19 | * | Varriount quit (Ping timeout: 260 seconds) |
| 17:13:20 | * | Varriount_ is now known as Varriount |
| 17:50:58 | * | ics quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
| 17:53:29 | * | DAddYE joined #nimrod |
| 17:53:34 | * | DAddYE quit (Remote host closed the connection) |
| 17:53:46 | * | DAddYE joined #nimrod |
| 17:58:04 | * | ics joined #nimrod |
| 18:01:32 | * | dirkk0 quit (Quit: This computer has gone to sleep) |
| 18:05:06 | * | ics quit (Ping timeout: 246 seconds) |
| 18:07:08 | * | ics joined #nimrod |
| 18:07:42 | Araq | tylere: and how should that sugar look like exactly? |
| 18:08:05 | tylere | hi Araq |
| 18:08:07 | tylere | sorry, was a way |
| 18:08:28 | tylere | so basically, in my proposed syxtax (see the gist I posted), the each case would be tagged |
| 18:08:34 | tylere | that would be the name of the constructor function |
| 18:08:42 | tylere | with args as appropriate for that branch |
| 18:09:23 | tylere | https://gist.github.com/tylereaves/7750953 |
| 18:09:35 | Araq | what if the enum is used in a discriminant in another object? |
| 18:10:07 | tylere | probably the right thing to do is A: make the actual enum hidden behind the scenes, and B: just call that a conflict |
| 18:10:17 | tylere | or maybe overload if it's possible to determine |
| 18:10:38 | tylere | but in the languges I've used ADTs in that would be a compile time error |
| 18:10:46 | tylere | only one constructor per name |
| 18:11:15 | Araq | well Nimrod's approach is more flexible |
| 18:11:29 | Araq | I know you can't accept that. It's true anyway. |
| 18:11:42 | tylere | I don't deny it as more flexible |
| 18:12:01 | tylere | but I also don't see what would be wrong with having more consise (= less error prone) syntax for the most common use casse |
| 18:16:34 | Araq | well it's only a macro away |
| 18:17:40 | Araq | nimrod's enums can be used as array index and in bit sets. Hiding the enum sounds like a bad idea to me |
| 18:18:12 | * | faassen left #nimrod (#nimrod) |
| 18:23:50 | * | Varriount_ joined #nimrod |
| 18:27:12 | * | Varriount quit (Ping timeout: 246 seconds) |
| 18:27:12 | * | Varriount_ is now known as Varriount |
| 18:27:20 | Varriount | Hrm, this is odd. |
| 18:30:52 | Varriount | Araq, what is the reasoning behind the decision to disallow escape sequences in triple-quoted string literals? |
| 18:33:24 | Araq | wysiwyg principle for """ strings seemed to be the natural thing to do |
| 18:33:47 | Araq | I consider python's way weird |
| 18:39:20 | Varriount | Araq, but then, what if you do need non-raw triple quoted string literals? |
| 18:39:38 | Varriount | Is there any way to re-escape a string? (I think there is?) |
| 18:40:59 | Araq | what's the use case for a non-raw triple quoted string? |
| 18:41:15 | Araq | anyway, you can do """bli""" & "\n\n" & """blub""" |
| 18:42:09 | zielmicha | Are there any conventions on whitespace in Nimrod compiler/lib? |
| 18:42:58 | Araq | 2 spaces for indentation, avoid ascii art, and for F's sake use foo(a, b) and not foo (a, b) |
| 18:42:59 | zielmicha | I couldn't get Emacs to properly modify both news.txt and strutils.nim. |
| 18:43:17 | zielmicha | I mean CR vs CR-LF and trailing whitespace. |
| 18:43:37 | Varriount | Stick with whatever was there first? |
| 18:43:44 | Araq | well trailing whitespace is a problem as is LF vs CR-LF in the repo |
| 18:44:01 | Araq | but I dislike huge changelogs with "cleaned up whitespace" |
| 18:44:12 | Araq | but thanks for reminding me |
| 18:44:26 | tylere | Araq: Are the markdown sources from the doc auto generated from something else, or are those the raw source forms? I assume at least the library doc is autogened |
| 18:44:42 | Araq | all is autogened |
| 18:44:56 | Araq | well |
| 18:45:03 | Araq | it's all a dialect of RST |
| 18:45:05 | Varriount | Emacs can't auto-detect line endings? |
| 18:45:08 | Araq | and the RST is written by hand |
| 18:45:33 | zielmicha | @Varriount: It can, but only if only one is used in file |
| 18:45:36 | * | Hannibal_Smith joined #nimrod |
| 18:45:40 | tylere | Are those RST available online anywhere? |
| 18:45:55 | Varriount | Huh, I didn't know files could have mixed line-endings. |
| 18:45:56 | tylere | I have an idea to perhaps work on a transform to LaTeX sources so we can have nice PDFs |
| 18:46:16 | Araq | nimrod's docutils can already generate LaTeX |
| 18:46:20 | tylere | ahh |
| 18:46:29 | Araq | and there is a PDF version somewhere |
| 18:46:46 | * | Hannibal_Smith quit (Client Quit) |
| 18:47:15 | Araq | speaking of which |
| 18:47:18 | * | Hannibal_Smith joined #nimrod |
| 18:47:32 | Araq | documentation for the docgen and what it can do are needed |
| 18:47:52 | Araq | it's pretty much completely undocumented |
| 18:48:13 | Araq | tylere: the sources are the .txt files in doc/ and web/ |
| 18:48:20 | tylere | Araq: gotcha |
| 18:49:54 | * | dirkk0 joined #nimrod |
| 18:53:31 | Araq | tylere: I build the website and all of the documentation with "koch web" |
| 18:53:56 | Araq | so looking at koch.nim the web proc ends up calling tools/nimweb.nim |
| 18:54:30 | MFlamer | Araq: I think I've realized something obvious. An ADT implementation really needs to be either based on a union or pointer(ref). Tweaking the back end to gen strucs for each variant dosent let the C pass them as 1 type. Unless I'm missing something, this would mean specializing each generated function for each variant, which is stupid |
| 18:54:52 | MFlamer | And probably why you used unions in the first place |
| 18:55:28 | Araq | tools/webnim ends up calling the compiler in various ways |
| 18:55:37 | Araq | this setup is a bit complex but works nicely |
| 18:57:24 | Araq | MFlamer: you're right but your way with structs would work too. But it requires to generate some (more?) casts. |
| 18:57:59 | MFlamer | hmm, I'll take a look at that. |
| 18:58:31 | Araq | basically pass a void* around and for field access do ((propertype*) p)->field |
| 18:59:49 | MFlamer | tylere: I've been messing with object variants and ADT on and off for a couple weeks now. I'm planning on adding a macro to emulate Haskell syntax sometime soon. Let me know if you start on anything like this |
| 19:00:06 | tylere | MFlamer: I'm definatly not that far along yet |
| 19:00:11 | tylere | still learning the basics |
| 19:00:17 | tylere | but would be excited to see any developments |
| 19:00:38 | tylere | My ideal language is basically a pragmatic impure, non-monadic haskell |
| 19:00:38 | MFlamer | Araq: is that article public yet? |
| 19:00:42 | Hannibal_Smith | MFlamer, there are some reasons for emulate Haskell and not, for say, Standard ML? |
| 19:00:44 | tylere | which makes no sense, but maybe you get the idea |
| 19:00:57 | MFlamer | You and me are on a very similar path then |
| 19:01:01 | tylere | Hannibal_Smith: the symantics for ADTs between the two are very similar |
| 19:01:34 | MFlamer | I'm just talking about haskell ADT, GADT syntax |
| 19:01:36 | Araq | Hannibal_Smith: I think it's because Standard ML is really an underdog now and nowbody knows it. |
| 19:02:04 | tylere | Araq: It's kinda funny...the was a time, maybe 7-8 years ago, when for a brief moment it looked like Ocaml was gonna take over the world |
| 19:02:10 | MFlamer | There are many thing I like about haskell....and many that should just stay in Haskell |
| 19:02:13 | tylere | It was all the rage on /. and those sort of forums |
| 19:03:02 | Araq | tylere: yeah I wonder what happend. It's really a nice language. |
| 19:03:29 | * | hoverbear quit (Quit: Textual IRC Client: www.textualapp.com) |
| 19:03:42 | tylere | Araq: It is, on paper |
| 19:03:53 | tylere | Araq: I always found it really annoying to actually work with though |
| 19:04:07 | tylere | (syntax quirks, and error messages that feel like they've been run through babelfish...) |
| 19:04:21 | tylere | documentation was never very good, which certainly hurt it |
| 19:04:35 | Araq | MFlamer: the article will not be online before january 2014. I dunno what to do with the really cool new stuff in it. |
| 19:04:36 | tylere | one really good english-language book at the right time could have made a difference I think |
| 19:05:10 | Araq | my major gripe with it was that array of float had to be special cased for performance in the type system. |
| 19:05:23 | Araq | that doesn't feel right for systems programming at all. |
| 19:05:30 | tylere | Araq: Ahh, yes! that's what I hated |
| 19:05:32 | tylere | the math syntax |
| 19:05:35 | MFlamer | I was going to point tylere to it, seems like he has similar taste to me |
| 19:05:36 | tylere | I knew it was something |
| 19:07:26 | * | shevy left #nimrod ("I'll be back ... maybe") |
| 19:10:37 | MFlamer | tylere: stick around. I think with a little time Nimrod can get us close to that language. I fantasized about creating a new LLVM based, impure non monadic haskell like language. Then found Nimrod a few months ago. |
| 19:11:04 | tylere | I plan on it |
| 19:11:20 | tylere | Starting a new job early next year where I will be working about 99% in python |
| 19:11:24 | tylere | which is not a bad language |
| 19:11:37 | tylere | but I have a feeling there might be some performance critical things that might offer possibilties |
| 19:11:56 | tylere | I'm currently using Go for that sort of thing, but I don't really like Go, other than the short learning curve |
| 19:12:00 | Hannibal_Smith | tylere, do the Python way! Write C! |
| 19:12:12 | Hannibal_Smith | tylere, Go and performance don't mix |
| 19:12:14 | Araq | no write the extensions in Nimrod |
| 19:12:35 | Araq | and document the process while you do it. It's easy in fact. |
| 19:12:52 | * | Araq should stop saying "easy". |
| 19:13:01 | tylere | Hannibal_Smith: Actually for the kind of stuff I've done in it, Go honestly has performed very well... but it's been highly concurrent rather than number-crunching type things |
| 19:15:04 | Hannibal_Smith | How many goroutines? |
| 19:15:40 | tylere | I would spool up several hundred sometimes |
| 19:15:47 | tylere | for stuff like load testing our website |
| 19:15:54 | tylere | Python...doesn't handle that very well |
| 19:16:20 | Varriount | tylere, even with pypy? |
| 19:16:20 | Hannibal_Smith | In Python you would end using something like Twited of Stackless |
| 19:16:29 | Hannibal_Smith | *Twisted |
| 19:16:37 | tylere | Varriount: Haven't really gotten into pypy too much |
| 19:16:45 | Hannibal_Smith | And the result are terrible, IMHO |
| 19:16:53 | Hannibal_Smith | *or Stackless |
| 19:17:12 | Hannibal_Smith | Ahh my english is also terrible |
| 19:19:02 | Hannibal_Smith | I did rewrite a socket server from Python + Greensomethinglibrary (I don't rembember, wall an hyped library for using epoll with a good interface in Python) |
| 19:19:13 | Hannibal_Smith | I ended rewriting it in C# |
| 19:19:25 | Hannibal_Smith | *was an |
| 19:20:50 | Hannibal_Smith | Ah, this http://gevent.org |
| 19:20:54 | Araq | zielmicha: if your editor ends up "fixing" the whitespace, don't worry. We don't reject pull requests because of that. Just don't make a pull request touching every file and fixing ws. |
| 19:21:12 | * | dirkk0 quit (Quit: This computer has gone to sleep) |
| 19:22:05 | Araq | for me it's more important you're doing productive work instead of following some religious rules |
| 19:24:03 | Hannibal_Smith | C# is a messy language, but let you do the work |
| 19:24:32 | Araq | Hannibal_Smith: depends. The lack of "typedef" sometimes makes me furious |
| 19:24:54 | Hannibal_Smith | Generic programming in C# is horrible, yes great point |
| 19:25:06 | * | gradha joined #nimrod |
| 19:29:27 | * | MFlamer quit (Ping timeout: 246 seconds) |
| 19:29:56 | Hannibal_Smith | As you look at a language, you end find so many problems |
| 19:30:11 | Araq | hi gradha, seems like you found your whitespace issue. awaitin' your patch. |
| 19:30:36 | gradha | Araq: you mean adding the flag to the set? |
| 19:30:54 | Hannibal_Smith | I can't undestand how people claims that "Haskell let you write safe code" when all code in Haskell basically has space leaking bugs |
| 19:31:11 | Hannibal_Smith | *basically any software |
| 19:31:30 | Araq | gradha: yes |
| 19:31:49 | tylere | Hannibal_Smith: I think the mistake most of the Haskell folks make is that they make the leap from "our compiler is pretty spiffy" to "our compiler is (theoretically) perfect" |
| 19:31:51 | gradha | dunno, might break something important |
| 19:32:04 | tylere | <insert joke about the difference between theory and practice here> |
| 19:32:35 | Hannibal_Smith | tylere, the end using library like pipe or conduit and make flamewar between library |
| 19:32:45 | Hannibal_Smith | *they end |
| 19:32:50 | Araq | well zielmicha suggested you can introduce another parameter, gradha |
| 19:32:58 | Hannibal_Smith | And then "no problem, Haskell is very safe language" |
| 19:33:26 | Araq | and btw. Adding a default parameter only works thanks to the required 'procvar' pragma ... |
| 19:33:41 | Araq | ;-) |
| 19:33:50 | gradha | I'm still musing on why the htmlparser code expects xmlWhitespace when it never gets them |
| 19:34:45 | Hannibal_Smith | tylere, and I never understand how can people debug Haskell code |
| 19:34:57 | Hannibal_Smith | They claims that "use test make debug futile" |
| 19:34:58 | Hannibal_Smith | ... |
| 19:35:03 | Araq | well xml/html is really strange when it comes to whitespace |
| 19:35:08 | Hannibal_Smith | *unit testing |
| 19:35:22 | Araq | everybody considers it unimportant and yet it is important |
| 19:36:22 | Hannibal_Smith | It's like Go that let you use assembly, because you can't use intrinsic |
| 19:37:36 | Hannibal_Smith | What "great language" are now considerated modern |
| 19:37:54 | Hannibal_Smith | So the only hope is Nimrod :-P |
| 19:38:06 | Hannibal_Smith | Or Standard ML :°D |
| 19:38:15 | gradha | the thing is, with or without parameter, htmlparser still doesn't handle whitespace properly, AFAIK more than a single whitespace char has to be coalesced into a space, but that's not being done |
| 19:38:21 | OrionPKM | araq reject that pull request and i'll submit a different one later tonight |
| 19:38:35 | Araq | OrionPKM: alright, great |
| 19:38:55 | Araq | gradha: well I consider this part of the xml spec to be insane |
| 19:39:08 | gradha | but HTML isn't XML, is it? |
| 19:39:18 | Araq | html, xml whatever |
| 19:39:48 | gradha | then I'll fix it in an incorrect way that is less broken for the moment |
| 19:40:12 | Araq | yeah, that's the Nimrod way. *cough* |
| 19:40:42 | * | zielmicha quit (Ping timeout: 246 seconds) |
| 19:40:56 | tylere | ugh |
| 19:41:38 | tylere | Always cringe a bit over the name (no offense)...in 1950's american english (probably british english as well), nimrod is rather not-positive slang |
| 19:41:41 | gradha | I was actually surprised htmlparser uses parsexml, as the handling of both is different |
| 19:41:53 | tylere | but i'm sure I'm not the first to mention that |
| 19:42:27 | gradha | tylere: in spanish nimrod is slang for "blackjack, hookers and honey badgers" |
| 19:43:07 | Araq | tylere: the truth is: When I decided on that name, I wasn't even aware "Nimrod" is an English word! It certainly doesn't sound English. |
| 19:43:42 | gradha | doesn't it mean dongle? like, from "nim's bigger than yours rod"? |
| 19:44:07 | tylere | the sense, at least in american enlish, is, roughly "idiot" |
| 19:44:12 | Araq | And a language in which Turkey is both an animal and a country already has quite some problems... |
| 19:44:16 | tylere | or possibly "slow witted" |
| 19:44:18 | tylere | Araq: heh |
| 19:44:32 | tylere | Araq: and I'm sure german has a word for that |
| 19:44:33 | Hannibal_Smith | Ahahaah |
| 19:44:40 | tylere | with at least 15 syllables |
| 19:44:45 | gradha | let's rewrite GIMP in Nimrod, for american audiences |
| 19:44:45 | EXetoC | natural languages m8 :> |
| 19:44:46 | tylere | all languages have their warts ;P |
| 19:44:54 | EXetoC | Lojban ftw |
| 19:45:34 | Araq | tylere: I consider "nim" an acceptable nickname |
| 19:45:41 | tylere | that works |
| 19:45:52 | tylere | Isn't there already a language called nym though? |
| 19:46:19 | tylere | apparently not |
| 19:46:27 | tylere | I could have sworn that rang a bell though |
| 19:46:45 | gradha | tylere: the name is not that important, since we have as a mascot a honey badger |
| 19:47:11 | Araq | well it's too late to change the name now and since the competitors all got it wrong too, it's not too bad |
| 19:47:33 | Araq | (can't google for D and Go, "Rust" is ugly too) |
| 19:47:46 | Hannibal_Smith | Go! |
| 19:47:48 | Hannibal_Smith | Ahahaha |
| 19:48:01 | Hannibal_Smith | $GOHOME! |
| 19:48:25 | EXetoC | don't you need to stick "programming (language)" onto nimrod also? since it has plenty of meanings |
| 19:48:42 | Araq | EXetoC: hmm good point I guess |
| 19:49:20 | Hannibal_Smith | Lisp got a pretty good name |
| 19:49:28 | gradha | OrionPKM: the clippy I have here thinks you need help with a pull request |
| 19:49:32 | tylere | speaking of names (sort of)... www.nimrod-code.org redirects but nimrod-code.org does not |
| 19:49:55 | Araq | does for me now |
| 19:50:01 | EXetoC | let's go with nimlang, or maybe something like jcsgk! |
| 19:50:03 | Araq | it's some caching issue |
| 19:50:08 | Araq | I had the same problem |
| 19:51:11 | * | MFlamer joined #nimrod |
| 19:59:53 | OrionPKM | thanks gradha :P |
| 20:01:55 | * | MFlamer quit (Read error: Connection reset by peer) |
| 20:03:02 | * | MFlamer joined #nimrod |
| 20:07:03 | Araq | bbl |
| 20:08:28 | MFlamer | see ya |
| 20:08:31 | * | rndbit` joined #nimrod |
| 20:10:51 | * | rndbit quit (Ping timeout: 250 seconds) |
| 20:10:52 | * | rndbit` is now known as rndbit |
| 20:16:50 | * | Varriount_ joined #nimrod |
| 20:20:15 | * | Varriount quit (Ping timeout: 246 seconds) |
| 20:21:56 | * | tylere quit (Remote host closed the connection) |
| 20:30:59 | * | Varriount_ is now known as Varriount |
| 20:34:37 | * | dom96 quit (Excess Flood) |
| 20:34:56 | * | dom96 joined #nimrod |
| 20:56:17 | * | MFlamer quit (Ping timeout: 252 seconds) |
| 21:18:14 | * | noam_ joined #nimrod |
| 21:21:23 | * | noam__ joined #nimrod |
| 21:21:51 | * | noam quit (Ping timeout: 272 seconds) |
| 21:24:50 | * | noam_ quit (Ping timeout: 264 seconds) |
| 21:31:50 | * | Varriount_ joined #nimrod |
| 21:34:19 | * | noam joined #nimrod |
| 21:35:36 | * | Varriount quit (Ping timeout: 260 seconds) |
| 21:35:36 | * | Varriount_ is now known as Varriount |
| 21:36:44 | * | noam__ quit (Ping timeout: 246 seconds) |
| 21:37:32 | Araq | gradha: whether you want it or not, I'm giving you write access to the repository now |
| 21:39:39 | Araq | you can always request a code review of course |
| 21:40:19 | gradha | eeeeeeeh |
| 21:41:51 | gradha | I'm already crumbling under the pressure… need… to… drink… more… |
| 21:44:00 | * | IrvMG joined #nimrod |
| 21:44:01 | Araq | ha, Lindsay Lohan wants to sue GTA 5 |
| 21:44:35 | gradha | amazing, Lindsay Lohan is still alive? |
| 21:45:00 | * | MFlamer joined #nimrod |
| 21:47:01 | IrvMG | Hello |
| 21:47:10 | Araq | only her soul, her amazing body is gone |
| 21:47:38 | IrvMG | BiggestInt to string ? |
| 21:47:48 | Araq | $ doesn't work? |
| 21:48:17 | Araq | $ pretty much turns everything into a string |
| 21:48:34 | gradha | Araq: I went to lambda the ultimate and they say nothing of Lindsay, aren't you making it up? |
| 21:48:47 | IrvMG | ummm $JSON[BiggestInt].num ? |
| 21:49:23 | IrvMG | or only: $JSON["key"] |
| 21:49:40 | Araq | dunno try both |
| 21:50:04 | Araq | $ for Json is not playing nice according to BitPuffin |
| 21:50:27 | dom96 | $json["key"].num |
| 21:51:02 | Araq | dom96: any idea what we break if we change $ for Json? |
| 21:51:09 | * | Araq bets nimbuild will break |
| 21:51:37 | dom96 | what's wrong with $ for json? |
| 21:52:12 | Araq | $json["key"] == "value" does not do what people expect |
| 21:52:42 | gradha | it can hardly do for anything other than strings |
| 21:52:50 | Hannibal_Smith | OT: http://overwatering.org/blog/2013/12/scala-1-star-would-not-program-again/ wow, these people deserve to use Go |
| 21:54:53 | gradha | well, a single sentence with the words java, xsl and xml, sounds like only PITA will come next |
| 21:55:19 | dom96 | Araq: Yeah, that will break quite a lot i'd say |
| 21:55:59 | dom96 | IMO the current $ makes sense |
| 21:56:45 | dom96 | But then again, perhaps it fits the definition of 'repr' more. |
| 21:56:51 | * | gradha wonders what should he do with his new repository superpowers |
| 21:56:51 | dom96 | But we can't name it that. |
| 21:57:04 | dom96 | gradha: SEO optimisations! |
| 21:57:12 | dom96 | needs more britney |
| 21:57:13 | gradha | Lindsay sounds like a good start, yes |
| 21:57:22 | gradha | And then Rianna |
| 21:57:29 | gradha | wait, I don't know how to spell her |
| 21:57:38 | gradha | chicks names are so complicated nowadays |
| 21:57:42 | dom96 | Rihanna lol |
| 21:59:10 | dom96 | gradha: I'll add you to the nimrod-code org too :) |
| 21:59:34 | gradha | dom96: ho ho, still don't understand why you are giving scissors to somebody who likes running around with them |
| 22:00:29 | dom96 | gradha: Because you are exceptionally good at running with them :P |
| 22:00:42 | IrvMG | Araq thanks |
| 22:01:40 | gradha | what I don't understand is why, I mean, I could be your little minion accepting pull requests, but does it bother you so much to open a webbrowser and click "merge pull request"? |
| 22:02:47 | gradha | talking about PR, is there any way to checkout a OrionPKM's PR without him having pushed his repo fork? |
| 22:02:48 | dom96 | I dunno. Araq added you to his repo and I felt like I needed to fit in. |
| 22:05:18 | gradha | google is broken, I asked for pictures of Lindsay and got pictures of zombies back |
| 22:05:35 | EXetoC | lols |
| 22:07:03 | IrvMG | http://en.wikipedia.org/wiki/Nimrod_(programming_language) ? okno (: |
| 22:08:19 | * | Amrykid quit (Excess Flood) |
| 22:08:26 | * | Amrykid joined #nimrod |
| 22:09:58 | gradha | maybe we should a wikipedia article on zahary's hypolang, then mention it was inspired by nimrod, and have that as a source |
| 22:10:17 | gradha | would wikipedia implode referencing itself? |
| 22:10:29 | EXetoC | can symbols be excluded when exporting a module? |
| 22:10:52 | gradha | EXetoC: symbols aren't exported by default, you append * |
| 22:11:35 | * | Amrykid quit (Changing host) |
| 22:11:35 | * | Amrykid joined #nimrod |
| 22:11:36 | gradha | and presumably "export B.TMyObject" deals with exporting that single symbol and not the rest |
| 22:11:52 | Araq | EXetoC: perhaps you're asking for "import module except foo" which exists too |
| 22:12:56 | gradha | so if I publish an opensoure ios app implemented in nimrod, is that a valid wikipedia source? |
| 22:12:57 | EXetoC | yes but I'm referring to the export keyword. 'except' since to exist only for import |
| 22:13:21 | EXetoC | I'm trying to avoid exporting TRect from opengl.nim, so as to avoid collisions |
| 22:13:49 | Araq | gradha: when I publish a fucking book about Nimrod that's not a valid source, since it's from me ... |
| 22:14:15 | gradha | well, revoke my repo superpowers then? I'm a nobody after all |
| 22:14:35 | Araq | well blog articles don't count either |
| 22:14:42 | * | gradha goes sobbing to a corner for not being a good wikipedia source |
| 22:14:42 | Araq | I'll remove you once your book is ready |
| 22:17:27 | Araq | gradha: 'export' really is meant for symbol forwarding from another module, not as a replacement for * |
| 22:18:09 | fowl | Araq, after deleting opengl from HEAD and using the babel package, sometimes loading the opengl module hangs |
| 22:18:54 | fowl | well, its fine to import opengl but my project calls glx* functions i think thats the problem, your fancy loading stuff |
| 22:20:11 | EXetoC | will make an enhancement request then |
| 22:20:59 | fowl | here's a non-nimrod reference to nimrod: http://steved-imaginaryreal.blogspot.com/2013/09/nimrod-return-of-pascal.html so lets remake the article? |
| 22:21:50 | EXetoC | dom96: hey, where's your example? :p https://github.com/Araq/Nimrod/issues/177 |
| 22:22:07 | Araq | fowl: we tried that, but it's only a blog and anonymous |
| 22:22:10 | gradha | fowl: you need to establish first that blog as a reliable independant source of midichlorians in the eyes of wikipedia deletionists |
| 22:22:48 | fowl | lol..weird |
| 22:22:51 | dom96 | EXetoC: It's not that hard to reproduce it IMO. |
| 22:23:03 | fowl | i've seen languages with shorter articles with no references |
| 22:23:09 | fowl | maybe it just needs to be shorter |
| 22:23:31 | dom96 | fowl: Read the talk pages and the HN thread. |
| 22:23:57 | fowl | nah nvm i'll let you guys sort it out |
| 22:25:00 | gradha | the problem is likely nimrod attracting the gaze of people due to having other meanings, while "the blackjack programming language" could go unter their radar for long |
| 22:26:25 | Araq | fowl: well I can't imagine the reason for your opengl issue. can you try both versions and diff the generated C? |
| 22:26:43 | fowl | sure |
| 22:26:44 | * | gradha puts on the nimrod-code team crown and looks into the mirror |
| 22:27:04 | * | Araq is sure gradha feels like a badger now |
| 22:29:44 | fowl | Araq, oh i cant get the generated c because it hangs at Hint: opengl [Processing] |
| 22:32:02 | Araq | oh ... you mean the compiler hangs? |
| 22:32:18 | Araq | I thought the resulting exe doesn't work |
| 22:32:44 | Araq | well "koch boot" CTRL+C the debug compiler and come up with a stack trace then |
| 22:32:57 | * | gradha toasts to his new superpowers with a glass of egg liquor |
| 22:33:08 | EXetoC | mmh, egg |
| 22:33:19 | Araq | I had cherry liquor, gradha :-) |
| 22:33:32 | Araq | but only because my stomach started a rebellion |
| 22:33:52 | gradha | yeah, I'm pretty sick myself… everyday, and need treatment |
| 22:34:04 | dom96 | good night guys |
| 22:34:08 | fowl | night |
| 22:34:09 | gradha | bye |
| 22:34:34 | gradha | should I try my new superpowers with https://github.com/Araq/Nimrod/pull/697? |
| 22:37:25 | * | OrionPKM quit (Remote host closed the connection) |
| 22:37:40 | fowl | yeah good luck with that one |
| 22:38:18 | fowl | Araq, https://gist.github.com/fowlmouth/41d53cac7acb6933b0d5 |
| 22:38:19 | gradha | I don't mind merging it properly if https://github.com/Araq/Nimrod/commit/b09ebe2759d678c9e320cdbb9c6e6b8aa5419e38 and https://github.com/Araq/Nimrod/commit/71da4175b05846fbda27a5d93bd50efda0ca9fda are fine with you |
| 22:38:40 | * | Jackneill quit (Remote host closed the connection) |
| 22:38:43 | Araq | gradha: well start with #703 |
| 22:39:12 | * | OrionPKM joined #nimrod |
| 22:39:15 | fowl | lol nimrod.nimrod.cfg |
| 22:39:25 | NimBot | Araq/Nimrod master fcedfda Grzegorz Adam Hankiewicz [+0 ±1 -0]: Makes htmlparser handle whitespace. Refs #694.... 5 more lines |
| 22:39:25 | NimBot | Araq/Nimrod master 9f909fd Grzegorz Adam Hankiewicz [+0 ±1 -0]: Merge pull request #703 from gradha/pr_fixes_htmlparser_whitespace... 2 more lines |
| 22:39:30 | Araq | but #697 is fine with the commits you mentioned |
| 22:39:42 | gradha | this is amazing… I clicked a button, then another one… and it was done |
| 22:39:47 | Araq | fowl: we all knew the day would come ... :-) |
| 22:42:02 | Araq | fowl: options.nim:274 try to comment out that line please |
| 22:43:56 | fowl | i should say that i commented out the lib options in nimrod.cfg for the modules i removed and the problem is still there |
| 22:45:15 | fowl | it seems to work now |
| 22:47:04 | bastian_ | I'm trying to modify he contents of a nested seq like so: http://paste.lisp.org/display/140346 |
| 22:47:35 | bastian_ | the output is [2], [1] - how can I actually modify the inner seq? |
| 22:48:32 | fowl | bastian_, seqs have value semantics, var s = seqs[0] copies the seq |
| 22:49:03 | fowl | bastian_, so you could say var s = seqs[0].addr; s[0] = 2; s[].add nextNumber |
| 22:49:13 | * | IrvMG quit () |
| 22:49:14 | fowl | (capture pointer to it) |
| 22:49:20 | bastian_ | right, and I read about refs, but I'm not sure how to use them. How do I obtain a reference to the inner seq instead of copying it? |
| 22:51:48 | bastian_ | I see, so addr is also used in this case and [] dereferences |
| 22:51:58 | bastian_ | thanks! |
| 22:51:59 | fowl | ref in nimrod is a garbage collected pointer |
| 22:58:35 | NimBot | Araq/Nimrod master d780ef3 Erik O'Leary [+0 ±1 -0]: Updated cfg file processing... 3 more lines |
| 22:58:35 | NimBot | Araq/Nimrod master 3e3ad23 onionhammer [+1 ±0 -1]: Renamed nimrod.cfg to nimrod.nimrod.cfg |
| 23:02:08 | gradha | hmm... maybe I should have checked those into a new PR before merging to leave a trace |
| 23:09:42 | Varriount | Sublime Text/Textmate Syntax Definitions are sorely lacking any method with which to re-use match rules/ |
| 23:09:45 | Varriount | :? |
| 23:11:28 | Araq | Varriount: looks like a prime example of how declarative programming can suck :-) |
| 23:13:25 | BitPuffin | Araq, dom96: yeah the current $ for json is definitely annoying |
| 23:13:42 | NimBot | Araq/Nimrod master 0b037cd Grzegorz Adam Hankiewicz [+0 ±1 -0]: Adds an example to htmlparser showing how to save changes. |
| 23:13:42 | NimBot | Araq/Nimrod master 4b70ec3 Grzegorz Adam Hankiewicz [+0 ±1 -0]: Merge pull request #695 from gradha/pr_adds_htmlparser_example... 2 more lines |
| 23:14:32 | NimBot | Araq/Nimrod master 700a5c1 Grzegorz Adam Hankiewicz [+0 ±1 -0]: Adds to tutorial info about unpacking tuples. |
| 23:14:32 | NimBot | Araq/Nimrod master cfafed2 Grzegorz Adam Hankiewicz [+0 ±1 -0]: Mentions tuple unpacking only works in var/let blocks. |
| 23:14:32 | NimBot | Araq/Nimrod master acf9925 Grzegorz Adam Hankiewicz [+0 ±1 -0]: Merge pull request #687 from gradha/pr_documents_tuple_unpacking... 2 more lines |
| 23:15:11 | NimBot | Araq/Nimrod master c7c1786 Grzegorz Adam Hankiewicz [+0 ±1 -0]: Expands tutorial macro section with step by step guide. |
| 23:15:11 | NimBot | Araq/Nimrod master 874d005 Grzegorz Adam Hankiewicz [+0 ±1 -0]: Modifies example to use splitLines. |
| 23:15:11 | NimBot | Araq/Nimrod master b324172 Grzegorz Adam Hankiewicz [+0 ±1 -0]: Corrects grammar and span of italics in text. |
| 23:15:11 | NimBot | Araq/Nimrod master 76db37e Grzegorz Adam Hankiewicz [+0 ±1 -0]: Merge pull request #676 from gradha/pr_expands_macro_tutorial... 2 more lines |
| 23:15:25 | Araq | uh oh |
| 23:15:57 | Araq | so many pulls |
| 23:16:07 | gradha | scary stuff |
| 23:16:46 | OrionPKM | risky business gradha |
| 23:17:23 | fowl | Araq, is that change to options.nim acceptable |
| 23:17:25 | gradha | hah, you will see when I start merging source code PRs |
| 23:17:52 | Araq | fowl: nah, fix bringToFront so that it doesn't create a cyclic list |
| 23:18:49 | OrionPKM | does anyone here have ST2? |
| 23:18:51 | gradha | OrionPKM: for a fee I'll merge the stdlib changes you needed to opensource your stuff |
| 23:19:14 | OrionPKM | lol, they're breaking changes and hacks :P |
| 23:19:40 | gradha | if they didn't break anything I would be asking for a fee |
| 23:21:22 | OrionPKM | so they're free because they break things? |
| 23:22:01 | gradha | oh, mistyped that, it should have been a "wouldn't" |
| 23:22:05 | BitPuffin | Araq, dom96: basically when you use $ you expect to be able to compare it to a nimrod string. If we are gonna be perl-cryptic about our shortcuts they need to at least be consistent. Because otherwise it would be better to have toString because that would not read as toJsonString. But neither should $ because it _is_ toString |
| 23:22:13 | BitPuffin | so let it break |
| 23:23:03 | fowl | why does the compiler have its own linked list implementation >_> |
| 23:23:30 | Varriount | fowl, the same reason it has it's own rope library. |
| 23:25:50 | BitPuffin | Araq: you even said that breaking things is good ;) |
| 23:25:55 | OrionPKM | araq idetools work with babel libs? im getting an SIGSEGV |
| 23:26:28 | Araq | OrionPKM: idetools sometimes work, I don't think it's related to babel whether it works |
| 23:26:45 | Araq | BitPuffin: no I said "breaking bad" is good |
| 23:26:47 | OrionPKM | ah |
| 23:27:23 | Araq | fowl, Varriount well the compiler predates the stdlib ... that's why |
| 23:28:00 | fowl | vast refactoring needed |
| 23:28:16 | BitPuffin | Araq: haven't seen breaking bad yet hehehehehehheehe |
| 23:28:27 | BitPuffin | Araq: no but yeah. And current $ is bad |
| 23:28:34 | BitPuffin | so break that shit |
| 23:28:43 | gradha | maybe Lindsay could refactor the dreaded system.nim, she's already loaded with painkillers one way or another |
| 23:28:44 | Araq | BitPuffin: I agree, but you have to convince dom96 |
| 23:28:45 | BitPuffin | make it wish it never existed |
| 23:28:54 | fowl | who is lindsay |
| 23:29:19 | gradha | fowl: Lindsay Lohan |
| 23:29:30 | BitPuffin | dom96: I will reach into the monitor through the fiber of the interwebs and strangle you if you disagree with me xD kidding |
| 23:29:39 | Araq | OrionPKM: we have lots of tests for idetools but nobody who's working on making them work, so bug reports don't help at this point |
| 23:29:44 | EXetoC | dom96: so why does the current behavior make more sense? can't think of any reasons why |
| 23:29:56 | Araq | dom96 is sleeping |
| 23:29:57 | OrionPKM | araq got it |
| 23:29:59 | BitPuffin | no but it seems like dom96 is not here |
| 23:30:08 | BitPuffin | sleeping? well then he surely is not a god! |
| 23:30:27 | BitPuffin | no but yeah |
| 23:30:43 | BitPuffin | I made my point a little bit higher up |
| 23:31:04 | BitPuffin | and like EXetoC I cannot think of any reason why the current behaviour makes more sense |
| 23:31:10 | BitPuffin | so atm it's 3 against 1 :) |
| 23:31:40 | * | BitPuffin believes dom96's opinion might be biased also because it would break his code |
| 23:31:46 | BitPuffin | but it would also break my code |
| 23:31:50 | BitPuffin | but much less code |
| 23:32:33 | BitPuffin | but! we can discuss it when everyone is awake instead :P |
| 23:33:02 | BitPuffin | EXetoC: by the way is it not bedtime for us? :P |
| 23:33:13 | Araq | well json.`$` surely is nice as it is. It's however the old $ vs. repr issue |
| 23:33:14 | EXetoC | no |
| 23:33:34 | BitPuffin | EXetoC: agreed |
| 23:33:39 | BitPuffin | or wait |
| 23:33:42 | BitPuffin | don't you mean yes |
| 23:33:47 | BitPuffin | that it is not bedtime :D |
| 23:33:49 | BitPuffin | eh eh eh!!1 |
| 23:34:08 | BitPuffin | Araq: I disagree, $ does not return a string |
| 23:34:13 | BitPuffin | it returns a bullshit string |
| 23:35:00 | gradha | "Nimrod, the programming language with attitude strings" |
| 23:35:10 | BitPuffin | exactly |
| 23:35:20 | BitPuffin | it's what the wikipedia article will say if we don't fix this :P |
| 23:35:24 | * | webskipper joined #nimrod |
| 23:35:52 | Araq | BitPuffin: we can make '$' deprecated, so people notice when it's used and then change its behaviour |
| 23:36:26 | Araq | that's the standard way to do things here but it's a rather slow process |
| 23:36:39 | Araq | so sometimes shortcuts are better |
| 23:37:15 | BitPuffin | Araq: ah, you mean in a way that it's not really deprecated |
| 23:37:20 | BitPuffin | just that it's about to change |
| 23:37:25 | Araq | yeah |
| 23:37:39 | BitPuffin | but then people can't really change the code can they lol |
| 23:37:45 | BitPuffin | because it will remain deprecated |
| 23:37:59 | BitPuffin | even when it is changed to work with the new behaviour |
| 23:38:10 | Araq | well there will be json.repr or whatever with the old behaviour |
| 23:38:36 | Araq | however it's really a tough decision |
| 23:38:47 | BitPuffin | I'd say it is better to change it and output a warning for a while |
| 23:38:49 | Araq | serialization might use $ in a generic way |
| 23:38:59 | Varriount | Wait, what is this talk about `$` being bad? |
| 23:39:01 | Araq | and the serialization of json is pretty well defined |
| 23:39:10 | BitPuffin | Varriount: not $ in general, the $ in json |
| 23:39:24 | BitPuffin | Araq: shouldn't serialization use repr though anyway |
| 23:39:38 | Araq | currently "repr" is unusable for that |
| 23:39:46 | Araq | as it's only for debugging |
| 23:39:54 | Araq | and includes the addresses and shit |
| 23:39:55 | BitPuffin | I was actually going over earlier today in my head about how I should serialize some data in my game |
| 23:40:13 | BitPuffin | and I thought well it would probably be based on repr somehow |
| 23:40:18 | Varriount | Araq, we need some advanced repr, that has things like filters, etc. |
| 23:40:31 | Araq | well we have marshal.nim |
| 23:40:34 | BitPuffin | Araq: okay so call it something else than repr and keep old repr |
| 23:40:51 | Varriount | dataRepr? |
| 23:40:53 | Araq | BitPuffin: well we already have marshal and that supports json serialization |
| 23:40:59 | Araq | ... so ... I dunno |
| 23:41:01 | BitPuffin | Araq: so what is the problem |
| 23:41:04 | BitPuffin | use it |
| 23:41:45 | Varriount | Does marshal support pluggable serialization? Or is everything built-in? |
| 23:42:11 | gradha | good night, honey badgers |
| 23:42:23 | * | gradha quit (Quit: bbl, need to watch http://www.youtube.com/watch?v=hcDEWiH-ciw again) |
| 23:42:26 | Araq | everything built-in ... there might be a way to override things that I forgot about |
| 23:42:53 | Varriount | Araq, I don't think that's good design practice for an stdlib :/ |
| 23:42:55 | EXetoC | BitPuffin: you want the serialize using the current 'repr'? |
| 23:43:17 | Araq | Varriount: oh but it is. It's just against "common wisdom". |
| 23:43:34 | Araq | however in the long run I expect macros working on types to take over this part |
| 23:43:47 | BitPuffin | EXetoC: maybe not, but the point is more that I did not think that I was gonna be using $ really |
| 23:43:49 | Varriount | Welp, back to essay writing. |
| 23:44:18 | Araq | which provides the same flexibility as the OO approach without the bullshit |
| 23:44:22 | EXetoC | so something provided by some module then |
| 23:44:27 | BitPuffin | yeah |
| 23:44:54 | BitPuffin | something that could serialize into a binary format would be nice |
| 23:45:00 | BitPuffin | for space reasons |
| 23:45:06 | BitPuffin | outer space |
| 23:45:52 | * | xhevahir joined #nimrod |
| 23:46:00 | Araq | hi xhevahir welcome |
| 23:46:55 | webskipper | damn, jEdit nimrod xml does not work for me |
| 23:47:13 | webskipper | https://github.com/exhu/nimrod-misc/tree/master/jedit |
| 23:47:44 | xhevahir | Hi. I'm having problems with the interactive Nimrod REPL. Whenever I've tried to use a for loop, the compiler says Error: cannot evaluate ' . |
| 23:48:12 | BitPuffin | hahaha |
| 23:48:14 | Araq | known bug, don't use the REPR |
| 23:48:16 | BitPuffin | xhevahir: take cover |
| 23:48:19 | BitPuffin | too late |
| 23:48:32 | Araq | er *REPL |
| 23:48:41 | BitPuffin | Araq: I think we've been discussing repr too much |
| 23:48:47 | Araq | however try again with the vm2 branch |
| 23:49:00 | Araq | that should fix the for loop at least |
| 23:49:10 | BitPuffin | either that or you've had too much cherry liquor |
| 23:49:13 | xhevahir | OK. I saw some mention of a bug involving the backtick, and a warning about the REPL being limited. |
| 23:50:06 | Araq | webskipper: exhu is not arround, so you better write a bug report |
| 23:50:14 | webskipper | mom |
| 23:50:37 | fowl | dont bother mom with this |
| 23:51:42 | BitPuffin | fowl: hahaha :) |
| 23:52:33 | BitPuffin | how's the btc hunt going fowl |
| 23:52:56 | webskipper | ok, my fault. it saved the xml as html repr not as raw xml |
| 23:53:07 | webskipper | now it works |