2012-10-08 00:15 guanucoluis has joined #qi-hardware 2012-10-08 00:21 nikescar has quit [Read error: Connection reset by peer] 2012-10-08 00:21 nikescar has joined #qi-hardware 2012-10-08 01:09 xiangfu has joined #qi-hardware 2012-10-08 02:01 nikescar has quit [Read error: Connection reset by peer] 2012-10-08 02:02 nikescar has joined #qi-hardware 2012-10-08 02:14 urandom__ has quit [Quit: Konversation terminated!] 2012-10-08 02:56 [commit] Xiangfu: debian: cleanup on control file (master) http://qi-hw.com/p/fped/d2daaf8 2012-10-08 03:04 DocScrutinizer05 has quit [Disconnected by services] 2012-10-08 03:04 DocScrutinizer06 has joined #qi-hardware 2012-10-08 03:17 jluis has quit [Ping timeout: 245 seconds] 2012-10-08 03:26 wpwrak: http://reprap.org/wiki/MetalicaRap 2012-10-08 03:29 jluis has joined #qi-hardware 2012-10-08 03:34 aisa has quit [Quit: leaving] 2012-10-08 03:43 guanucoluis has quit [Quit: Leaving.] 2012-10-08 03:48 [commit] Xiangfu: debian: cleanup changelog, include debian build flags (master) http://qi-hw.com/p/fped/d76f7d1 2012-10-08 03:49 guanucoluis has joined #qi-hardware 2012-10-08 04:12 guanucoluis has quit [Remote host closed the connection] 2012-10-08 04:12 [commit] Xiangfu: transfer build flags from outside (master) http://qi-hw.com/p/fped/5b21495 2012-10-08 04:27 mth: jz-3.5, Windows 7, infamous error code 10 :( 2012-10-08 04:28 i'll be waiting for 3.6 then 2012-10-08 04:29 mth: perhaps it makes sense to revert the RNDIS commit, since it doesn't work anyway (giving people a chance to use the CDC driver on Windows). Also, qi_lb60_defconfig should be changed to add DEVTMPFS support, otherwise it freezes at boot 2012-10-08 04:30 I only changed the a320 defconfig, not the qi_lb60 defconfig 2012-10-08 04:30 oh, sorry 2012-10-08 04:31 larsc: could you make this change to qi_lb60_defconfig? 2012-10-08 05:24 jluis has quit [Ping timeout: 245 seconds] 2012-10-08 05:37 jluis has joined #qi-hardware 2012-10-08 06:20 [commit] Paul Cercueil: Fix a bug where only some parameters were read from the links files. (packages) http://qi-hw.com/p/gmenu2x/876f2cf 2012-10-08 06:20 [commit] Paul Cercueil: Update to use the latest libopk API. (packages) http://qi-hw.com/p/gmenu2x/909fef2 2012-10-08 06:20 [commit] Paul Cercueil: Mount the OPK packages in order to execute the binary included. (packages) http://qi-hw.com/p/gmenu2x/f6c19d0 2012-10-08 06:23 jluis|work has joined #qi-hardware 2012-10-08 06:28 pcercuei has quit [Quit: dodo] 2012-10-08 08:06 jekhor has joined #qi-hardware 2012-10-08 08:20 jluis has quit [Ping timeout: 245 seconds] 2012-10-08 08:33 jluis has joined #qi-hardware 2012-10-08 08:35 roh: hmm, pretty ambitious 2012-10-08 08:38 roh: seems that there are two main directions: form printing and heavy duty printing. the former (i love puns :) is the one most likely to yield devices affordable to "the masses". the heavy duty stuff is a lot more difficult. 2012-10-08 08:39 you can probably also grow heavy duty machines from light duty parts 2012-10-08 08:43 form printing? 2012-10-08 08:44 also: http://opensourceecology.org/ 2012-10-08 08:49 an ad hoc name :) i mean 3d printing where the form is the most important result, not mechanical strength or special material properties 2012-10-08 08:51 i think OSE will need a lot of iterations :) and i don't quite see the point. they're solving a non-problem. we already have quite capable industries to do all these things. 2012-10-08 08:52 that sort of stuff may be interesting some day when it comes to colonializing distant planets. but that's still a while out :) 2012-10-08 08:55 wpwrak: well, I like the idea of self-sustainability 2012-10-08 08:55 through it is years behind being achieved 2012-10-08 08:55 I also dislike the idea of cloud computing for some reason, and all cool kids love cloud computing, so... 2012-10-08 08:56 i don't see the point of cloud computing either :) 2012-10-08 08:56 it feels like 1960es mainframe thinking transplanted into the internet age 2012-10-08 08:59 :) 2012-10-08 09:00 I think that for me "all cool kids love ..." is an indicator of a bad thing, usually 2012-10-08 09:01 indeed :) it means it stopped being avantgarde a decade ago 2012-10-08 09:02 which kinda fits, thinking of it ;-) 2012-10-08 09:15 wpwrak: well.. what i still miss is 'hacking injection molding' 2012-10-08 09:15 i am just yet to stupid and moneyless to actively figure it out 2012-10-08 09:16 my measurement is: if if can be done autonomous and unattended. e.g. as vending machine, its not impossible to do it in a hackerspace/homebrew lab under semi-professional environments 2012-10-08 09:16 and since there is/was mold-o-rama ... 2012-10-08 09:19 wpwrak: well, there are two kinds of "cloud computing" 2012-10-08 09:19 the first is "let's put ten underutilized virtual servers on a single hardware", it was done by IBM in 1960s and it's really good 2012-10-08 09:19 the second is "let's deprive user from their data and force them to use our remote interface" 2012-10-08 09:20 which was also done by IBM in 1960s but is nowhere as good 2012-10-08 09:21 speaking about it, I'm currently implementing a piece of software using 1970's tech, and I do that because there are no widespread implementations of that, except maybe JVM in a limited fashion 2012-10-08 09:21 well, JVM/V8 2012-10-08 09:22 both are Lars Bak's Strongtalk implementations gone wrong :) 2012-10-08 09:43 paul_boddie has joined #qi-hardware 2012-10-08 09:45 roh: Hacking injection moulding would be cool, but surely you always return to the problem of making the moulds and tooling, and that is another CAD problem. 2012-10-08 09:46 whitequark: I saw that you were doing a Ruby compiler or something similar. How is that coming along? 2012-10-08 10:07 paul_boddie: true 2012-10-08 10:08 paul_boddie: on the other side... the hackers world may have shortcomings, but there is also niceness... the openness, the sharing of knowledge.. the 'unconventional' or 'unorthodox' concepts being tried and results being published (sometimes) simply is more fun 2012-10-08 10:09 also i realized that there seems to be more 'konservative' engineering in opensource. if stuff is figured out to a certain degree of reliability, it seldomly changes without need. but till then there is much more creativity than in what ive seen of the 'old world' 2012-10-08 10:14 I think people underestimate the amount of "locked in" knowledge in traditional enterprises, too. If you dismantle them, there's no guarantee that something else can just fill the gap left by them. 2012-10-08 10:16 yep. we could see that the last few years with natural disasters in asia... goods which only are produced in few places were unavail and that made prices explode for some stuff (e.g. harddisks) 2012-10-08 10:18 I think it's important that knowledge be documented in such a way that an endeavour can be repeated. Some people don't like that because it threatens their position - they need their "secret sauce" - and others insist that patents achieve this, which is a complete joke, but the people who deal with obsolete systems have plenty of lessons to teach people about this kind of thing, and I don't think society will always be able to afford to ignore t 2012-10-08 10:21 true 2012-10-08 10:21 you've seen the lunar lander tape recovery project? 2012-10-08 10:22 somebody stored the original magnetic tapes from back then, and now they recover the data to compare to current measurements 2012-10-08 10:23 quite some reverse engineering endeveaur 2012-10-08 10:25 Yes, another lesson about maintaining the expertise to do something. I guess NASA is a classic case of loss of organisational memory. 2012-10-08 10:40 jekhor has quit [Ping timeout: 245 seconds] 2012-10-08 10:52 paul_boddie: yeah. sad to see.. they were leading the field in developing organisational things at one point in history 2012-10-08 10:53 Interesting related story: https://en.wikipedia.org/wiki/FOGBANK 2012-10-08 11:10 well.. some stuff.. can be forgotten.. how to build nukes for example ;) 2012-10-08 11:11 maybe its important to develop ethics at the same speed as technology 2012-10-08 11:17 The lessons from that story are that even large, powerful organisations lose track of how to do things, and that even a supposedly perfected process can still have undocumented parts. 2012-10-08 11:31 roh: (conservative OSS) look at the present state of so-called linux desktop 2012-10-08 11:31 systemd, policykit, udev, wayland, dbus-based notifications, ... 2012-10-08 11:33 whitequark: wait it out. 2012-10-08 11:33 some of that makes sense. the rest will not make it on the long run 2012-10-08 11:33 roh: exactly what I wanted to say 2012-10-08 11:33 still, I won't call it "conservative". "no change for the sake of change", maybe, but that's more to simple human laziness 2012-10-08 11:34 you won't do bullshit all day unless a manager forces you :) 2012-10-08 11:34 I think there's a continuous opposition between conservative and crazy, well-researched and reinvented, old and new. 2012-10-08 11:34 I find it quite funny that we had devfs, then we had udev, and now we have devfs again 2012-10-08 11:34 * whitequark waits for the next iteration 2012-10-08 11:35 wej has quit [Ping timeout: 260 seconds] 2012-10-08 11:36 People have no sense of history, that's why. It's part of a more general depressing phenomenon where you can end up arguing with someone about something that probably happened before they were born, and they have the nerve to doubt that any such thing ever happened. 2012-10-08 11:37 paul_boddie: I'd say it is more due to the fact that OSS development model is close to evolutionary one 2012-10-08 11:37 It's like all those people who don't think that Microsoft ever did anything wrong. Clearly they were born fairly recently and never caught up, or they never bothered to pay attention during, say, the 1990s. 2012-10-08 11:37 people do stuff; good stuff evolves, forks and lives on. 2012-10-08 11:37 Microsoft still does the same wrong thing as they did in the past 2012-10-08 11:37 they never stopped 2012-10-08 11:38 whitequark: Did you ever do anything a while ago and then see someone much more recently announce something very similar as the hot new thing? People are just lazy but want their fame and glory anyway. 2012-10-08 11:38 paul_boddie: that's perfectly normal 2012-10-08 11:39 each programming language in the last 20 years reiterated histories of ALGOL and Lisp, in differently twisted fashion 2012-10-08 11:39 which doesn't mean they ever did something wrong. Both Algol and Lisp have proven to be unusable by general public. Iterating their useful features in this fashion allows us to have better and better languages 2012-10-08 11:40 About Microsoft, yes, they never stopped, but people either have the view that all the major legal trouble in the 1990s was unmerited (or didn't happen because they never knew about it) and so there's no *real* dirt, or that Microsoft is a changed company. MS is just better at covering their tracks these days, although still incompetent at that, of course. 2012-10-08 11:41 wej has joined #qi-hardware 2012-10-08 11:41 About language evolution, I agree. Witness all the people using Lisp who can't understand why people use those "dirty imitations". 2012-10-08 11:41 the problem with Lisp is that it's too powerful 2012-10-08 11:42 lambda calculus, the purest form of computation, can represent everything, but cannot represent anything actually useful:) 2012-10-08 11:42 and with Lisp it's basically impossible to have large scale projects due to the fact that everyone tends to invent their own slightly different variations of already proven concepts 2012-10-08 11:43 I've heard that back 50 years ago, function calls were a design pattern 2012-10-08 11:43 prologue, epilogue, arguments on stack... 2012-10-08 11:43 if Lispers designed C, every programmer would have to define his own ABI 2012-10-08 11:44 slightly incompatible but effectively having the same power as the every other one 2012-10-08 11:44 this is also C++ is very wrong. 2012-10-08 11:44 I can see that, actually. Concepts like functions were probably like everything else: a tradeoff that worked for certain use-cases, but would they work satisfactorily in general, and is it wise to eliminate support for the other cases? 2012-10-08 11:44 *why 2012-10-08 11:45 paul_boddie: the main language designer rule is: simple things should be simple, and complex things possible 2012-10-08 11:45 and the notion of "simple things" changes with time 2012-10-08 11:45 in 1970, procedures were simple 2012-10-08 11:45 in 2000, closures are already simple 2012-10-08 11:46 (I'm 19 year old, so the dates might be a bit off.) 2012-10-08 11:47 you don't need to define your own way to make closures in language, it should be builtin. 2012-10-08 11:48 the problem is, everyone dislikes _something_ in any existing language 2012-10-08 11:48 and if the language allows everything to be overridden, then it will be, and the code will become pretty unusable 2012-10-08 11:49 I think closures are a luxury, myself. You can model what you need from them in other ways, and they cause complications for the language designer and implementer. The Lisp crowd lobbied hard for closures in Python, and I don't really think that the resulting support is worth having. 2012-10-08 11:49 paul_boddie: python closures aren't, well, proper closures 2012-10-08 11:49 Ruby ones are 2012-10-08 11:49 And it's not worth listening to the Lisp crowd, anyway. They won't use your language after making their demands. 2012-10-08 11:50 they add very much to the language. I can't really imagine writing something without the expressive power of closures 2012-10-08 11:50 besides that, language designers and implementors aren't the people anyone needs to care about. 2012-10-08 11:50 How are Python closures not proper? I don't remember, myself. 2012-10-08 11:51 well, there are no anonymous functions in Python 2012-10-08 11:51 There are no multi-statement anonymous functions, you mean. 2012-10-08 11:51 there is so-called "lambda" keyword, which defines a "function" which can only have a certain subset of expressions inside 2012-10-08 11:52 and which isn't actually very useful 2012-10-08 11:52 lambda provides a single expression, yes, not one or more statements. 2012-10-08 11:53 the best part of Ruby's closures is that they're very easy to use and manipulate 2012-10-08 11:53 meth { i_am_a_closure }. done. 2012-10-08 11:53 Also, you bind functions to names upon definition in Python, but that doesn't mean that you can only have one such function for every binding. 2012-10-08 11:53 therefore you are encouraged to write composable code, which happens to be much cleanier and easier to read 2012-10-08 11:54 File.open("something") { |io| io.write "hello" }, for example, automatically closes the handle 2012-10-08 11:55 Although those functions probably still have some notion of a name, they don't need to be available through that name any more. You can make lists of parameterised functions all of which probably think they have a name, but it's irrelevant. 2012-10-08 11:55 iterators and lazy generators are implemented via the same simple syntax 2012-10-08 11:55 (1..2).each { |x| puts x } # iterator 2012-10-08 11:55 (1..2).map { |x| x * x }.each { |x| puts x } # two chained ones 2012-10-08 11:56 gen = (1..2).map { |x| x * x }.each # create a generator and pass it around 2012-10-08 11:56 or: 2012-10-08 11:56 Well, not having to name those blocks is convenient and means that you can write them inline, but they don't give you anything over and above a reference to a function. 2012-10-08 11:56 sum = line.split(" ").map(&:to_i).map(&:abs).reduce(:+) 2012-10-08 11:57 paul_boddie: yeah, this is one of the most common PL-related fallacies 2012-10-08 11:57 syntax doesn't actually give you anything if your language is Turing-complete 2012-10-08 11:57 the way you define the syntax affects the way people will use your language heavily 2012-10-08 11:59 it doesn't actually makes sense to argue if syntax adds something to the language. it doesn't. syntax adds something to usability, or maybe not, and syntax might make writing good code easier. or, again, might not. 2012-10-08 11:59 even Java has closures already (Java 8) 2012-10-08 11:59 and if you've ever tried to write code with callbacks, you'll easily understand why 2012-10-08 12:00 speaking about that, void (*cb)(void*) is NOT an acceptable way to implement closures. 2012-10-08 12:01 Well, I use a variety of constructs that different groups of other Python programmers frown upon in different ways, but I think that some of these syntax refinements work against their own motivations. 2012-10-08 12:01 indeed, there are lots of possible but not very clever things to do in Ruby either 2012-10-08 12:01 cladamw has joined #qi-hardware 2012-10-08 12:01 5 years ago it was cool to extend standard classes, it isn't anymore. There are better conventions now 2012-10-08 12:02 best of these conventions are now being integrated to the core language 2012-10-08 12:02 or, for example, Ruby has recently gained syntactic keyword arguments 2012-10-08 12:02 kristianpaul has quit [Quit: Lost terminal] 2012-10-08 12:03 1.8 used an "options hash" and a syntactic sugar which allowed you to omit {} for the last function argument if it was a hash 2012-10-08 12:03 1.9 added a sugar which mapped `a: expr' to `:a => expr' 2012-10-08 12:03 2.0 finally allows you to write `def meth(kwarg: default_value)' 2012-10-08 12:04 i.e. it does hash decomposition and mandatory argument checking in the core 2012-10-08 12:05 Is this not like Python's **kw support? 2012-10-08 12:05 yeah, it now works like in Python, except that no one removed positional arguments 2012-10-08 12:07 Oh, and as I understand it, closures are orthogonal to having anonymous blocks. You can still "close over" the environment even if you have to give a temporary name to the thing doing so. 2012-10-08 12:07 Or as Wikipedia states, "The term closure is often mistakenly used to mean anonymous function." 2012-10-08 12:08 paul_boddie: you are correct 2012-10-08 12:08 jekhor has joined #qi-hardware 2012-10-08 12:09 I meant blocks, indeed. 2012-10-08 12:12 In fact, you're not wrong to point out that the naming of things in Python is a potential conceptual hurdle for people if only because languages like Java special-case things like methods. This can lead to flaws in people's reasoning about the behaviour of programs, even to the extent of how one should refer to and reason about program units. 2012-10-08 12:13 In other words, people carry over assumptions like "this is function f" instead of thinking "this function currently known as f". 2012-10-08 12:13 yes 2012-10-08 12:13 Java requires you to create a class and a method to keep a chunk of code 2012-10-08 12:13 Jurting has quit [Remote host closed the connection] 2012-10-08 12:13 Python requires you to create a method (well, named function to be precise) 2012-10-08 12:14 Ruby just allows you to write a chunk of code. 2012-10-08 12:14 so does PHP ;) 2012-10-08 12:14 larsc: PHP does not have closures at all :) 2012-10-08 12:15 its "lambdas" are named and non-GC'd methods 2012-10-08 12:15 whitequark: sorry, just saw the last 2 lines 2012-10-08 12:15 ahh 2012-10-08 12:15 I see your point then :) 2012-10-08 12:16 well, you have toplevel code in Ruby and ERB (php-like interleaved script interpreter) is in standard library 2012-10-08 12:16 Python would have anonymous blocks if there would be an agreement on syntax, but nobody ever reached agreement. 2012-10-08 12:16 but for some reason no one writes in Ruby like in PHP... 2012-10-08 12:17 paul_boddie: well, either there was not enough pressure to add closures 2012-10-08 12:18 or that's a typical flaw of design by commitee 2012-10-08 12:18 There *are* closures. There just aren't anonymous blocks. 2012-10-08 12:18 sorry, I did that again. Ruby doesn't have non-anonymous closures, so the terms are mixed up there 2012-10-08 12:19 Closures were added in something like Python 2.2. I don't remember the precise details, but I could look it up. 2012-10-08 12:20 I know 2012-10-08 12:21 Personally, I think that you have two different schools of thought where one school prizes closures and the other says, "Well we can more or less do that more cleanly with structures/objects/explicit state." The former group taunts the latter because they've been writing Lisp since forever, and the latter probably uses languages where closures would add complexity to their implementation that they wouldn't be able to live with. 2012-10-08 12:22 paul_boddie: every modern language has closures :) 2012-10-08 12:22 Clever answer. :-) 2012-10-08 12:23 every JVM one, every CLR one, Lua, Ruby, Python, C++ [C++11], JS, whatnot 2012-10-08 12:23 so I guess the former group won :) 2012-10-08 12:23 seriously, closures aren't hard to implement compared to, for example, continuations 2012-10-08 12:23 and continuations are a huge win in some interesting cases 2012-10-08 12:24 You should go on LWN and start an argument about programming languages on some article about Android. It would give people some entertainment. :-) 2012-10-08 12:24 meh, I prefer to start arguments on my blog 2012-10-08 12:24 But, anyway, how is that compiler of yours coming along? 2012-10-08 12:24 50% of my dayjob time is allocated for it:) 2012-10-08 12:25 well, there is some progress, but nothing particularly interesting 2012-10-08 12:25 I'll probably write an article in a few days 2012-10-08 12:25 on the architectural choices 2012-10-08 12:27 As I recall, you intended to eliminate some of the run-time complexity in favour of making optimisations in the generated program. Is that the idea? 2012-10-08 12:27 this is more of a side effect 2012-10-08 12:28 every existing Ruby implementation (or, in fact, most language implementations I'm aware about) compile the source to some IR which captures the semantics of the underlying machine 2012-10-08 12:28 i.e. C++ compiles to x86, Java compiles to JVM 2012-10-08 12:28 if a compiler then tries to optimize the code, it obviously works on that IR 2012-10-08 12:29 I'm writing an implementation where IR accurately captures the semantics of Ruby, not some existing VM like LLVM 2012-10-08 12:29 the point is, LLVM doesn't know much about the Ruby semantics and therefore it's unable to do some interesting optimizations 2012-10-08 12:29 it doesn't have enough information in its IR to argue about the code 2012-10-08 12:29 Didn't Parrot already try this? ;-) 2012-10-08 12:29 it _can_ insert run-time guards to check for types, etc, but JITs are generally slow and very expensive 2012-10-08 12:30 you won't use a JIT on an ARM with 8K of RAM 2012-10-08 12:30 but everything changes if I make an IR specifically for Ruby 2012-10-08 12:30 I can derive a lot of information about types, or about control flows 2012-10-08 12:31 I can trivially inline those anonymous blocks where I can do that (i.e. where the block environment does not live further than the function it was defined in) 2012-10-08 12:31 I can inline method calls if I can guarantee that the methods won't be redefined 2012-10-08 12:32 the current implementations assume that every bit of the Ruby semantics should be accessible at every point of time 2012-10-08 12:32 i.e. they assume that you will redefine methods at runtime just because you can 2012-10-08 12:32 this requires you to use JIT in your implementation, and even with JIT, some things become way more expensive than they should be 2012-10-08 12:32 arithmetics, for example 2012-10-08 12:33 What you wrote on your blog looked a lot like what someone wrote for Python, but that was more about evaluating the program expressions (the guy didn't say exactly how he did it), and then producing a simplified program. But I guess the two ideas are equivalent as he could easily have been describing a simplified generated program. 2012-10-08 12:34 well, that's how optimization works :) 2012-10-08 12:34 the whole point is to produce IR which can be easily operated with 2012-10-08 12:35 Yes, but it's the assumptions that underlie the optimisations that are the important part. 2012-10-08 12:35 Rubinius produces LLVM IR, which is easily manipulated with LLVM 2012-10-08 12:35 but there isn't a way to say to LLVM: "hey, this function will only ever receive Class or Module arguments, optimize for them" 2012-10-08 12:35 basically the same with Java 2012-10-08 12:35 and JRuby 2012-10-08 12:35 The trend in various circles is to not bother with guaranteeing anything before the program is run but instead relying on run-time observations. 2012-10-08 12:36 it's a time-memory tradeoff 2012-10-08 12:36 I don't necessarily agree with that at all, mostly because, as you say, that has a lot of overhead and rules out 8K RAM environments. 2012-10-08 12:36 runtime observations pay for themselves when you have unlimited memory 2012-10-08 12:36 i.e. JVM heap reaches obscene sizes 2012-10-08 12:37 What interests me a lot more is the analysis, and not just for the optimisations. 2012-10-08 12:37 yes. there are more interesting things to do when you have this IR 2012-10-08 12:37 basically this IR is a normalized representation of Ruby 2012-10-08 12:37 without all complexity of its syntax and with ease of manipulation 2012-10-08 12:38 It's interesting that in your blog, you start with bytecode and derive something like an AST. Why not start with the AST? 2012-10-08 12:38 it was over a year ago, and I thought that Rubinius' bytecode suits my needs for a source better 2012-10-08 12:38 it's not 2012-10-08 12:38 I'm using ASTs now 2012-10-08 12:40 this is a problem as of itself. There are at least five separate Ruby parsers, and they either suck at completeness, output format or runtime requirements. 2012-10-08 12:40 s,either,two of the three, 2012-10-08 12:41 my implementation also has truly meta-circular architecture 2012-10-08 12:41 i.e. it's a Ruby VM written in Ruby 2012-10-08 12:42 if I would want to write a fully-fledged, general purpose implementation (which I don't), I could just compile it with itself eventually 2012-10-08 12:43 you won't get most of the runtime optimizations, but as Squeak's history shows, it could still be beneficial as of itself 2012-10-08 12:43 Heh! At last, someone actually writes a Ruby VM in Ruby instead of *claiming* to do so. :-) 2012-10-08 12:43 hehe 2012-10-08 12:44 cladamw has quit [Quit: Ex-Chat] 2012-10-08 12:44 it would still have a separate GC because I cannot do everything, but honestly I don't consider automatic memory management as a part of a programming language implementation 2012-10-08 12:44 it should have become an OS routine years ago 2012-10-08 12:45 whitequark: hmm, if you make explicit assertions for the arguments then llvm could do compile-time optimizations too? 2012-10-08 12:46 lindi-: 1) it requires you to have the aforementioned IR to derive the assertions 2012-10-08 12:46 2) not if your method lookup path looks like this: http://whitequark.org/images/static-ruby/ruby-eigenclass.png 2012-10-08 12:47 and note that everything in that path could be overridden 2012-10-08 12:47 whitequark: I don't know about ruby but I have used llvm 2012-10-08 12:47 lindi-: it's less of an LLVM issue and more of Ruby one 2012-10-08 12:48 you need an invokedynamic-like primitive to represent Ruby's semantics 2012-10-08 12:49 http://blog.headius.com/2008/09/first-taste-of-invokedynamic.html (long but interesting) 2012-10-08 12:50 and JRuby slowly but definitely gains the IR just like the one I'm talking about 2012-10-08 12:50 *but certainly 2012-10-08 12:50 for the precisely same reasons 2012-10-08 12:51 or this, shorter one: http://docs.oracle.com/javase/7/docs/technotes/guides/vm/multiple-language-support.html 2012-10-08 12:52 it even lists the examples in Ruby 2012-10-08 12:53 jekhor has quit [Ping timeout: 260 seconds] 2012-10-08 13:06 jekhor has joined #qi-hardware 2012-10-08 13:40 xiangfu has quit [Quit: Leaving] 2012-10-08 13:53 paul_boddie has left #qi-hardware ["Kopete 0.11.3 : http://kopete.kde.org"] 2012-10-08 14:14 aisa has joined #qi-hardware 2012-10-08 14:25 kristoffer has joined #qi-hardware 2012-10-08 14:49 jluis has quit [Ping timeout: 245 seconds] 2012-10-08 14:58 http://www.kickstarter.com/projects/18182218/freesoc-and-freesoc-mini ... unfortunately the name is very misleading :( 2012-10-08 15:02 summer of code 2012-10-08 15:03 jluis has joined #qi-hardware 2012-10-08 15:18 guanucoluis has joined #qi-hardware 2012-10-08 15:20 heberth has joined #qi-hardware 2012-10-08 15:21 hah, a nice board 2012-10-08 15:23 isn't that IDE still closed source ? 2012-10-08 15:24 wpwrak: doesn't matter 2012-10-08 15:24 can be programmed with C and Verilog 2012-10-08 15:25 it's a Cortex M3 paired with 24 PLD's 2012-10-08 15:25 this is a _very_ impressive hybrid chip 2012-10-08 15:25 I think I'll certainly get one for myself 2012-10-08 15:25 oh, i know the psocs ;) well, the psoc 1 2012-10-08 15:26 3 and 5 are much better, of course. 1 doesn't have the programmable logic and it has a weird core (m8c) 2012-10-08 15:28 but the verilog compiler is closed source? 2012-10-08 15:28 one problem is that you really need some tools for resource planning. things aren't trivial. 2012-10-08 15:29 lindi-: as far as i remember, the PLDs are fully documented. so you could write your own. 2012-10-08 15:29 * whitequark has backed the project 2012-10-08 15:30 whitequark: oh 2012-10-08 15:31 sounds promising but still problematic if I don't have the time to write a compiler :) 2012-10-08 15:32 lindi-: well, I'm fine with evaluating it with closed-source tools and such 2012-10-08 15:32 if it proves to be worthwhile, resources can always be allocated 2012-10-08 15:33 this is also really cool 2012-10-08 15:33 http://www.kickstarter.com/projects/adapteva/parallella-a-supercomputer-for-everyone?ref=thanks 2012-10-08 15:33 but I probably won't have time to play with the board 2012-10-08 15:33 I'm not a SIMD guy really :) 2012-10-08 15:34 kristoffer has quit [Quit: Leaving] 2012-10-08 15:34 I think their price tag is very ambitious. 2012-10-08 15:34 indeed. 2012-10-08 15:35 the ZED board on which they want to base their design already costs twice as much 2012-10-08 15:35 lindi-: at least the core is something sane. when playing with the psoc 1, i had to use assembler. and i had to write my own assembler, too. http://m8cutils.sourceforge.net/ 2012-10-08 15:36 it was a very rough ride back then ... 2012-10-08 15:56 pcercuei has joined #qi-hardware 2012-10-08 15:56 jekhor has quit [Ping timeout: 245 seconds] 2012-10-08 15:58 hi 2012-10-08 15:58 http://www.phoronix.com/scan.php?page=news_item&px=MTIwMTU 2012-10-08 15:58 run-time power management for the audio subsystem, finally 2012-10-08 16:04 for HDA device, ASoC had runtime PM for ages 2012-10-08 16:08 ok. 2012-10-08 16:08 maybe we could enable it on OD's config then 2012-10-08 16:10 there is no config option to disable it 2012-10-08 16:12 yes 2012-10-08 16:12 there's one 2012-10-08 16:13 where? 2012-10-08 16:13 ASoCs runtime pm does not depend on CONFIG_PM_RUNTIME 2012-10-08 16:14 ah, was thinking of that one 2012-10-08 16:14 larsc, can't you be wrong just for once? ;) 2012-10-08 16:15 I'm wrong all the time, the trick is not let anybody notice it ;) 2012-10-08 16:17 and he has a very efficient "black ops" task force :) 2012-10-08 16:24 kristoffer has joined #qi-hardware 2012-10-08 16:28 kristianpaul has joined #qi-hardware 2012-10-08 16:28 kristianpaul has quit [Changing host] 2012-10-08 16:28 kristianpaul has joined #qi-hardware 2012-10-08 16:48 heberth has quit [Quit: leaving] 2012-10-08 17:07 heberth has joined #qi-hardware 2012-10-08 17:37 jekhor has joined #qi-hardware 2012-10-08 17:44 [commit] Paul Cercueil: Fix build when libopk is not present. (packages) http://qi-hw.com/p/gmenu2x/ef18841 2012-10-08 17:49 [commit] Paul Cercueil: configure.in: update libopk check to match latest libopk API (packages) http://qi-hw.com/p/gmenu2x/c58c726 2012-10-08 18:01 kristoffer has quit [Ping timeout: 256 seconds] 2012-10-08 18:10 heberth has quit [Quit: leaving] 2012-10-08 18:16 kristoffer has joined #qi-hardware 2012-10-08 19:02 lekernel_ has joined #qi-hardware 2012-10-08 19:03 lekernel has quit [Ping timeout: 246 seconds] 2012-10-08 19:11 Jurting has joined #qi-hardware 2012-10-08 20:00 heberth has joined #qi-hardware 2012-10-08 20:08 kristoffer has quit [Quit: Leaving] 2012-10-08 20:17 heberth has quit [Quit: leaving] 2012-10-08 20:59 pcercuei has quit [Read error: Connection reset by peer] 2012-10-08 21:02 pcercuei has joined #qi-hardware 2012-10-08 21:20 jekhor has quit [Ping timeout: 246 seconds] 2012-10-08 21:57 lekernel_ is now known as lekernel 2012-10-08 21:58 aisa has quit [Ping timeout: 240 seconds] 2012-10-08 22:05 Jurting has quit [Ping timeout: 255 seconds] 2012-10-08 22:06 Jurting has joined #qi-hardware 2012-10-08 22:15 aisa has joined #qi-hardware 2012-10-08 22:20 kyak: I tested the Dingoo A320 (JZ4740) with Linux 3.5 with Win7 tonight... doesn't work 2012-10-08 22:20 the same Win7 machine with GCW Zero (JZ4770) and Linux 3.6 works fine 2012-10-08 22:21 so it's either Linux 3.5 vs 3.6 or something in the 4740's USB stack that is preventing it from working 2012-10-08 22:22 I'd say USB stack 2012-10-08 22:22 mass storage mode won't work with the current jz4740 stack 2012-10-08 22:36 heberth has joined #qi-hardware 2012-10-08 22:45 aisa has quit [Ping timeout: 244 seconds] 2012-10-08 22:46 aisa has joined #qi-hardware 2012-10-08 22:48 heberth_ has joined #qi-hardware 2012-10-08 22:51 heberth has quit [Ping timeout: 264 seconds] 2012-10-08 23:03 aisa has quit [Ping timeout: 240 seconds] 2012-10-08 23:03 aisa has joined #qi-hardware 2012-10-08 23:11 heberth_ is now known as heberth 2012-10-08 23:18 aisa has quit [Ping timeout: 248 seconds] 2012-10-08 23:25 aisa has joined #qi-hardware 2012-10-08 23:25 freakazoid0223 has quit [Read error: Connection reset by peer] 2012-10-08 23:34 urandom__ has joined #qi-hardware 2012-10-08 23:42 [commit] Paul Cercueil: Load the OPK in the section defined by their "Categories" parameter (packages) http://qi-hw.com/p/gmenu2x/4a60aa0 2012-10-08 23:49 aisa has quit [Ping timeout: 246 seconds]