AltME groups: search
Help · search scripts · search articles · search mailing listresults summary
world | hits |
r4wp | 5907 |
r3wp | 58701 |
total: | 64608 |
results window for this page: [start: 62901 end: 63000]
world-name: r3wp
Group: Red ... Red language group [web-public] | ||
Dockimbel: 21-Jun-2011 | A long-term solution could be to disable buffering of C's stdout stream, using a call to setvbuf(). It requires passing a stream pointer, so I am not sure this is doable now. | |
Kaj: 21-Jun-2011 | In particular, the standard I/O streams stdin and stdout are line buffered. Flushing them is often more forceful than necessary: the same effect is achieved by printing a newline | |
Kaj: 21-Jun-2011 | Also, when doing an input-line on Linux, stdout is flushed automatically, so you can print a question with a prompt directly behind it | |
Kaj: 21-Jun-2011 | NULL can't be used any more as the return value for a function that normally returns a pointer: | |
Dockimbel: 21-Jun-2011 | I have pushed a new commit that should fix your issue. | |
Kaj: 21-Jun-2011 | By the way, do we want to keep PRIN? My toes curl a little every time I see it. I know it's longer, but I would be OK with replacing PRIN & PRINT with PRINT & PRINT-LINE - or PRINT/LINE in Red proper | |
Dockimbel: 21-Jun-2011 | I had a hard time with PRIN at beginning too, but got used to it after a few years of practice. | |
Dockimbel: 21-Jun-2011 | I would probably keep PRINT for printing with an added newline. But replacing PRIN is welcome if a better alternative is found. | |
Dockimbel: 21-Jun-2011 | PRINT/LINE and PRINT-LINE are a bit too long, especially for using from the (future Red) console. | |
Dockimbel: 21-Jun-2011 | That's what I was thinking, but PUT is a bit generic verb. OTOH, users coming from other languages wouldn't be shocked by PUT used in this context. | |
Dockimbel: 21-Jun-2011 | Well, that can be changed to put-*, not a big deal. | |
Dockimbel: 21-Jun-2011 | But REBOL users might find it a bit misleading. | |
Kaj: 21-Jun-2011 | I suppose READ and WRITE will get a REBOL like implementation? | |
Kaj: 21-Jun-2011 | With the latest series of Red versions, the 0MQ binding didn't work anymore due to crashing on a certain imported function call. This is now fixed, probably as a side effect of the last few fixes | |
Kaj: 21-Jun-2011 | Shouldn't newline be a byte/char, as in REBOL? It's a string now | |
Dockimbel: 21-Jun-2011 | The problem with FORM is that it implies a new buffer allocation that you need to free at some point. | |
Kaj: 21-Jun-2011 | For what it's worth, I just implemented a print-newline because that's easier and more efficient than PRIN NEWLINE | |
Dockimbel: 21-Jun-2011 | I am installing FreeBSD8.2 on Vmware to test Red...Wow, it is like trying to install Linux in 1996...I am really surprized, I wasn't expecting an Ubuntu-like installer, but at least a decent package manager...Here's my attempt at installing git: # pkg_add -r git Fetching ... ... # git git: Command not found. Great! | |
Kaj: 21-Jun-2011 | Nope. I guess you have a console system now? | |
Kaj: 21-Jun-2011 | Installing X and everything on top manually is a cherished exercise on the way to enlightenment :-) | |
Dockimbel: 21-Jun-2011 | I did such installation several times, manually configuring everything, last time was in 1997. An OS requiring me to do that in 2011 is a joke. | |
Kaj: 21-Jun-2011 | You do realise you've downloaded a server OS? The real joke is REBOL/Core | |
Kaj: 21-Jun-2011 | It's still a favourite bragging exercise in very popular Linux distributions | |
Dockimbel: 21-Jun-2011 | I might have already lost a few potential users just because of that. | |
Kaj: 21-Jun-2011 | Yeah, we've had one paranoid tell us he wouldn't install AltME because it's a binary :-/ | |
Dockimbel: 21-Jun-2011 | Null is not a replacement for function!. | |
Kaj: 21-Jun-2011 | That is to say; if a C function has a fixed parameter list, can it be called with fewer arguments? | |
Dockimbel: 21-Jun-2011 | You should make 2 bindings, one with function!, other with handle! (for passing Null). And a wrapper function for the latter one, to make it cleaner for the user. | |
Dockimbel: 21-Jun-2011 | I will look into the compiler internal error tomorrow, it needs a fix anyway. | |
Kaj: 21-Jun-2011 | Will you implement it, or add a warning? | |
Dockimbel: 21-Jun-2011 | For example, if you encode the arguments number as the first value pushed on stack, you can pass a variable number of argument. The called function needs, of course, to use the same convention. | |
Andreas: 21-Jun-2011 | freebsd with libc requires a bit more work | |
Kaj: 21-Jun-2011 | Using Syllable as a development workstation for FreeBSD would be a cool feature :-) | |
Andreas: 21-Jun-2011 | well, i could hardcode a hack in the ELF emitter | |
Andreas: 21-Jun-2011 | A Red-generated FreeBSD binary: http://bolka.at/2011/tmp/hello-fbsd.bin :) | |
Dockimbel: 22-Jun-2011 | Will merge it to main branch in a few minutes. | |
Kaj: 22-Jun-2011 | (Must write a cheer bot one of these days) | |
Henrik: 22-Jun-2011 | Silly question (I'm not in the loop), why was View necessary? Feel free to point to a blog post or something that explains it. | |
Andreas: 22-Jun-2011 | for example a struct of an 8-bit char! and a 32-bit integer! takes up not 40-bits but actually 64-bits in size (due to alignment constraints, in this case). | |
Henrik: 22-Jun-2011 | so this is one of the challenges that are required to solve, when creating a new binary emitter? | |
Andreas: 22-Jun-2011 | when writing a new emitter, the "challenge" is mostly the rather tedious task os transliterating C structs into REBOL struct!s | |
Andreas: 22-Jun-2011 | Have a look at the current ELF/PE emitters, for example: https://github.com/dockimbel/Red/blob/master/red-system/formats/ELF.r#L87 https://github.com/dockimbel/Red/blob/master/red-system/formats/PE.r#L145 | |
Dockimbel: 22-Jun-2011 | Getting /Core to run on FreeBSD looks like a real challenge :-) | |
Dockimbel: 22-Jun-2011 | Yes, but it requires me to install a lot of stuff...The real issue is that /Core is built on obsolete libraries version. | |
Dockimbel: 22-Jun-2011 | Can you push a fix for that? (I'm cooking at the same time) | |
Dockimbel: 22-Jun-2011 | Have you pushed your BSD-specific ELF fixes or does it require a proper target config? | |
Andreas: 22-Jun-2011 | that just hardcoded freebsd-specifics, so would have broke linux in that form. only a quick experiment to see what's really necessary | |
Dockimbel: 22-Jun-2011 | Could you parametrized those BSD-specific changes with a compiler option? | |
Dockimbel: 22-Jun-2011 | Kaj: Null allowed as a function! argument. The changes was very trivial, but I tested only if it compiled. | |
Kaj: 22-Jun-2011 | That would be good for the public. Myself, I would probably keep updating from trunk. I'm running a Git download through my Syllable build system to install a new version | |
Kaj: 22-Jun-2011 | Added a bunch of convenience wrappers to the 0MQ binding, to make functions more Red/REBOL like | |
Dockimbel: 23-Jun-2011 | Bytes don't require alignment, 32-bit values do. In message!, vsm-data1 is aligned on a 32-bit boundary, leaving a 2-bytes hole after vsm-size. | |
Kaj: 23-Jun-2011 | It solves the problem that you don't know how to write a cast because in for example | |
Kaj: 23-Jun-2011 | handle! is a #define | |
Dockimbel: 23-Jun-2011 | Assignments can't be used inside an expression, nor can functions that don't have a return value. | |
Dockimbel: 23-Jun-2011 | Red/System is not meant to be a REBOL replacement, you will need to wait for Red. | |
Dockimbel: 23-Jun-2011 | Red/System cannot be a REBOL replacement, it doesn't live at the same level of abstraction. | |
Kaj: 23-Jun-2011 | I know, but this one is very doable. I guess it would be a nice project for Brian | |
Dockimbel: 23-Jun-2011 | I could remove the compiler check, so that your code "might" compile, but that opens a hole for several others issues. | |
Steeve: 23-Jun-2011 | assignements don't return a value in Red ? It should be doable without pain. | |
Dockimbel: 23-Jun-2011 | There is a possible evolution documented in the specification for that, allowing also multi-assignments as a side-effect. | |
Steeve: 23-Jun-2011 | a cool side effect | |
Dockimbel: 23-Jun-2011 | I mean writing wrappers for low-level ZMQ imported functions, so that they return consistent values. For example, RECEIVE should return a message! or null, but not a 0 that needs to be casted to logic!. | |
Dockimbel: 23-Jun-2011 | I just mean findind a way to catch those 0 values transparently. | |
Dockimbel: 23-Jun-2011 | Here a code example of how you could solve that: msg: receive .... if zmq-error? [...process error...] zmq-error? could just check a flag set by last zmq low-level calls. | |
Kaj: 23-Jun-2011 | Such constructs would make the binding a lot more high level and would require a lot more code. I'm trying to keep complexity down for simplicity and performance | |
Dockimbel: 23-Jun-2011 | The added code won't make any significant overhead in performances for a network communication library, the slow parts are the network exchanges. | |
Kaj: 23-Jun-2011 | We don't have goto and longjumps, either, so there's little leeway for implementing a transparent error trapping framework | |
Kaj: 23-Jun-2011 | If you want the function to return a logic! status and a result to be able to handle it locally, the result needs to fetched through a pointer, which also raises complexity. We can't handle addresses very well yet, either, because get-words only work for native functions | |
Dockimbel: 23-Jun-2011 | My point was: don't return a logic! statut from functions like RECEIVE, rather set a flag and check it after RECEIVE call. | |
Dockimbel: 23-Jun-2011 | Yeah right, I was confused by your will to return a logic!. | |
Kaj: 23-Jun-2011 | By the way, 0MQ is not a network communication library per se. It can do messaging equally well between processes and even threads, so wrapper performance is significant | |
Dockimbel: 23-Jun-2011 | Regression from a recent change, you should get a compilation error saying that x is missing a return value. | |
Kaj: 23-Jun-2011 | In this case, I don't need EITHER to return a value | |
Dockimbel: 23-Jun-2011 | Ok, so sounds like a check that shouldn't happen in such case. | |
Dockimbel: 23-Jun-2011 | It is more a matter of tracking than discussing. | |
Kaj: 23-Jun-2011 | I understand; it's just a rotten situation that the communication isn't integrated | |
Kaj: 23-Jun-2011 | Ah, the unintegratedness begins. When I type >> in GitHub to denote a REBOL result prompt, it interprets it as indent markup | |
Kaj: 23-Jun-2011 | If you had told me twenty years ago that I would be writing prose such as "Local logic! in prin-int leaks as global function!", I would have seen it as a sure sign of dementia | |
Dockimbel: 24-Jun-2011 | Kaj: thanks for the reports. I was aware of NOT issue and already encountered the local name clash, but never got the time to isolate it. Fixing them now, before going beta, is a good timing. | |
Dockimbel: 24-Jun-2011 | Red/System will go beta as soon as I: - fix the remaining bugs from the tracker, - decide on 2 last syntax issues discussed on the ML (concerning struct/pointer literal syntax and aliases) - make a pass on the specification to fix/update/complete it. | |
Dockimbel: 24-Jun-2011 | I said "base natives", so not a whole REBOL reimplementation. | |
Dockimbel: 24-Jun-2011 | Yes, I know a few potential Red/System testers that are waiting for that too. | |
Dockimbel: 24-Jun-2011 | Right, I wanted to make a direct native compilation for Red too, but emitting Red/System might be shorter way to reach the goal. | |
Dockimbel: 24-Jun-2011 | As Red/System is a dialect of Red, the compilation should be quite easy to achieve. | |
Kaj: 24-Jun-2011 | No problem, it's just a note about the state, and it's ready for the solution | |
Kaj: 26-Jun-2011 | Message holders don't leak memory anymore, but now the payload of sent messages leaks, due to what seems to be a bug in callbacks. More in the tracker | |
Dockimbel: 27-Jun-2011 | Kaj: good to know that you working on improving the 0MQ binding. I will have a look on the callback issue. | |
Dockimbel: 27-Jun-2011 | Works fine on Windows, so it looks like a Linux-specific issue... | |
Kaj: 27-Jun-2011 | I think that's a good thing, but it may still be wise to postpone the implementation. Having Red will enable more people to contribute, but on the other hand, the lack of floating point is blocking a few contributors now | |
Dockimbel: 27-Jun-2011 | Floating point support should be added to Red/System if my tests shows that I can safely do the Red->Red/System compilation, else it will be supported at Red level. Anyway, it is not a priority for me, so it probably won't be added before Q4 2010 (unless someone wants to contribute by adding it to Red/System). | |
Dockimbel: 28-Jun-2011 | Andreas did a great debugging work on that. | |
Kaj: 29-Jun-2011 | That seems like a nice shortcut, then | |
Dockimbel: 29-Jun-2011 | If you use a variable, you need to pass thru the registers. | |
Kaj: 29-Jun-2011 | I've started working on a cURL binding. It can print the cURL version now :-) | |
Kaj: 29-Jun-2011 | I could call it a port from the R3 binding, but it will be more like a rewrite | |
Dockimbel: 29-Jun-2011 | Great to know you are working on a new binding. Let me know when you will put it online, so I can add a link from red-lang.org. | |
Kaj: 29-Jun-2011 | Ah, yes, because it will be a binding for Red, even though the binding is written in Red/System | |
Kaj: 29-Jun-2011 | Since R3 bindings are written in C, their level is comparable to a binding in Red/System. But the dynamics are quite different, that's what I meant | |
Kaj: 29-Jun-2011 | Hm, a cURL progress callback needs floats. It's pretty limiting if you can't get progress feedback |
62901 / 64608 | 1 | 2 | 3 | 4 | 5 | ... | 628 | 629 | [630] | 631 | 632 | ... | 643 | 644 | 645 | 646 | 647 |