Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Aug 23 22:24
    9214 updated the wiki
  • Aug 23 15:05

    dockimbel on atomic

    FEAT: adds support for system/a… (compare)

  • Aug 23 13:40

    dockimbel on atomic

    FEAT: improved the implementati… (compare)

  • Aug 23 12:52
    dockimbel commented #3991
  • Aug 23 12:27
    9214 commented #3991
  • Aug 23 12:13
    planetsizecpu commented #3991
  • Aug 23 12:12
    planetsizecpu commented #3991
  • Aug 23 11:18
    dockimbel commented #3991
  • Aug 23 10:14

    qtxie on atomic

    TEST: add some failed cases in … (compare)

  • Aug 23 10:06

    qtxie on atomic

    TESTS: add test for CAS operati… (compare)

  • Aug 23 09:22

    qtxie on atomic

    TESTS: add some tests for atomi… (compare)

  • Aug 22 21:26

    dockimbel on atomic

    FEAT: adds get-word support for… (compare)

  • Aug 22 21:00

    dockimbel on atomic

    FEAT: adds support for system/a… (compare)

  • Aug 22 17:48

    dockimbel on atomic

    FEAT: preliminary support for a… (compare)

  • Aug 22 15:51

    dockimbel on atomic

    FIX: removes some unused local … (compare)

  • Aug 22 15:20

    dockimbel on atomic

    FEAT: adds support for system/c… (compare)

  • Aug 22 10:35
    bitbegin assigned #4004
  • Aug 22 10:35
    bitbegin unassigned #4004
  • Aug 22 10:28
    bitbegin commented #3952
Qingtian
@qtxie
@meijeru AFAIK, no changes in #include.
Qingtian
@qtxie
@rebolek The red compiler use 4 bytes aligned stack on Linux. The libcurl requires 16 bytes alignment as it uses SSE instructions. It doesn't always causes crash because sometimes the stack happens to be 16 bytes aligned. I think that's why we have at least 2 tickets about it but I cannot reproduce it.
Nenad Rakocevic
@dockimbel
@nedzadarek That is very odd. Which version are you using and on which platform? I can't reproduce that with last Red stable:
--== Red 0.6.3 ==-- 
Type HELP for starting information. 

>> probe now/time stats
13:37:40
== 3399680
>> probe now/time stats
13:37:41
== 3399680
>> probe now/time stats
13:37:42
== 3399680
>> probe now/time stats
13:37:43
== 3399680
>> probe now/time stats
13:37:43
== 3399680
>> probe now/time stats
13:37:44
== 3399680
nedzadarek
@nedzadarek
@dockimbel it was unstable (automated build) version:
:point_up: 2 października 2018 15:10
This is why I still use unstable version from: Red for Windows version 0.6.3 built 26-Mar-2018/1:14:22+02:00.
Toomas Vooglaid
@toomasv
On my W10 it grows both on gui-console and on cli, until I recycle, but not as drastically as in @nedzadarek case.
--== Red 0.6.3 ==-- 
Type HELP for starting information. 

