00:00:00 --- log: started retro/13.01.19 08:16:37 tangentstorm: I cloned the noct repo; will try to take a look at it this afternoon 08:17:01 (I've been rather busy between work and dealing with sick kids at home all week) 08:30:09 * oPless is porting norvigs scheme to .net 08:30:35 it now appears to work, unless you run r4rs test then it blows up 08:31:18 not bad however for a few days work… there's a lot of annoying differences between the jvm and clr 08:46:50 --- join: ncv (~quassel@89.35.216.197) joined #retro 08:46:50 --- quit: ncv (Changing host) 08:46:50 --- join: ncv (~quassel@unaffiliated/neceve) joined #retro 08:55:06 --- quit: tangentsleep (Read error: Operation timed out) 09:03:00 --- join: tangentsleep (~michal@108-218-151-22.lightspeed.rcsntx.sbcglobal.net) joined #retro 09:26:43 --- nick: tangentsleep -> tangentstorm 09:28:10 * tangentstorm has been pretty sick all week himself. :/ 09:51:36 --- quit: ncv (Read error: Operation timed out) 10:12:40 --- join: ncv (~quassel@89.35.216.197) joined #retro 10:12:40 --- quit: ncv (Changing host) 10:12:40 --- join: ncv (~quassel@unaffiliated/neceve) joined #retro 10:18:21 --- quit: ncv (Remote host closed the connection) 11:08:23 --- join: Necrs1mia84 (~Necrs1mia@78-47-111-140.cinfuserver.com) joined #retro 11:08:35 --- part: Necrs1mia84 left #retro 11:48:51 --- quit: karswell (Read error: Operation timed out) 13:12:36 --- join: Mat2 (~claude@91-65-144-133-dynip.superkabel.de) joined #retro 13:12:43 hello 13:12:56 heya! 13:25:52 gentstorm 13:26:00 hi tangentstorm 13:26:05 :) 13:26:26 what's up ? 13:26:37 working on an oberon07 compiler 13:26:47 just finished translaiting the PL/0 test suite 13:27:00 https://github.com/nickelsworth/noct 13:27:46 I need to add some tests for arrays, procedure variables, pointers.... 13:28:07 oberon, nice. I have transformed ANSI C to it's Algol syntax roots 13:28:08 I think I may start by trying to target javascript or python. 13:28:32 I'm worried about garbage collection in retro. I've never tried to implement such a thing. 13:28:54 what do you mean? you wrote a compiler? 13:29:50 no, not really. GCC only needed some macros and some internal hints for supporting Algol syntax instead of the later C one 13:31:44 ah right :) 13:32:12 by the way, C is just Algol with some syntax short writings and symbolical obfuscation 13:33:54 int test (uInt8_t byte, void *p) {....; return ...} -> 13:34:55 function (integer) test (byte Byte, pointer p) begin .....; return ... end 13:35:17 :) 13:35:38 what about the whole "pass by name" thing in algol? 13:35:53 that's the same as in C 13:36:38 http://rosettacode.org/wiki/Man_or_boy_test#ALGOL_60_-_Knuth.27s_example 13:37:09 that's Algol 60 but C evolved over B from Algol W 13:37:21 http://rosettacode.org/wiki/Man_or_boy_test#C 13:37:26 oh i see 13:37:44 the call by name thing is all i really know about algol :) 13:39:16 Algol W was alike the system-programming variant of these language 13:39:34 Pascal evolved from Algol 60 13:40:06 yeah. I think the W is for Wirth :) 13:40:23 ah, no ? 13:41:56 but it was in fact the language-design of With 13:42:05 sorry Wirth 13:43:17 yeah. i was just guessing :) 13:44:27 https://en.wikipedia.org/wiki/ALGOL_W 13:44:53 please note the semicolon at end of the record defination 13:46:08 that's the reason why in C struct definations must be terminated by a semicolon (where otherwise the curly brackets are semantic symbols) 13:46:10 yeah. I think I'll stick with his later work :) 13:46:32 it was an experiment 13:46:52 the Algol syntax is much more readable in my opinion 13:47:13 than C? or than oberon/pascal? 13:47:27 at sure as C 13:48:45 I don't even hate curly braces all that much, but C hurts my eyes. I'm fine with D and Java and C# and even javascript. 13:49:12 it's the syntax for pointers I think 13:51:02 ther exist a problem fore the parser because the pointer prefix is also the multiply operator 13:51:17 yeah 13:52:05 it's also just ugly :) (at least to me) 13:52:43 you only need 10 preprocessor definations for the Algol W syntax 13:52:55 To implement oberon correctly in retro, I'll need to add a math coprocessor device. 13:53:20 :) 13:54:03 oh, AVM support integer, floating-point and vector types. I Will just grap your code and port it if finished :) 13:54:56 right now, the only part that works is oberon->oberon 13:55:29 but i already have all the code gen templates from PL/0, and retro supports about everything else already 13:55:53 well.. hmm.. inheritance too. 13:56:04 that one doesn't seem too hard 13:57:13 do you know a free oberon to c compiler ? 13:57:16 i want to use avm for speed but i also want this to run in a browser with javascript 13:57:19 yep 13:57:56 http://ooc.sourceforge.net/OOCref/OOCref_toc.html 13:58:08 it's oberon2 though 13:58:13 slightly different dialect 13:58:32 afk for a bit 13:58:35 --- nick: tangentstorm -> tangentaway 13:59:54 thanks, but it is not 64-bit clean 14:33:04 --- nick: tangentaway -> tangentstorm 14:33:14 oh 14:47:33 I'm just using vala in future 14:50:56 --- join: ncv (~quassel@89.35.216.197) joined #retro 14:50:56 --- quit: ncv (Changing host) 14:50:56 --- join: ncv (~quassel@unaffiliated/neceve) joined #retro 15:18:17 * oPless reads up 15:20:43 avm? 15:44:47 my vm design 15:44:55 --- join: kumul (~Kumool@173.215.194.228) joined #retro 15:50:53 ah 16:00:06 ah ha. 16:00:35 for some reason, the .net version of scheme I've ported over from java doesn't understand unquote 16:01:00 alas unquote doesn't really appear anywhere in the source :) 16:02:34 probably limitations of the NET runtime are the reason for this 16:03:16 nope, it a proper interpreter - I've probably missed a comparison somewhere 16:03:40 ok 16:03:42 in java you can cast a string to an object, then use == to compare it to a string 16:03:46 in .net you can't 16:04:31 the equivalent is (someObject as string) == "some text" 16:04:55 tis annoying. 16:07:20 Mat2: https://github.com/nickelsworth/OPCL another oberon compiler. it goes directly to native code though 16:08:14 ^thaknks, I will take a look 16:08:32 oPless: are you sure you can do that in java? 16:09:02 http://stackoverflow.com/questions/513832/how-do-i-compare-strings-in-java 16:10:38 for me, all of this (C# and Java) reads just like an unnecessary mess 16:11:42 http://pastebin.com/bL4qviiE 16:11:52 ^^ that's what I mean 16:12:35 me too mat2 16:13:53 and yeah, norvig's java code intern()'s strings 16:14:50 huh, I have now 4096 instruction pairs 16:17:43 looks like a fairly minute thing to look for. 16:17:58 * oPless goes to look for a translation tool 16:19:10 threading performance is now 4-6x of the Lua vm and bet gforth-fast by a factor of two 16:21:29 increasing the number of fused instructions seem to generate cache-misses to this is probably the optimum possible 16:22:56 without nativre-code generation 16:24:14 wow, Mat2. congrats :) 16:25:01 (that's on par with LuaJIT 1.2) 16:25:28 nice 16:30:28 get some sleep, ciao 16:30:33 --- quit: Mat2 (Quit: Verlassend) 18:05:17 --- quit: kumul (Quit: Leaving) 18:08:00 --- quit: ncv (Remote host closed the connection) 20:45:13 --- join: Fralinboy (~Fralinboy@ip70-188-28-6.rn.hr.cox.net) joined #retro 20:45:25 --- part: Fralinboy left #retro 21:49:04 --- nick: tangentstorm -> tangentaway 23:59:59 --- log: ended retro/13.01.19