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: 15101 end: 15200]
world-name: r3wp
Group: Dialects ... Questions about how to create dialects [web-public] | ||
Fork: 9-Jan-2010 | Here's a 77 character Roman Numeral to integer converter: | |
Fork: 9-Jan-2010 | If you start a mushing sequence with a capital letter that indicates the desire for a set-word | |
Fork: 9-Jan-2010 | And I just pushed the source for a proof of concept to GitHub: http://github.com/hostilefork/Rebmu/blob/master/rebmu.r | |
Fork: 9-Jan-2010 | But I bet that it could put Rebol on the map as a code golf language. | |
Fork: 9-Jan-2010 | Wait, that's a 72 character translater. The 77 one was different. :) | |
Steeve: 9-Jan-2010 | but in fact it's a little bit cheating, the code cannot be execute as-is. Is there a real difference with the following idiom used to shorten rebol sources >> do load decompress #64{...........} | |
Fork: 9-Jan-2010 | My goal was to create a language you can program in on paper | |
Fork: 9-Jan-2010 | A little awkward, but, not so bad when compared to things that have disposed the entire program logic into constants like n=1;$.+=n/2-n%n=10**(494254%C/9)%4999while C=getc;p$. | |
Fork: 9-Jan-2010 | Also it's not corrupting the language (much). If you learn this "rebmu" dialect you'll be learning a useful language and your knowledge will transfer. As opposed to GolfScript which is just garbage. | |
Fork: 9-Jan-2010 | (But good for a CS class, or whatever.) | |
Steeve: 9-Jan-2010 | There is a burden. When you add Something inside a sequence, you may have to swap all the followings caps/tiny letters :-) | |
Fork: 9-Jan-2010 | True, but renaming variables is a burden as well. As it happens, each numeric constant, symbol, or path operator breaks the chain so you get to start anew | |
Fork: 9-Jan-2010 | aaBBccDDeeFFgg... if you really do have a long long uninterrupted chain of that nature then there's a problem. But I bet usually a number or path or symbol would pop in there. | |
Steeve: 9-Jan-2010 | if each new word always begin with a capital letter, you don't have anymore the problem. You just lost the compression of the ":" char. Not a so huge loss | |
Fork: 9-Jan-2010 | Problem is that single character words play a huge part in this | |
Steeve: 9-Jan-2010 | ABC would mean [A B C] with this new system | |
Andreas: 9-Jan-2010 | and changing the case of text is something that can be relegated to a good editor :) | |
Fork: 9-Jan-2010 | Well you're free to work out an example of a better dialect but you'll be parsing URLs or something... like where I can do Ab to get a: b how would you get it? | |
Steeve: 9-Jan-2010 | A:B | |
Fork: 9-Jan-2010 | >> type? A:B == url! | |
Fork: 9-Jan-2010 | You're starting to tread on the question of taking away things and making a non-superset | |
Fork: 9-Jan-2010 | And you added a character :) | |
Steeve: 9-Jan-2010 | Yes i added a character but i don't have to take care of the correct alternation of uppercases | |
Fork: 9-Jan-2010 | A character here, a character there... pretty soon you're talking about real whitespace! :) | |
Fork: 9-Jan-2010 | >> 'A:B ** Syntax error: invalid "word-lit" -- "A:B" ** Near: (line 1) 'A:B | |
Fork: 9-Jan-2010 | >> unmush ['aB] == ['a b:] | |
Fork: 9-Jan-2010 | >> unmush ['aB] == ['a b:] | |
Fork: 9-Jan-2010 | That's the Rebol parser. I'm not taking strings as input, I'm taking Rebol blocks. It's a dialect. | |
Fork: 9-Jan-2010 | I showed you my answer to get ['a b:] in a brief notation | |
Fork: 9-Jan-2010 | >> unmush ['aB] == ['a b:] | |
Steeve: 9-Jan-2010 | ok i understand, i just proposed to avthe burden caused by a safe alternance of letter's casing | |
Sunanda: 9-Jan-2010 | Following some thoughts of Christoph Budzinski back in December, I wrote a short article on an approach to REBOL code golf last month......It takes quite a different approach to yours. But as it was never published, your approach must have priority :) What I suggested in the article was: 1. we create a private group here to thrash out the principles and practicesl then launch a set of REBOL code golf challenges 2. current code golf is seriously flawed as it counts characters not lexical elements: variable1: variable1 + variable2 is much better code than: v1: v1 + v2 and should have the same golf score 3. in REBOL, the First Rule of Code Golf is: Parse always wins (this has been empirically observed over many REBOL code challenges) | |
Steeve: 9-Jan-2010 | only to save ":" what a tremendeous gain !!! :-) | |
Fork: 9-Jan-2010 | Saves 40%. The colons and the spaces are intertwined issues, just due to the rules of Rebol. And I feel that if the dialect wasn't parseable Rebol but a string it wouldn't rightfully be called a Rebol dialect. | |
Fork: 9-Jan-2010 | Sunanda: I feel from my experience with parse that it's the sort of thing that can, if it fits your problem, help you a great deal... but it often seems to be just short of the needed functionality. I feel if your task does not depend on knowing the true/false result of matching, then series operations are often better. I've been thinking "if you don't use the boolean result of parse, you probably aren't working on a task that needs parse." | |
Steeve: 9-Jan-2010 | Generally Rebolers don"t make any difference with dialects parsing a string or a loaded block. It's called dialect as-well. | |
Sunanda: 9-Jan-2010 | My other main article point was: 4. Real golf has 18 holes per round. Most code golf plays just one hole. To be more realistic, there should be at least three holes -- ie after the first hole's scores are published, the challenge setter makes a modification to the challenge. Scores for that hole are (somehow) equated to the amount of original code the survives. | |
Fork: 9-Jan-2010 | 5. you do not bring your sony robot, night vision goggles, laser guidance systems, etc. onto the golf course. You bring a bag of sticks and you use your own arm, eyes, and brain. | |
Steeve: 9-Jan-2010 | REBIRDY would be a better suitable name for your dialect ;-) | |
Fork: 9-Jan-2010 | What Rebol can do is solve the problem and then do a coup-de-grace, like upload the results to a web server or something crazy like that. | |
Steeve: 9-Jan-2010 | at least, make a birdy | |
Steeve: 9-Jan-2010 | is the return carriage counted as a char or not ? | |
Fork: 9-Jan-2010 | Not unless it's part of the program function (e.g. you use it in a multi-line character constant bounded by braces to get a carriage return in your target program) | |
Fork: 9-Jan-2010 | Sunanda: The idea of a minor modification to the challenge and seeing what that does to the program is a good one; I would do that with interview candidates who knew the "right" solution to a problem (due to studying or seeing it before)... just introduce some whimsical constraint they hadn't memorized... | |
Henrik: 9-Jan-2010 | Could an offshoot of this be a method for thumb coding? I'd love an app for phones which allow you to write code solely with your thumb. | |
Fork: 9-Jan-2010 | I'd put as a challenge to the Rebol community to refine Rebmu (or a similar syntax) to the point where they can submit an answer to code golf challenges that demonstrates some awesome feature of Rebol while still being in striking distance of the "winning" answer. I thought that perhaps showing Rebol 3.0 extending the roman numeral system to support higher order numerals than 1000 through unicode characters for M with a bar over it, etc. would be a good one. | |
Fork: 9-Jan-2010 | Stevee: Hm? I don't know what you are referring to. I wrote the roman numeral function from scratch, in a fairly naive way. | |
Fork: 9-Jan-2010 | I was contemplating the good and bad of a "mush" function, and I think I'm against it, because it undermines my point--namely that you should be able to write this code without assistance from a tool. | |
Fork: 9-Jan-2010 | So there are some k's in the commented version that should be js. So it is when you're trying to maintain a document in wordpress. :( | |
Fork: 9-Jan-2010 | Okay maybe just one k. Reason is I reformed the spec so that n, j, k were default defined to 0 as integers and had a rewrite in the middle. | |
Fork: 9-Jan-2010 | I also changed continue's shortcut from CO to CN because I wanted CO for compose. Every time you change something it wrecks everything. I know text files have their... um... way. But I still want computers to step up to the plate and give every reference a UUID. Someday... | |
Fork: 13-Jan-2010 | Rebmu now has a fledgling homepage/logo/rationale: http://hostilefork.com/rebmu/ | |
Fork: 13-Jan-2010 | Well, Rebmu has a set of starting definitions for one letter things. So s starts out as the empty string, i starts out as IF. You can redefine these things. | |
Fork: 13-Jan-2010 | I've had some internal debates on questions like whether LN should be LENGTH? or if I should make any Rebol identifier that ends in a ? also have a ? in it. These are some tricky questions, but on that particular decision (for instance) I've decided that the ? in the name is something important to keep. | |
Fork: 13-Jan-2010 | I'm also thinking that it's better to use three-letters for things rather than use letter combinations that don't make sense. If you run out of things RE can be (RETURN, REJOIN, REPEND, etc.) then the answer is not to pick one and make it RZ for no reason... but to pick the least likely to use in code golf and go to three letters. If this is a problem for any particular challenge they can just write (for instance) Rrej at the beginning of the code and then have a shorthand. | |
Reichart: 13-Jan-2010 | I recall a childrens book from England when I was a child where each of the cartoon children in the book spoke in mostly single letters, it was something like: Boy - I C U Girl - I C U 2 Boy - R U HP Girl - I M HP Boy - U R A QT It was a bit silly, but well made, and they had some MUCH BETTER tricks of this than I have given from memory. | |
Sunanda: 13-Jan-2010 | Never knew it as a kid's game, but the Two Ronnies spun it into a TV sketch: http://www2.prestel.co.uk/cello/swedish.htm | |
Chris: 4-Mar-2010 | I'm rethinking the behaviour of my 'import dialect (library: http://bit.ly/rebimport ) when working with structured data. At it's simplest form, 'import filters a block of key-string pairs based on a supplied set of constraints: import [a "1"][a: integer! is more-than 0] == [a 1] ; or none if the constraints are not met There are two nested forms I'd like to support: 1) a continuation of key-value blocks [a [b "1"]] and 2) a block of values [c ["b" "1" "foo"]] The first could just be a recursive function or parse call. The second needs a little more thought - on the face of it, it could just verify the contents conform to a preset group: [ ["a" "b"] contains some of ["a" "b" "c"] ] (or any of), which'd be fine for validating web form input (eg. multi-select list), but would rule out, say, a JSON block containing objects (as key-value pairs). I'm trying to figure out if this is overkill or a genuinely useful way of validating structured data... Then there's ["1" "2" "3"] <- be nice to validate as [some integer!] or [some integer! | decimal!]. I don't want it to be overly complex, but it should at least be useful - anyone have any conventional cases for validating a block of strings? | |
Anton: 27-May-2010 | I'm doing a filtering dialect facing similar problems. Examples: [msg-id] = [ 10 .. 50 ] ; msg-id must be between 10 and 50. [msg-id] = [ .. 50 ] ; msg-id must be any number up to 50. [msg-id] = [ 50 .. ] ; msg-id must be 50 or beyond. [group] = [ "Dialects" ] ; group name must be "Dialects" [msg] = [ .. "import" .. ] ; message text must contain "import" [msg] = [ all [[ .. "import" .. ] [ .. "dialect" .. ] ] ] ; message text must contain "import" AND also contain "dialect". [user] = [any [ "Chris" "Anton" ] ] ; user name must be any of "Chris" or "Anton" | |
Fork: 18-Jun-2010 | A "code golf" question on StackOverflow caught my attention yesterday, and especially the frustrating ability of perl to win these competitions with utterly disgusting code which is unmodifiable with the slightest change in spec motivated me to resurrect my rebol dialect for code golfing. | |
Fork: 18-Jun-2010 | AltMe put a wacky thing in that link, I'll try again | |
Fork: 18-Jun-2010 | Anyway, if you look at the active community of people who like to tinker in code golf, I think they're freaky and obsessive enough to perhaps appreciate that Rebol is not only terse, but powerful in a generic way. Note the solution from the guy solving this dot connection problem on the commodore 64 in screen memory. Well, trying to solve, it fails on edge conditions | |
Sunanda: 18-Jun-2010 | The link is probably fine. It's a problem with View that AltME inherits. Some of us will see it fine, others see it a little screwed. Resizing the window can make the problem go away. Usually the link is clickable. Good luck with converting the golfers! | |
Fork: 18-Jun-2010 | Well it's more fun if I'm not doing it alone!! Note that Code Golf answers are wikis, and rebmu is quite easy for Rebol programmers to grasp, easy to improve--I think it could be a showcase that might get the language in front of "fringe"/"outlier" developers. (And earn perhaps a bit more respect than RebolTutorial's questions, though I will say that the visibility he's given by doing Q&A on a modern medium is better than nothing...any publicity is better than no publicity, the popularity of a tag in sheer number counts is rather important.) | |
Fork: 18-Jun-2010 | (Being forced to fire up a VM that is willing to run AltME, having it mangle my links, and be unable to do "shift up" and have my entire line selected or get a right click menu is... well, I'm a sympathetic audience, but there's just no comparison to how slick StackOverflow is.) | |
Anton: 18-Jun-2010 | Fork, those code golf challenges are interesting, and I'm glad you're working on it. I came up with a method for rendering links perfectly in an AltME-style display. http://anton.wildit.net.au/rebol/doc/overlaid-hyperlink-text-face.r It's a pity that AltME hasn't been improved with this method. If I had access to AltME message display code I could work it in. | |
Maxim: 18-Jun-2010 | Fork, you should make a sort of white paper on the power of Dialecting in REBOL using Rebmu as a reference. Your language shows just how powerfull REBOL's Domain Specific Language capabilities are. Its a result of applying dialecting to a very specific Domain, but its still pretty much General Purpose . I think that If its well written, without bias and personal opinion on REBOL itself, it would make the cut for a nice article on REBOL.com's web site as an article on the subject. its just my POV, but marketing information on this, with factual, non-trivial, examples is very scarce on the REBOL web site. I think Carl would welcome such a complete example. you've litterally transformed the semantics of the language, yet can still interpret it within REBOL. | |
Maxim: 18-Jun-2010 | maybe not the semantics as much as the syntax, but its such a different approach that its sort of a blur between both IMHO. | |
Fork: 18-Jun-2010 | @Maxim: I've tinkered a little with the semantics, but tried to make it so that the abbreviated Rebmu primitives only extend the reactions to datatypes which Rebol currently throws errors on. For instance, the letter "e" is mapped to "either-mu", which can handle things like constants or functions in the clause block. | |
Fork: 18-Jun-2010 | Such a feature would be too error-prone in an ordinary Rebol program to be worth the savings, but it is essential in shaving off characters | |
Fork: 22-Jun-2010 | I have been writing Rebmu programs in actual Rebmu, as opposed to writing them in Rebol and then translating, as a test of how "bad" it is: http://github.com/hostilefork/rebmu/tree/master/examples/ | |
Fork: 22-Jun-2010 | Originally I had it breaking out symbols like - and + in such a way that they would cause token breaks, like [a-b] would go to [a - b]. But not only did that cause issues with common naming conventions (to-block, etc) it also wastes a lot of two-character tokenspace. So now [a-B] and [A-b] become [a- b], [A-B] becomes [a-b:], [a-b] stays [a-b]. | |
Fork: 22-Jun-2010 | There's an exception for runs with multiple characters in this class to make programming with ++, --, etc easier. If multiple characters in this class appear in a row then they split the token. [a++B] => [a ++ b] [A++b] => [a: ++ b] ...but... [A++B] => [a++b:] [a++b] => [a++b] | |
Fork: 25-Jun-2010 | I didn't know Rebol 2 didn't have a "continue". | |
BrianH: 25-Jun-2010 | Yeah, and it can't be backported as mezzanine either (tried already). I'll request a native. | |
Fork: 25-Jun-2010 | I should start a Rebmu quotes page for what people say when I send it to them. "Reading the hourglass solution at first threatened to give me a brain aneurysm, but actually after reading this I now see you were up to with 'mushing'. Clever!" | |
Fork: 25-Jun-2010 | I thought of writing a "derebmu" which converts things like "is" into "insert" just as a teaching tool. I now realize that it's essential to have this functionality for things like parse, which are dialects in their own right and look at the literal words. Hence Rebmu's PA for parse will have to take its rules argument and derebmu the block before execution. | |
Fork: 25-Jun-2010 | Which leads to the question of why map the words in the do dialect at all, and not just derebmu the whole thing before execution. (I think it's just a different way of thinking about what to do with the word map, not a tremendously big deal.) | |
Fork: 26-Jun-2010 | @Gabriele: BrianH says alias is dooooomed. But he seems to have alternatives in mind. Hopefully something will exist allowing one to give names words in such a way that they pass equality tests despite different spellings... that would be a huge enabler for international markets, as I know of no text-based interpreted language able to cater to people in their own tongue the way Rebol can. | |
Gabriele: 27-Jun-2010 | I agree with Brian and Ladislav that "internationalization" of a programming language makes no sense at all. Not sure why only some americans think it does. :-) ALIAS may not be there in R3 but I'm not sure why you should be worried about R3 at this point; but in that case you can do the compilation on R3 and use ALIAS in R2, so I don't see it as a big issue even if you want to worry about R3. :) | |
Fork: 27-Jun-2010 | If the existing Rebol community thought it was useful to create a localized version of Rebol, you probably would have done it by now. Because it wouldn't be hard. | |
Fork: 27-Jun-2010 | My point is, it wouldn't hurt anything in the existing ecosystem and who knows, maybe it would take off in China or wherever and create a new market. | |
Fork: 27-Jun-2010 | Is it worse to have a Chinese programming ecosystem out there which you don't draw code from, or to have them all writing in Perl and Ruby and Python? | |
Gabriele: 27-Jun-2010 | so I don't think anyone is "against" a localized rebol, it's just that noone is really interested in that. what happens is you start playing with it and think it's cool but you never actually use it (i did play with an italian version of REBOL in 1999 or something like that). | |
Gabriele: 27-Jun-2010 | ie. ALIAS is solving a problem that nobody has. | |
Group: !Uniserve ... Creating Uniserve processes [web-public] | ||
Oldes: 4-Sep-2006 | I want do do more with it - this is just a test | |
Dockimbel: 4-Sep-2006 | I've added a new event : 'on-write-chunk to allow modification of the chunks of big files just before they are sent. This can be the hook to implement compression or encryption when sending big files. | |
Dockimbel: 4-Sep-2006 | Btw, this new event is untested yet. I should be able to provide you a small prototype service and client protocol to show you how to use it. | |
Dockimbel: 4-Sep-2006 | It could be quite simple in fact (at least in theory) : 1) Send a first message telling the name and size of the file (unprocessed) to transmit 2) Send the file in parts (done automatically by Uniserve) 3) Catch the 'on-write-chunk event to process the chunk data (compress, encode...) then add a header containing : - size of the chunk - a sequence ID (an incremental counter starting with 1, 0 would mean last chunk) | |
Dockimbel: 6-Sep-2006 | Please find here : http://softinnov.org/tmp/UniServe0919.zipa snapshot version of latest UniServe sources. It fixes some of the issues I've been asked about (UDP support for example). It's a beta version, no updated docs, no samples. ChangeLog in %uni-engine.r file. Any questions ? Ask them here, I'll answer as my available time permits. | |
Dockimbel: 23-Sep-2006 | Terry, with the release of Cheyenne (soon I hope), you'll get a complete working example of encap-fs library usage. | |
Dockimbel: 23-Sep-2006 | UniServe is a network programming framework. Cheyenne is web server (with lot of features) using UniServe as low layer. | |
Dockimbel: 3-Oct-2006 | Hi Scott, my fault, the release archive contains a duplicate HTTP protocol file, so they collide on loading. Just remove the following file : uniserve/protocols/HTTP2.r | |
Pekr: 6-Jan-2007 | it states stable, but it really is not. Doc, before he left scene for another few months :-), stated something like that he has new reimplemented session handling, which is going to be "soon" released. But don't take it for granted, maybe I misunderstood something. But really - sessions do not work properly ... There is a demo with multiple frames, e.g. Mozilla (but even IE) did not open all boxes, there were some errors or timeouts, dunno ... | |
Will: 6-Jan-2007 | I'd say the core is actually stable, have it running with quite some traffic and no problems, there are indeed problems with sessions. Had a sign very recently that let suppose Dock will soon be back, hopefully 8) | |
xavier: 13-Jan-2007 | very interesting tool ... i go to do a site on it | |
Joe: 14-Jan-2007 | How does uniserver tcp async compare with a) async://, b) atcp:// and c) the new async core that may eventually be released (and was available two years ago !) | |
Maarten: 14-Jan-2007 | They are all 3 abstractions of a lower-level rebol async layer, performance is in the same range. | |
Mchean: 26-Jan-2007 | Thanks Pekr, that would be a suprise if i was running a server somewhere | |
Oldes: 27-Jan-2007 | I started to play with the proxy-http service a little bit and found that there is a bug: the on-error http-event has args: [reason port] not [port reason] ! |
15101 / 64608 | 1 | 2 | 3 | 4 | 5 | ... | 150 | 151 | [152] | 153 | 154 | ... | 643 | 644 | 645 | 646 | 647 |