>> probe now/time stats
23:15:09
== 2463068
>> probe now/time stats
23:15:11
== 2465536
>> probe now/time stats
23:15:13
== 2468356
>> probe now/time stats
23:15:14
== 2471680
>> probe now/time stats
23:15:15
== 2475508
>> probe now/time stats
23:15:16
== 2479840
>> probe now/time stats
23:15:17
== 2484676
>> probe now/time stats
23:15:18
== 2490016
>> probe now/time stats
23:15:18
== 2495860
>> probe now/time stats
23:15:19
== 2502208
>> probe now/time stats
23:15:20
== 2509060
>> system/build
== make object! [
    date: 2-Oct-2018/23:14:00+03:00
Nenad Rakocevic
@dockimbel
@toomasv That grow is the console output buffer and history block expanding.
Alexander Baggett
@AlexanderBaggett
@lepinekong_twitter , That is exactly how it feels. Like some barrier you can't cross without inside info.
nedzadarek
@nedzadarek
@toomasv you are using GC version, which does not use that much memory as pre-GC version. Could you try it on pre-GC version (I was using Red 0.6.3 for Windows built 16-Sep-2018/7:12:03+02:00 commit #09de884).
Gregg Irwin
@greggirwin
@jaroet @toomasv, I had pasted content from Lucinda, but the Blogger editor munged it horribly. I thought it would be quick to fix, but...Blogger. Sorry you had to see that.
lucindamichele
@lucindamichele
Well, worry not, because I'm about to post it here. :)

Okay, everybody! Hope your week is off to a great start! I’d like to thank everyone who responded on-list and off to our questions about yourselves. It's a big help for us, because our goal is to make Red as responsive to your needs as possible. While our due date has passed, you can still send your responses to myself or Gregg privately, and I can add them to our sheets. Our set of questions is appended at the end of this update.

Last week in Red saw contributions from across the spectrum from our heavy hitters. In the midst of gearing up for Ethereum’s Devcon 4 in Prague at the end of October, a diverse number of elements are getting worked on:

  • @qxtie has added Trezor hardware support to the Red Wallet, in addition to the LedgerX hardware, a goodly chunk of work (see: here) as well as the ability to set up a batch of payments.

  • There is also new support provided for homebrew APIs for fetching balances, for those who DIY. This is still work in progress, but we’ll write it up in detail when it’s ready.

  • There has also been a lot of work done to add bitcoin support to the wallet, but bitcoin is messy, and we're still looking at whether it's worth including.

  • In Red specifically, a number of modifications have been made to work around MacOS issues, and extra attention paid to the GC/recycle facility, with fixes and tests from @dockimbel, @PeterWAWood, and @qxtie.

  • As for new issues, some GUI aberrations have been observed, related to the appearance of checkboxes and buttons. While not blue-screen-of-death critical, they have been flagged as bugs and will be addressed. Cross platform GUIs are hard, which is why so few do them.

  • Also, more cool demos from @toomasv, who built a protototype interactive GUI editor, and demoed it building a little live-code app.

In the community, some great discussion has been transpiring around the issue of Red’s mission: is it, or should it be, for “everyone” as our public-facing documentation states? And many folks have stated that while they generally don’t pay for software themselves, they WOULD be willing to shell out for a comprehensive book volume on the subject of Red. Tell us what you think!

If you will be at Ethereum DevCon 4, or in the general area of Prague during the first week of November, hit up @GreggIrwin or @dockimbel; they will be hosting a small, informal RedCon after the main Ethereum event. We’d love for you to be there.

Those community questions, again:

Do you consider yourself a programmer?

Do you consider yourself a software engineer?

Do you solve business problems with software?

What kind of problems do you solve?

What other languages have you used?

What is your favorite language, and why?

Is "progammer" or "developer" in your job title?

Do you think Red should be for "everyone" (e.g., like Visual Basic)?

Do you want to use Red for real work, or just fun?

What software do you pay for?

Keep the Red light burning!

Toomas Vooglaid
@toomasv

@dockimbel I see, thanks for explanation! Interestingly, in older version it doesn't grow though:

>> probe now/time stats
6:04:59
== 3399680
>> probe now/time stats
6:05:00
== 3399680
>> probe now/time stats
6:05:01
== 3399680
>> probe now/time stats
6:05:02
== 3399680
>> probe now/time stats
6:05:03
== 3399680
>> probe now/time stats
6:05:04
== 3399680
>> probe now/time stats
6:05:04
== 3399680
>> probe now/time stats
6:05:05
== 3399680
>> probe now/time stats
6:05:06
== 3399680
>> system/build
== make object! [
    date: 15-Aug-2018/16:18:40+03:00

@nedzadarek :point_up:

Nenad Rakocevic
@dockimbel

@AlexanderBaggett

@lepinekong_twitter , That is exactly how it feels. Like some barrier you can't cross without inside info.

Could you be more specific about such "barrier(s)"?

Vladimir Vasilyev
@9214
Perhaps it's called "comfort zone".
Rudolf Meijer
@meijeru
FYI: in the specs document I am now describing ports as their development happens. So the skeleton is there, and the flesh will come as and when. This is the first occasion for the specs to be tracking the reality of the implementation in real-time!
Vladimir Vasilyev
@9214

as their development happens

And where does it happen, specifically?

Rudolf Meijer
@meijeru
It is on the other hand not very different from what I did before: describing what is there (and why) without the benefit of anything else than the actual implementation (close reading of the source).
Vladimir Vasilyev
@9214
Ah, I see port-type branch is live.
Rudolf Meijer
@meijeru
Yes, you got it in one :smiley:
Vladimir Vasilyev
@9214
Looks like Red team went with Actors after all.
Rudolf Meijer
@meijeru
Apparently, but there is nothing behind the name so far.
nedzadarek
@nedzadarek
@toomasv so I guess it's win 8.1 problem?
Toomas Vooglaid
@toomasv
@nedzadarek It seems so, but I cannot confirm
Boleslav Březovský
@rebolek
GitHub has made some small changes (or at least one small change) to their API, so it wasn't possible to do gists with my github-v3.red anymore. It's fixed now, so you can do github/make-gist %script.red "Gist description" again, if you're into that kind of thing. There may be other broken functions, but I can't find their changelog, if they have one and don't have time to check rest of it now, so either be patient or report problems, if you encounter any.
GiuseppeChillemi
@GiuseppeChillemi

Is this expected ?
REBOL:

>>>myobj: make object! [afunction: does [afunction2: [one oooo two ttt]]]
>> myobj/afunction
== [one oooo two ttt]
>> myobj/afunction/(afunction2)
== [one oooo two ttt]

RED:

>>>myobj: make object! [afunction: does [afunction2: [one oooo two ttt]]]
>> myobj/afunction
== [one oooo two ttt]
>> myobj/afunction/(afunction2)
*** Script Error: afunction has no refinement called (afunction2)
*** Where: afunction
*** Stack:

>>
Vladimir Vasilyev
@9214
@GiuseppeChillemi is it?
>> o: context [f: does [g: [a b c]]]
>> o/f/(whatever)
== [a b c]
innitheblindsw
@innitheblindsw
i:0
il: length? i
if il = 1 [print rejoin["00" i]]
I need add zeros in the left part of a number.
Vladimir Vasilyev
@9214
@innitheblindsw
>> pad/left/with 1 3 #"0"
== "001"
GiuseppeChillemi
@GiuseppeChillemi

@GiuseppeChillemi is it?

> o: context [f: does [g: [a b c]]]
> o/f/(whatever)
== [a b c]

I have not understood your answer !

innitheblindsw
@innitheblindsw
Thanks @9214
Vladimir Vasilyev
@9214
@GiuseppeChillemi probably because the question is rhetorical - you're asking if buggy R2 functionality should be present in Red.
GiuseppeChillemi
@GiuseppeChillemi
@9214
I have supposed it to be a feature and near to ask to have the same bug in RED !
Vladimir Vasilyev
@9214
Just like that, without any use-cases or well-defined proposal whatsoever?
Gregg Irwin
@greggirwin
@9214, he was asking if it was expected. What we need to do is explain why it is expected.
GiuseppeChillemi
@GiuseppeChillemi

@9214 I am experimenting with paths, as you have read in my recent messages.
I was trying to understand is using (parens) notation around a word in a path could exectute a function and have the result as basis for the next step of the path.

myobj: make object! [afunction: does [afunction2: [one oooo two ttt]]]

I am interested interested into expressing like
myobject/afunction/(afunction2)/two

Returning

[two ttt]

"afunction2" should be exectued

Gregg Irwin
@greggirwin
And it can go in docs, to help others.
GiuseppeChillemi
@GiuseppeChillemi
@9214
the result of "afunction2" shoul be avalable to the next step of the path selection. So, you can select the result with will be [two ttt] in this situation.
Gregg Irwin
@greggirwin
There is a possibility that paren support will be removed from paths. It can be convenient, but comes at a cost in complexity.
Vladimir Vasilyev
@9214
@GiuseppeChillemi that's not how paths work, they alway indexing the first aggregate value. In your example you first indexing myobj, then use a non-existent refinement on afunction, then start to index a "returned" value from that function.
Introducing such "feature" leads to nothing but ambiguity, and paths are already a bit clunky as they are.
GiuseppeChillemi
@GiuseppeChillemi
@greggirwin hope it won't . It is very usefull on for indexing dynamically
Vladimir Vasilyev
@9214
It looks like everyone start to forget that paths are just a convenient, but restricted (on purpose) form of pick and select, most of the time.
GiuseppeChillemi
@GiuseppeChillemi

@9214 Paths actually pick and select but if they pick a function inside an object and I ask for the result to be evaluated using a dedicated syntax, then the next step of the path should receive the result of the evaluation.

Let's suppose double ^ execute functions if found:

myobj: make object! [afunction: does [append: [one oooo ] [two ttt]]]
myobj/^afunction^/two

should return

>>[two ttt]

Think about "afunction" selects from an external SQL source, then the result shouls be availabe to the path for being picked.

More one this:

myobj: make object! [afunction: funct [a b]  [append: [one oooo ] reduce [A B]]]
myobj/^afunction two ttt^/two

should return

>>[two ttt]
GiuseppeChillemi
@GiuseppeChillemi
I have read again what I have written, here is a summary:
Notation like ^^ should switch the data selected from the next step of the path from structured data to the result of the previus step of the path.
Max
@moliad
I understand your idea, but I want to voice my opinion that this kind of syntactic sugar is extremely damaging to any language. C++ is riddled with such special syntax for many mundane things and looking at code using all the new and "advanced" syntax is like programming in brain fuck.
in this special case, the path datatype cannot be lexical analysed since there is no way to know how many arguments the afunction has until runtime. which is why using parens works, because like LISP, you manually set the arity of the expression
Red is not an object oriented language (beyond datatypes), so paths are not an intrinsic pattern like they would be if it where the case.
Max
@moliad
sorry for the intrusion... discussion of ideas is always a good idea... I just wanted to put a little opposition so it doesn't look like a unanimously wanted idea :smirk: