AltME groups: search
Help · search scripts · search articles · search mailing listresults summary
world | hits |
r4wp | 237 |
r3wp | 1294 |
total: | 1531 |
results window for this page: [start: 801 end: 900]
world-name: r3wp
Group: Core ... Discuss core issues [web-public] | ||
Steeve: 19-May-2009 | Adding more and more natives schemes (like matrix operations on series) is the way to get Rebol more and more powerful | |
Maxim: 19-May-2009 | the unification of series management is one of the major sources of code reduction in rebol. | |
Maxim: 19-May-2009 | the other is the fact that series are mutable, and many functions edit the input series directly. | |
Sunanda: 7-Jun-2009 | 'alter is a hard one to name. The operation is: * if the target value exists in the series: remove the first instance of it * if it does not exist in the series: append it to the end. The "remove first instance" makes it more generic than rotate/swap/toggle when there is more than one instance of the target in the series. | |
BrianH: 7-Jun-2009 | In theory, ALTER is a set function, so the series in question is not supposed to have duplicates. | |
Sunanda: 7-Jun-2009 | You are quite right -- 'alter is still in R3 ..... My mistake. Several of REBOL's set operations operate on series. Series are more like bags than sets, hence they can have duplicate values. That adds value for a programmer, but dilutes academic purity. Perhaps 'alter could have a purer set defintion by becoming a no-op if the target value exists more than once in the series. | |
Izkata: 10-Jun-2009 | foreach will advance to the next index whether or not the series was modified: >> D: [1 2 3 4 5 6 7 8 9] == [1 2 3 4 5 6 7 8 9] >> foreach X D [remove find D X] == [] >> ? D D is a block of value: [2 4 6 8] | |
Gregg: 11-Jun-2009 | Modifying a series you're iterating over is always risky. Not only do you have to make sure you get it right, but there is always a possibility that iterators might change their behavior. | |
Janko: 13-Jun-2009 | yes.. I understand that .. I thought that in such case an error was untiuntive .. but I tried and it looks like it should .. ok .. so I don't know if anything is wrong with it >> any-is? empty? [ "asd" "Asdas" ] == none >> any-is? empty? [ "asd" "Asdas" "" ] == true >> any-is? empty? [ "asd" "Asdas" "" none ] ** Script Error: empty? expected series argument of type: series port bitset ** Where: any-is? ** Near: empty? none >> | |
BrianH: 3-Jul-2009 | I read the article linked from reddit. The author's opinions were a bit off sometimes, but the principle is sound. Combining ropes with the copy-on-write idea gets you copy-on-write strings that don't have to really copy if they don't need to. Only the modified part would need new storage - the unmodified part could be referenced unchanged. When you combine this with the possibility that PROTECTed series may be thread-global in R3, but unprotected series thread-local, then functional data structures start to become interesting in R3. | |
Graham: 15-Aug-2009 | does it build a series without corrupting binary data ?? | |
Graham: 21-Aug-2009 | I want to make sure each item in the block of items occurs in the series S | |
Group: View ... discuss view related issues [web-public] | ||
amacleod: 29-Jun-2007 | Thanks for the demo script. I did not know ther was that much control with the stock rebol drop-down. It did not solve my problem with the display of hte full widget. I said the tab-panel was narrow ...I ment short. But the other problem seems to be that "tab Panel" seems to cut the wiget unless there is soething else occupying the space below. At first I solved it by adding a series of empty text and returns but now I fill it with a box and place the drop-down with the at statement. Thanks! | |
Jaymer: 19-Jun-2008 | hi. I run View in Win XP. My script is very simple... blk: load %/c/input.txt foreach url blk [if not find attempt [read append url "cvap"] "Nothing found" [browse url]] and a line in the input file is something like this: http://website1.com/search?query= http://website2.com/search?query= So, I want to search for "cvap", and it appends that to the URL and I search the result string and if it DOES NOT say "Nothing Found", then I open that URL so I can visually examine it. It works 95% of the time, but sometimes I get the following error: ** Script Error: find expected series argument of type: series port bitset ** Near: if not find attempt [read append url "cvap"] Any ideas how I can fix this? thx | |
Graham: 14-Jul-2008 | James - those aren't time series from what I could see. Time series are fed date values, and are not just equidistant points on an x axis labelled with dates. | |
amacleod: 1-Oct-2008 | Is there a way to append an image object (a box for example) to a face that has already been displayed. I'm looking to get simple highlight functionality in an app in which a string is scanned for in a series of text faces. I've been able to highlight the search word in each face but if I click in any of the text faces the face looses the highlight effect sort of like loosing focus on normal highlighting. I would like the highlight to remain until no longer needed. | |
james_nak: 17-Nov-2008 | I'm trying to create a function that builds radio buttons and checkboxes on the fly. Sunanda gave me some ideas about how to do that. This morning it dawned on me that I was going about it the wrong way. I was trying to build an entire string that represented the rebol code for the gadget instead of building a block of code.. What was happening was my contexts were all in error. I'm wondering now how to append my code into an existing layout block. The only working method I have found so far is to append into a non-layout block then "view layout blk." I'm still curious if there is a way to append/insert into a layout block though. E.g., a: layout [ btn "Quit" [unview halt] ] b: [t1: check [ ] ] <- this is my generated block append a b I get a "Script Error: append expected series argument of type: series port" | |
amacleod: 4-Apr-2010 | still error1 ** Script Error: copy expected value argument of type: series port bitset ** Where: expand-specs ** Near: specs: copy specs foreach var | |
Maxim: 15-Sep-2010 | by interactive I mean will this be rendered or running live? with a rendered system you can crank up the particle count and just pregenerate the whole data set as a series of images. then when you need to see it, just cycle the image of a face. usually, people use a few particles for preview... then generate "flipbooks" which are just rendered images and include thousands of particles with their alpha channel density reduced to practically nothing (like 2% visibility) this generates very pretty effects, but at a cost of rendering time. | |
Izkata: 2-Nov-2011 | For my previous snippet: >> layout [X: button] X is just a generic variable name I use when I need a throwaway, like others use "foo", "bar", and so on. Layout is just assigning the button object to the word X, which I'm exploring in the next few lines like Geomol explained. I explored system in the same way to find view, then VID, then vid-styles. vid-styles is a block containing a series of alternating names and definitions, which the foreach loop is simply going over | |
Group: !RebGUI ... A lightweight alternative to VID [web-public] | ||
Pekr: 11-Apr-2007 | ** Script Error: empty? expected series argument of type: series port bitset ** Where: set-focus ** Near: view*/caret: case [ all [caret in face 'caret face/caret] [at face/text face/caret] find behaviors/caret-on-foc... | |
Graham: 19-Apr-2007 | An error has occurred. If this occurred with an upgrade, please revert to the older version for the meantime, and report the error message as documented below. make object! [ code: 303 type: 'script id: 'expect-arg arg1: 'clear arg2: 'series arg3: [series! port! bitset! none!] near: [clear f/text all [f/type = 'area f/para/scroll: 0x0 f/pane/data: 0] f/line-list: ] where: 'clear-text ] | |
Graham: 19-Apr-2007 | >> display "" [ el: edit-list data [ "1" "2" ] button "Set" [ el/text: 1 show el ] button "clear" [ clear-text el ]] do-events ** Script Error: clear expected series argument of type: series port bitset none ** Where: clear-text ** Near: clear f/text all [f/type = 'area f/para/scroll: 0x0 f/pane/data: 0] f/line-list: | |
Graham: 20-Apr-2007 | here it was: make object! [ code: 303 type: 'script id: 'expect-arg arg1: 'find arg2: 'series arg3: [series! port! bitset!] near: [s: any [all [s: find/reverse str s next s] head str] set [ns]] where: 'current-word ] | |
Ashley: 22-Dec-2007 | Uploaded build#108. 1) Fixed UI quirks with tree widget 2) Renamed vid widget to style 3) Added a new scroll-panel widget USAGE: scroll-panel data [calendar] scroll-panel data [field field] DESCRIPTION: A panel used to group widgets within a scrollable container. 4) Added a new sheet widget USAGE: sheet sheet options [size 3x3 width 2] sheet data [A1 1 A2 2 A3 "=A1 + A2"] DESCRIPTION: Simple spreadsheet, based on rebocalc.r, with formulas calculated left to right, top to bottom. A cell is either a scalar value, string, or a formula starting with "=". Scalar values are automatically right-justified, series values left-justified. Remember to put spaces between each item in a formula and use () where needed. OPTIONS: 'size specifies number of columns and rows 'width specifies cell width in relation to cell height 5) Updated %tour.r to incorporate examples of tree (List), scroll-panel (Grouping) and sheet (List) usage. Enjoy! | |
Graham: 1-Jan-2008 | latest checkout >> display "" [ sp: scroll-panel data [ field 10 "Hello" ] button "get values" [ probe get-values sp ]] do-events ** Script Error: foreach expected data argument of type: series ** Where: get-values ** Near: foreach widget face/pane [ if find [ area check check-group drop-list edit-list field group-box password rad... >> | |
Ashley: 16-Mar-2008 | Certainly possible (creating an image of a display is trivial), but how would it be used / specified in practice, and what would we call this new widget? Perhaps a grouping widget? fan data [ display "A" [...] display "B" [...] display "C" [...] ... ] which would create a series of clickable display icons ... click the icon and that display comes to the foreground. Is that sort of what we are talking about? | |
Ashley: 5-Nov-2008 | I've seen something similar before ... solution was to ensure all values were strings ... and to copy/deep the data block prior to passing it to the table widget. I think it has something to do with either a non-string value (e.g. a block) confusing things, or a shared series [value] being modified by soemthing other than the table widget. | |
Pekr: 24-Aug-2009 | RebDOC crashes even separately: ** Script Error: length? expected series argument of type: series port tuple bitset struct ** Where: layout ** Near: form length? functions >> | |
Ashley: 14-Sep-2010 | It's even worse than that, the true "cut-over" for many won't occur until we have a stable R3 SDK! ;) Having 2 versions of RebGUI (b117 and b218) that are each 95% done, but each with their own bugs and quirks is not an ideal situation ... so I'm [again] looking to complete the 2.x series and finally obsolete b117 ... but R3, as always, is so close ... | |
Ashley: 17-Sep-2010 | 2.x series. | |
Ashley: 13-Jan-2011 | On a Mac, no problem. On WinXP it appears that the events are being generated faster than they can be processed. Good test case, I've never seen this before! ;) I don't have an immediate fix, but this is one more reason for me to get the 2.x series released. Are drop- and edit-list the only roadblocks for you? | |
Awi: 15-Jan-2011 | Sorry for reporting only bugs, I like the 2.x series so much, it's much faster, no slow scrolling, I do really hope this version gets stable and usable. Currently it's the only usable GUI for me with nice graphic. | |
Ashley: 11-Nov-2011 | b117 is the latest stable release. The b2xx series is a rewrite that is 95% complete. | |
GrahamC: 30-Dec-2011 | A dictionary is just a series of words. You can make your own | |
Group: !REBOL3-OLD1 ... [web-public] | ||
BrianH: 8-Jan-2008 | The behavior of map! is part of a general change in R3 to make the none value be a placeholder for missing data, like null in SQL. Even the series accessors (first, second, ...) now return none when accessing indexes off the end - this means that you can now thing of the current length of a series as an relatively unimportant detail that you can ignore in some circumstances. | |
LuisE: 16-Apr-2008 | can anyone help , im new to rebol. im trying to pass a value to a function but i get a path error. why? ex. somefunc: func [x] [print series/x] | |
LuisE: 16-Apr-2008 | and use it to read a value in a series somefunc 1 | |
Sunanda: 16-Apr-2008 | This may be what you want: series: ["a" "b" "c" ] somefunc: func [x] [print pick series x] >>somefunc 1 == a | |
Sunanda: 16-Apr-2008 | This works in recent versions of REBOL: somefunc: func [x] [print pick series/:x] note the ":" before the "x" | |
Pekr: 16-Apr-2008 | series/:x or series/(x) | |
Sunanda: 16-Apr-2008 | oops -- remove the 'pic from that second example: somefunc: func [x] [print series/:x] | |
Pekr: 24-May-2008 | There starts to be series of VID3 blogs. So - those who want to affect some design principles, can share their opinion there .... | |
BrianH: 29-May-2008 | Many of the series functions are modifying though, and reassignment is used a lot. | |
BrianH: 2-Oct-2008 | Ports can't be treated like series anymore. The seek option has been moved to READ and WRITE, which correspond loosely to COPY and INSERT on R2 ports. The index or offset is an internal property of the port, not of the port reference like in R2. | |
BrianH: 28-Oct-2008 | As far as your code is concerned, a string! will be a series of Unicode codepoints. Internally, who cares? The implementation of string! is likely to be the same as the native implementation on the platform is running on, or whatever is more efficient. I think that string! is now UTF-16 on Windows, and the symbols behind word! values are internally UTF-8. Still, it doesn't matter what strings are internally because AS-STRING and AS-BINARY are gone. All string-to-binary conversions will need encoding. REBOL scripts are going to be UTF-8 encoded though, as I recall. | |
[unknown: 5]: 30-Nov-2008 | Is there any way to get our hands on the latest Alpha build? I would like to start to plan for migration to REBOL3 of some scripts and plan for REBOL3 in current work. Especially regarding ports and series handling. | |
Maxim: 5-Jan-2009 | yes... for python its rather easy because the first class values follow most of C rules... series are static, for example. | |
Maxim: 8-Jan-2009 | a bit like saying that series is the super type of both string and block. | |
BrianH: 9-Jan-2009 | I'm still waiting on an answer about that INSERT of unset! values change in the 2.7 series... | |
Steeve: 9-Jan-2009 | what should be the usage of unset! values in series ? | |
BrianH: 9-Jan-2009 | I don't know. I know that if you need to have an unset! vale in a series, not being able to insert one would be a hassle. I just don't like the wrapper code that it requires sometimes (as in that MAP discussion). | |
Maxim: 15-Jan-2009 | one question I have... does the object type also copy every series included like in R2 ? that, IMHO one of the biggest regressions in rebol's history. reversing the copy is impossible to do perfectly (scanning the new object, and attempting to link back the old series). plus it slows down rebol in a few ways. | |
Kaj: 2-Feb-2009 | Itīs written in a simple style, yet I had to make a series of tweaks | |
Kaj: 2-Feb-2009 | I encountered several bugs and I had to write a series of wrappers for READ and WRITE to arrive at functions that act compatible between R2 and R3 | |
BrianH: 7-Feb-2009 | head clear back tail is much faster than reverse remove reverse. All of that reversing is series copying, as is remove from the head of a series. If you don't need your function to copy, change reverse remove reverse to clear back tail. | |
[unknown: 5]: 7-Feb-2009 | Well, my get-block function is an example. I used it on a series of block data and get different results that don't seem to jive with my expectations. | |
BrianH: 7-Feb-2009 | The one compare is dwarfed by the copy overhead though. Shifting the index only has significant overhead for ports, not series. | |
BrianH: 9-Feb-2009 | We are extending support of many of the functions that people traditionally associated with series to objects and maps, without making them into series. So that means that APPEND works, but INSERT doesn't because of the position stuff. | |
BrianH: 9-Feb-2009 | Well, in some cases to fix, but yes, lots of exceptions. The guideline is that maps and objects don't have position, but series do. So the position-dependent functions don't work but their non-position-dependent counterparts do. Ports don't work like series either, so there is another whole set of differences to remember. | |
BrianH: 9-Feb-2009 | Trust me, vector! has bigger problems than that right now. I expect that it will not end up 0-based though, even with all of the advantages that 0-based vectors give us. It is likely that we will instead have 0-based versions of PICK and POKE that work on all series. | |
Steeve: 9-Feb-2009 | >> a: [] == [] >> dp [append a 1] == make object! [ timer: 32 evals: 11 eval-natives: 4 eval-functions: 1 series-made: 2 series-freed: 1 series-expanded: 1 series-bytes: 464 series-recycled: 0 made-blocks: 1 made-objects: 0 recycles: 0 ] as you can see the block has been expanded, which means copied in another place | |
[unknown: 5]: 9-Feb-2009 | >> dp [a: [] b: []] == make object! [ timer: 15 evals: 12 eval-natives: 3 eval-functions: 1 series-made: 1 series-freed: 0 series-expanded: 0 series-bytes: 432 series-recycled: 0 made-blocks: 1 made-objects: 0 recycles: 0 ] >> | |
Steeve: 9-Feb-2009 | >> dp [] == make object! [ timer: 14 evals: 8 eval-natives: 3 eval-functions: 1 series-made: 1 series-freed: 0 series-expanded: 0 series-bytes: 432 series-recycled: 0 made-blocks: 1 made-objects: 0 recycles: 0 ] see, a block is always created by dp | |
BrianH: 9-Feb-2009 | No, there are no plans to implement range. The head and tail of the series are attributes of the series, not the reference to the series. It's like the difference between the position attribute of a port and a series: For a series, the position is an attribute of the reference to the series, while for port, the position is an internal attribute. Still, a subseries reference could be implemented as a user-defined datatype as long as it is careful to make up for changes in the underlying series. | |
Steeve: 9-Feb-2009 | hmmm... the rebin format will be hudge, cause for series, there is 2 indirections (2 references) + the value himself | |
BrianH: 9-Feb-2009 | No, just the value and the reference to the value with the position. The poisition isn't a reference, just an integer (internally). So you need the series, the length of the series, a datatype tag, the reference to the series, and the offset. The reference and offset would be part of the contents of anotther series. It would take less space in binary than in memory or REBOL syntax. | |
Pavel: 11-Feb-2009 | Brian, Vector datatype can't be expanded or appended, ie the size is fixed in the moment of creation, for use as fix lookup maybe good, practically not, it is kind of series and should behave similarly | |
Steeve: 11-Feb-2009 | there is lot of missing features related to vectors (find, mold, to binary!, etc...) It should have the same capabitilies than other series... | |
Rebolek: 11-Feb-2009 | Or this one: >> v: make vector! [+ integer! 16 100] == vector! >> v/0: 20 == 20 >> v/1: 100 == 100 >> first v == 100 See? I said that introducing zero based series in REBOL is not good idea :) | |
Rebolek: 11-Feb-2009 | Yes Pekr, this has nothing to do with zero based indexing. Series are still one based: >> b: [a b c d e] == [a b c d e] >> b/1 == a >> b/0 == none | |
Henrik: 11-Feb-2009 | What we need to worry about is clarity of how each series type behaves with the series functions (as uniformly as possible) and fixing the bugs for AT on blocks and PICK on strings. | |
Pekr: 11-Feb-2009 | You are right, those functionalities behave consistently. I probably need some "rebol philosophy" explanation for such stuff. Why e.g. head is at first series element, and why tail occupies one past last series element, etc. | |
BrianH: 11-Feb-2009 | Petr, I have been proposing that new PICKZ and POKEZ functions be added to do a 0-based PICK/POKE, instead of having vector! be 0-based. This would give us 0-based referencing abilities for all series, not just vectors, then we could make vectors 1-based like the rest. There are real advantages to 0-based indexing so it would be good to have it, but consistency is better here. Carl was not proposing to make a change to PICK and POKE in his blog: he already (half) made the change. He was asking us in his blog if he should change it *back* to the old, buggy R2 behavior. I think he should finish fixing PICK, POKE and AT instead. Henrik, INDEX? returns a 1-based index from the *head* of the series - that's why it's always positive. | |
BrianH: 12-Feb-2009 | Because the series creatiion builder model is easier for less advanced REBOL programmers to use. Buffers need management (as #1789 explains). This new model is for more advanced programming, such as mezzanine and library code. | |
[unknown: 5]: 12-Feb-2009 | I guess, I don't follow. Maybe, I'm jumping to conclusions about what /into actually implies. To me, /into implies that the original series passed to the function is what is modified and not a copy of it. | |
[unknown: 5]: 12-Feb-2009 | Brian, I read it and the option I believe should be default behavior is for the original series to be modified. | |
BrianH: 12-Feb-2009 | That is the difference between /no-copy (which turns a builder into a modifier), /copy (which turns a modifier into a builder), and /into (which makes a builder insert into a provided buffer instead of creating its own series). | |
Henrik: 12-Feb-2009 | Brian, now you say it inserts. Does it clear the series and inserts, just inserts or overwrites the existing content? | |
[unknown: 5]: 12-Feb-2009 | BrianH, but are we not doubling in size the memory space for that function? If were passing it a huge series to begin with - would we not end up with a buffer that is potentially as big or bigger than the original series if were inserting data? | |
BrianH: 12-Feb-2009 | Most of the time a function using build/into functions will preallocate a series, build some data into it, then return the series. Builder functions can use lower-level builder functions. You get a reduction in intermediate series creation overall. | |
BrianH: 12-Feb-2009 | ; Here's a version of COLLECT without /into, a typical example of a builder. collect: func [ "Evaluates a block, storing values via KEEP function, and returns block of collected values." body [block!] "Block to evaluate" /local output ][ output: make block! 16 do func [keep] body func [value /only] [ apply :append [output :value none none only] :value ] output ] ; Here's COLLECT with the /into option. collect: func [ "Evaluates a block, storing values via KEEP function, and returns block of collected values." body [block!] "Block to evaluate" /into "Collect into a given series, rather than a new block" output [series!] "The series to output to" ][ unless output [output: make block! 16] do func [keep] body func [value /only] [ output: apply :insert [output :value none none only] :value ] either into [output] [head output] ] Note that the version with /into also lets you use other series types than just block!. This option added to REDUCE and COMPOSE would let you create parens and paths as well, even though REDUCE and COMPOSE can only take block! specs. | |
BrianH: 12-Feb-2009 | APPLY is good for wrapper functions, and now for using function values. From COLLECT: output: apply :insert [output :value none none only] From USE: apply make closure! reduce [to block! vars copy/deep body] [] From ACCUMULATE: value: apply :fn [:value series/1] | |
BrianH: 13-Feb-2009 | I'm converting GATHER to mezzanine/library code standards now. We'll probably put all of these is an advanced series manipulation library module. | |
BrianH: 13-Feb-2009 | Mezzanine-quality version of Henrik's GATHER, R3 version: gather: func [ "Get the values of a given field from all objects in a block." block [block!] word [word!] /into "Insert into a buffer instead (returns position after insert)" output [series!] "The buffer series (modified)" ][ unless output [output: make block length? block] forall block [ all [ object? block/1 in block/1 word output: insert/only output select block/1 word ] ] either into [output] [head output] ] | |
BrianH: 13-Feb-2009 | Final submitted R3 version: gather: func [ "Get the values of a given field from all objects in a block that have it." block [block!] "A block which may contain objects" word [word!] "The field to look for" /into "Insert into a buffer instead (returns position after insert)" output [series!] "The buffer series (modified)" ][ unless output [output: make block length? block] foreach item block [all [ object? :item in item word output: insert/only output select item word ]] either into [output] [head output] ] | |
BrianH: 13-Feb-2009 | Here's the R2 version of GATHER: gather: func [ "Get the values of a given field from all objects in a block that have it." block [block!] "A block which may contain objects" word [word!] "The field to look for" /into "Insert into a buffer instead (returns position after insert)" output [series!] "The buffer series (modified)" ][ unless output [output: make block length? block] foreach item block [all [ object? get/any 'item in item word output: insert/only output get/any in item word ]] either into [output] [head output] ] | |
BrianH: 13-Feb-2009 | I apologize, ACCUMULATE is whichever version of fold that starts at the beginning and ends at the end of series (left? right?). | |
Henrik: 24-Mar-2009 | Consider if we had a COUNTER! datatype. The counter would create a series of integers, each holding a separate base. The trick to COUNTER! is that it is a structure that holds more information than just the numbers, but also states, in the same way that a block holds an index or whether a port! is open or closed. First the bad things: - It can be complex and there are many things to consider. Many functions would be affected. Now the good: - This takes all the thinking out of building trivial counters and could greatly simplify it. - It could be used as an any-base converter. - No new functions to add specifically for it. It should be possible to: - Specify as many numbers per counter as we like. - Each number would be within the limits of positive integers and each number would act as an integer! type. - Extract information about which digit is currently counting or which number was last changed. - Extract base information. - Perform basic math (add/subtract). - Perform base conversion for the entire counter. - Perform base conversion between a counter and an integer. A counter would hold four pieces of information: - The base for each number - The numbers themselves - The last changed number as a one-based integer index - The last numbers that were reset at last count as a block of one-based integer indexes The nature of a counter: - It would be a number!. - It would not be a series!. Specifying a counter: - The above four pieces would be specified in order - Each piece is separated by an exclamation mark - Possible to skip pieces by leaving the field empty - Syntax: !<base definition>!<number>!<last changed number>!<last reset numbers> - Counter base alone: !12.14.16 - Counter base with number: !12.14.16!0.0.0 - Counter base with number and last changed number: !12.14.16!0.0.0!3 - Counter base with number and last changed number and last reset indexes: !12.14.16!0.0.0!3![2 1] - Number without base: !!0.0.0 There's more, but it's a little much to write. :-) | |
Henrik: 24-Mar-2009 | Steeve, I'm writing it up now. It's probably possible to do with a series of mezzanines, but it would not be very elegant. | |
Henrik: 24-Mar-2009 | I'm changing my mind on not needing math and it not being a series. Sorry, if that seemed confusing. | |
Maxim: 2-Apr-2009 | the fun things with rebol is that we could potentially have series type accessors (insert, copy, pick, etc.) | |
Geomol: 8-Apr-2009 | The lowers levels should then have been tested better, before going into higher levels. When you fix a bug on a low level now, it could have significal influence on higher levels, so more tests and probably new bugs. Problem is the low levels are hidden from us. Memory problem on OS X concern me a lot. Also today I wanted to do some test on issue! datatype, and get strange results. Like doing: i: # insert i "abc" If low level series handling like this has bugs, then I'm very concerned. | |
Oldes: 8-Apr-2009 | It's clear, that most series related bugs are because of unfinished unicode implementation. | |
Steeve: 8-Apr-2009 | map! is just an optimized merge between blocks and objects, not so urgent to me. But if you don't have vectors, some programs can't be done because of the memory overhead of other series in Rebol | |
BrianH: 10-Apr-2009 | The map! type is not a series, it's more like an object with different inclusion rules. No order, no position. | |
Pekr: 10-Apr-2009 | then object should be a series :-) | |
BrianH: 10-Apr-2009 | Resolve is good for assignment of values in objects to other objects without them having to be in the same order or even have all the same fields. If anything, it makes objects even *less* series-like than they were before :) | |
BrianH: 10-Apr-2009 | READ/text seems like a lock, sorry. You may think that text is just another data format, but it is the *most common* data format, and tends to be processed in large quantities. You say that codecs can be chained, but they currently can't - you can apply them one at a time, with all of the intermediate forms in memory at some point. If we do text the way you ask, then every load of text for processing will have the additional overhead of a full duplicate of the ram and two series moves, plus a few lines of code. READ/text is a shortcut that will save a *lot* of overhead during what may be REBOL's most common operation. | |
Steeve: 27-Apr-2009 | Could it mean that we will store complex data structures (nested series and object without duplicated values, like MOLD do) ? |
801 / 1531 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | [9] | 10 | 11 | 12 | 13 | 14 | 15 | 16 |