Archived messages from: gitter.im/red/docs from year: 2017

dockimbel
09:44FYI, I'm currently finishing converting the MD docs to Asciidoc format.

dockimbel
13:12https://twitter.com/red_lang/status/817720495214727168
13:13Big thank to @Tovim for doing the preliminary prototyping and conversion of MD files to asciidoc.
13:20I didn't succeed in moving the styles/ folder at root level, I get a gitbook build error in such case: https://www.gitbook.com/book/dockimbel/red/build/5870e67ae9f3981100ae4d59
13:21Last thing, I find this [online Asciidoc editor](https://asciidoclive.com) very helpful when writing/testing new docs.

meijeru
16:54Welcome to the libRed documentation. Are we also going to get libRedRT documentation at a certain point, or perhaps a more systematic guide to using the various toolchain options?

meijeru
09:19@dockimbel I did a quick check of the libRed doc table of contents. The following are implemented but not described: redSetEncoding, redOpenLogFile, redCloseLogFile, redVString, redVFormError. Furthermore, file %libRed.def overlaps with the #export directive in %libRed.red, *except* that redUnset(), redPair(), redMold() are not in %libRed.def.
dockimbel
09:27@meijeru Thanks. I forgot to update %libRed.def.
meijeru
09:29What is its use anyway??
dockimbel
09:30It's required for generating the libRed.lib file for Windows platform (it's VisualStudio-specific).
meijeru
09:30Pity for the double work, which -- as is shown -- may lead to inconsistencies.
09:31Could you not generate the .def file from the .red file?
dockimbel
09:33Yes, but it might be overkill, it is just a copy/paste of the #export list. Though, maybe a smart Red macro could do the job... ;-)
10:06> Are we also going to get libRedRT documentation at a certain point, or perhaps a more systematic guide to using the various toolchain options?

I was planning to document that in the blog release article, though, I might add a section in the docs about the toolchain anyway.
meijeru
16:14@dockimbel Trying to understand more of libRed: why is %libRed.red a .red file, when all the code it contains is enclosed in #system [...]?
16:21Another question: why are such useful series manipulation actions like at, next and backnot implemented?

dockimbel
09:09@meijeru
> why is %libRed.red a .red file?

Because it needs to include the Red runtime library and Red modules (like View), which contain Red code.
09:16About your second question, the libRed API aims at being a simple glue for integrating Red into a host language/software. redCall can call any functions already, so the provided actions wrappers are just shortcut for the actions we think will be the most used. So redSkip already provides a navigation function, adding more brings no visible advantage to the user.
meijeru
09:23OK Thanks.
21:31I was perusing the Gitbook and saw in the section on Reactive programming the following paragraph which I think has some formatting errors (and also a superfluous word by):
A reaction is removed by with the /unlink refinement and with one of the
following as a <source> argument: * The 'all word, will remove all 
reactive relations created by the reaction. * An object value, will remove 
only relations where that object is the reactive source. * A list of objects, 
will remove only relations where those objects are the reactive source.

21:33The bullet items haven't come out right, I think...

dockimbel
03:24@meijeru Thanks, it should be fixed now.
meijeru
07:54It looks fixed if you see it in the /docs repository itself, but the Gitbook is either not updated or it displays it differently (stilll no bullets).
dockimbel
08:04The gitbook builds are failing since this one: https://www.gitbook.com/book/dockimbel/red/build/5878ab21e2f7511100a6bdb5
meijeru
08:39Is this a question of .md/.adoc incompatibility perhaps?
dockimbel
08:40It looks like a gitbook's processor bug to me, as it tries to interpret asciidoc tags from quoted text.
08:53I had to cripple my code example to make it pass the build... :sweat:
meijeru
09:38I see! The inlined text in fixed-width font seems a bit small relative to the surrounding text? Is that configurable?
dockimbel
09:40It should through CSS (en/styles/website.css).

meijeru
14:22I notice some inconsistencies in the latest format changes: use of underscores vs. use of backticks
==== redLogic()
----
red_logic redLogic(long logic)
----
Returns an _logic!_ value. A _logic_ value of `0` gives a `false` value, all other values give a `true`.

==== redInteger()
----
red_integer redInteger(long number)
----
Returns an `integer!` value from _number_.

14:24Also: *an* logic! value sould be *a* logic! value

dockimbel
08:17Thanks, those typos will be fixed in next commit.

PeterWAWood
23:30@dockimbel I am taking a quick look at the LibRed docs and came across:

"Ability to set/get a word's value from global or a local context."

Reading it pedantically, you could take that to mean that you can get and set words in the local context of a function. (I'm assuming that it is not possible to access a function's local context even with LibRed).
23:32Is it okay to change it to:
"Ability to set/get a word's value from the global or an object's context."
23:53@dockimbel If you call redOpen() a second time from a host program will the Red be re-initialised and all prior data lost?
23:54I'd like to add a note to the docs to state whether it does or not.

PeterWAWood
00:04A question about redCall(). If the function requires no arguments, do you still need to pass
null
or
0
to signify the end of the function argument list.


redCall(redWord("f"))
or
redCall(redWord("f"), redInteger(0))
?
00:12Also, should the
null
or
0
be C values or Red ones?

DideC
08:45(AFAIK, Doc is in France this week, so probably mostly offline).

Tovim
19:32@dockimbel :point_up: [December 30, 2016 4:16 PM](https://gitter.im/red/docs?at=58667a48c02c1a3959cc0a8b) Hi, I am sorry for my belated response. The md-to-adoc conversion I made with the Notebook++ and the AscidocFX editors. Now, I have unified the formatting of translated texts with the english origin and put them into the new repo at the github.com/Tovim/docs page, where you can take them. Also, you can see it at https://tovim.gitbooks.io/docs. I would suggest to remove the README.adoc[Ownership System] link in en/SUMMARY.adoc to the end of the list, which will simplify the bottom-arrow navigation as you can see in the Czech version. The double language en/cs fork is still a little smut in the face of the nice red-docs presentation.

dockimbel
10:19@Tovim Thanks, I have improved that and added more fixes. Are you referring to the en/cs front page? I'm not sure how we can improve it, as it seems the LANGS.adoc file support limited features...?
10:20@PeterWAWood Thanks for the edits, I added mines too. You need to pass a 0 or null value to mark the ending of an arguments list.
PeterWAWood
10:45@dockimbel Do you pass
redInteger(0)
or
0
?

dockimbel
10:44@PeterWAWood 0.
PeterWAWood
10:46Thanks.

Tovim
20:17Hello, I have translated libred.adoc and updated SUMMARY.adoc files, see the https://github.com/Tovim/docs page. Best wishes.

dockimbel
11:31@Tovim Great work! Could you submit a PR for that on red/docs?
greggirwin
20:07+1 @Tovim!

Tovim
20:59Sorry, just made it.

dockimbel
04:59Merged, thanks!

Tovim
18:18Hello, I have updated the czech version of the post 0.6.2 documentation. PR sent.
pekr
18:27@Tovim I don't want to be harsh, but your translation of facebeing piškot(sponge cake) is imo just absurd and it makes me crazy each time I face it.
18:28I already tried to explain to you, that face is simply a face, and R2 had even related "feel" aspects. I really can't understand why have you decided for such a translation?
18:29Maybe this is more a general question. We have not seen much translations in the Rebol ecosystem in the past. Would you translate and extensively use terms as face?
18:30For me, personally, I would probably go in a reverse mode - use original english term and with the first mention I would provide the translation in a parens face (tvář)and since then I would probably use the original term.
18:31Because - where do we stop? Do we trasnate draw, shape, etc. and use it across our docs?
greggirwin
18:54If terms have a specific, technical meaning, they should probably not be translated. Sort of like "food" having a translation in all languages, "hamburger" having adaptations, and "Big Mac" always being the same.

iArnold
07:09If the term face will be consistantly translated that would be wrong. It is a technical term one will see used in docs other languages so leave it untranslated so readers become familiar with the term. Rather give one detailed explanation of the used term when introduced. "'Face is the term you can think of it as the visible presence of a widget in a window, like the face of a person on a group photo" (<-- that is probably very incorrect ) as long as it is giving the reader a clear idea to work from I believe that is a much better approach.
pekr
07:30I absolutly agree with your point of view, Gregg and Arnold ...
DideC
11:48@iArnold +10
Tovim
14:13Hi, @pekr , @greggirwin , @iArnold , glad to discuss with you.
Face as a "sponge cake" (piškot) is certainly somewhat outrageous, I admit. Maybe I am wrong - the Red term face (short or interface) is what in some other languages is named as a "widget". Widget is a funny (meaningless) word in english but not so in czech.
If a "face" is something like widget in english, why not "piškot" in czech?
I agree with the view that technical terms should be translated with great consideration. I am going to revisit my translations and make corrections where necessary.
@pekr , I´d like to consult my prospective linguistic issues with you, would you agree?
rebolek
14:19I agree that "piškot" for "face" is not very good pick.
pekr
14:44I am open to any discussion in that regard. The quality of translation is really good otherwise and kudoz for that. Let's just not make it a PhD linguistic topic - it should be really mostly practical ...
rebolek
14:50Maybe we should create some Red/Czech channel for this discussion?
greggirwin
16:26Thanks for all your work on this @Tovim. I can't help with the Czech though. :^)
iArnold
19:07This just shows again that translation takes more than Google Translate. I'll leave the best Czech translations up to the specialists here. But this issue in itself is also valid for translations to other languages. As long as there are no better places to discuss the details I don't mind you proposing some better alternatives here. Perhaps there is also a wiki where a page can be edited?
20:31@DideC Merci bien!

Tovim
09:19@rebolek +1: Red/Czech channel anywhere would be very nice and useful for me and us. Could you do something about it? Some issues are already at hand.
rebolek
09:23@Tovim I tried to make new room, but without success. Maybe I do not have enough rights, I am not sure, as there was no error, nothing simply happened. @dockimbel could you please make that room for us?
pekr
09:45National channels would be useful even from that point of view, that there might be some users out there, not fluent with English much ... But - who knows, we don't want isolated communities on the other hand ...
PeterWAWood
10:47@pekr @tovim @bolek @Oldes I've opened [red/Czech](https://gitter.im/red/Czech) and added you to it. Ahoj away to your hearts content.
10:53Opps should have been @rebolek.
rebolek
10:53@PeterWAWood thanks!
PeterWAWood
10:57I'l leave the channel to you as I have completely exhausted my Czech vocabulary ... unless paprika is a Czech word :-)
rebolek
11:04It is :) but it comes from Hungarian, I think 😀
pekr
12:23And hnugarian have czech Rak word :-)
12:23Thanks a lot, Peter!
Tovim
14:10Thank you, Peter!

Scaremonger
09:34Morning! Is the github wiki indented for the Red team and developers only, for Beginners, Advanced or for everything? I've been looking at it and there is plenty of room for improvement. If you want this to remain for the Red team only, I could start a Red site for Beginners/Reference guide on Wikia.com instead. I have experience with wikis at work and through Wikia.com for other topics and feel that I have enough experience to contribute to Red in this way. Please let me have you thoughts on this.
dockimbel
09:48@Scaremonger Hi! The wiki is currently informal, we (the Red team) just keep control of the home page for now, the rest is left open to contributors. We haven't decided yet what/how to do with this wiki in the long term. @PeterWAWood @greggirwin might give more info/suggestions about that.
geekyi
12:05@Scaremonger (adding to what doc said)
> Red site for Beginners/Reference guide

there are already some of those, I'm not sure if @mikeparr takes care of red-by-example ?
12:06What is missing is better coordination and more people with free time :p
Scaremonger
12:09@mikeparr: red-by-example is an awesome site: I've been referring to that regularly.
dockimbel
12:42Red-by-example web site is getting better each time I take look at it. ;-)
greggirwin
15:34@Scaremonger, if you don't mind using the github wiki for now, that will keep things in one place, or see if Mike wants to add a wiki area to red-by-example. It's good to have different resources, but it's also a problem when we're still a small community.
15:35I haven't used Wikia to know what the benefits might be, but if the data can be extracted and moved (e.g. plain markdown), it should be pretty easy to repurpose later.
mikeparr
20:32Yes, I still look after Red-by -example. Am putting a lot of the 0.62 words in it, will upload in a week or 2.
Scaremonger
22:34@greggirwin Ok, I'll make a start on it.

Scaremonger
00:26I have compiled all the links that I know about under various headings in a [Sandbox page](https://github.com/red/red/wiki/Sandbox). Any comments?
gltewalt
00:34There's also a twitter feed
00:40And if you want to include Red/System, this is great documentation:
http://static.red-lang.org/
00:40http://static.red-lang.org/red-system-specs-light.html#section-1
00:49@red_lang
00:50Sorry... I'm on mobile at the moment
mikeparr
08:01@Scaremonger Looks good, I'll link back to it from R-B-E in a week or so. Minor point - your link to Red Blog - this link is better: http://redlanguageblog.blogspot.co.uk/?view=flipcard The site is by Arie, not me (I just wrote one article)
angellom1
08:35i am subscribed to your blog mikeparr
Scaremonger
21:38@gltewalt - I've added Red/System under Further Reading and added the Twitter feed under "feeds".
@mikeparr - I've updated the link and author; Please don't link to the Sandbox page. Hopefully the Red Team will approve this to be the new homepage.
greggirwin
22:11Nice work @Scaremonger.
gltewalt
22:14:+1:

dockimbel
04:11@Scaremonger Nice! You can replace the wiki's home page with that new one, it's much better.

9214
15:15Regarding parse documentation and books, [this one](https://www.goodreads.com/book/show/1756599.Parsing_Techniques) comed up in some Lobster article today, has anyone read it?
15:21First edition is available for free [here](https://dickgrune.com/Books/PTAPG_1st_Edition/BookBody.pdf), if anyone wants to skim through, ~300 pages.
greggirwin
16:21Thanks @9214. Always nice to have more resources.
Scaremonger
17:27@dockimbel - Thanks, Just put it live.
iArnold
18:34So, @9214 we can call you Dick from now on?

dockimbel
07:13@Scaremonger :+1:
Tovim
13:30I have run across a little contradiction:
* In red/help, I can read that any-{block!, function!, type!}, default!, immediate!, internal! and scalar! are typesets.
* In Red-by-example (last updated 16. 1. 2017), there are not such typesets.
Which source is correct?
9214
13:40@iArnold what you mean?
rebolek
13:41@Tovim if not sure, see console:
>> ? typeset!
     any-block!      :  make typeset! [block! paren! path! lit-path! set-path! get-path! hash!]
     any-function!   :  make typeset! [native! action! op! function! routine!]
     any-list!       :  make typeset! [block! paren! hash!]
     any-object!     :  make typeset! [object! error!]
     any-path!       :  make typeset! [path! lit-path! set-path! get-path!]
     any-string!     :  make typeset! [string! file! url! tag! email!]
     any-type!       :  make typeset! [datatype! unset! none! logic! block! paren! string! file! url! char! integer! float! word! set-word! lit-word! get-word! refinement! issue! native! action! op! function! path! lit-path! set-path! get-path! routine! bitset! object! typeset! error! vector! hash! pair! percent! tuple! map! binary! time! tag! email! handle! image!]
     any-word!       :  make typeset! [word! set-word! lit-word! get-word! refinement! issue!]
     default!        :  make typeset! [datatype! none! logic! block! paren! string! file! url! char! integer! float! word! set-word! lit-word! get-word! refinement! issue! native! action! op! function! path! lit-path! set-path! get-path! routine! bitset! object! typeset! error! vector! hash! pair! percent! tuple! map! binary! time! tag! email! image!]
     immediate!      :  make typeset! [datatype! none! logic! char! integer! float! word! set-word! lit-word! get-word! refinement! issue! typeset! pair! percent! tuple! time!]
     internal!       :  make typeset! [unset! handle!]
     number!         :  make typeset! [integer! float! percent!]
     scalar!         :  make typeset! [char! integer! float! pair! percent! tuple! time!]
     series!         :  make typeset! [block! paren! string! file! url! path! lit-path! set-path! get-path! vector! hash! binary! tag! email! image!]
typeset! is a datatype! of value: typeset!
Tovim
14:14Thank you
iArnold
14:37@9214 "Ninethousandtwohundredandfourteen" is such a long name.
dockimbel
15:27@Tovim Red/help is correct, those typesets are just not in Red-by-example yet. You could add them there if you want, @mikeparr and @Arie-vw are welcoming contributions.
mikeparr
18:31Updated Red-By-Example with tag!, time! email! and their related functions, plus call.
toomasv
19:15Is this correct hierarchy of basic types (typeset! derivates excluded): https://github.com/toomasv/red-type-hierarchy/blob/master/red-type-hierarhy.pdf
greggirwin
19:17Go RBE, Go!
Scaremonger
19:17@toomasv - That is a very cool diagram.
greggirwin
19:22@toomasv, there are some things in there that don't look right to me. e.g. char is not an integer, binary is not a string, vector is a block, file is not a url, func is not really a context.
19:23Here's what I drafted as text some time back.
any-type! [
		event!
		unset!
		any-function! [native! action! op! function! routine!]
		any-object! [object! error!]
		series! [
			any-block! [
				any-list! [block! paren! hash!]
				any-path! [path! lit-path! set-path! get-path!]
			]
			any-string! [string! file! url! tag! email!]
			binary!
			image!
			vector!
		]
		immediate! [
			any-word! [word! set-word! lit-word! get-word! refinement! issue!]
			scalar! [
				number! [integer! float! percent!]
				char!
				pair!
				tuple!
				time!
			]
			datatype!
			none!
			logic!
			typeset!
		]
	]
toomasv
19:26@greggirwin You start here from derivate types, ie. not basic types.
greggirwin
19:30So you want to show the *implementation* hierarchy. Got it.
19:31For people contributing to Red, not for normal end users.
20:34Yes, very nice.

dockimbel
08:22@toomasv Nice work! Do you have a Draw version of it? ;-) You should make clear that it's an "implementation view" of the type hierarchy, which differs from the "logical view" from user's perspective.
toomasv
11:03Here are both implementation and logical view of typeset hierarchy: https://github.com/toomasv/red-type-hierarchy/blob/master/Red-type-hierarchy2.pdf . I hope I got it all right.
11:06Here is commenting link https://drive.google.com/file/d/0B-TWj5PlEAOTcmRrWlVwbVJJZmc/view?usp=sharing (Seems not working)
11:26@dockimbel Yes, I have a Draw version, but I cannot make it shareable -- Draw complains that it is too big.
9214
12:01@toomasv good job, thank you!
toomasv
12:19@greggirwin It seems you have three types missing here ( :point_up: [April 18, 2017 10:22 PM](https://gitter.im/red/docs?at=58f6676d8e4b63533ddf1f88) ): map!, bitset! and handle! ;).
dockimbel
15:43@toomasv
> Draw complains that it is too big.

How so? How big is your draw content for such graphic?
greggirwin
16:14Thanks @toomasv. Will add those. Your diagram is amazing. Really nice idea on the dual visualization.
toomasv
16:35@dockimbel I use https://www.draw.io and here is svg: https://github.com/toomasv/red-type-hierarchy/blob/master/Red%20datatypes%20hierarhy.svg , in case it is of any use. (Can export pdf, svg, png, jpeg, html, xml and url with binary data. Which one you prefer?) I reordered types by color into more logical groups. Probably can be ordered still better.
@greggirwin Thanks!
BTW On the second diagram point! type is missing. Where should I put it? It is not in any-type!
greggirwin
16:52Point! will be like pair!, but is not implemented yet.
geekyi
17:00So one dimensional, I've wondered what's the 3D extension is for pair?
toomasv
17:01@greggirwin Ok, thanks!
greggirwin
17:01Point! will be the 3 element version of pair!.
geekyi
17:17That's awesome!
19:47@toomasv so you have *draw.io* but not a red native draw version :satisfied: the 2nd diagram is really cool btw
19:57@geekyi takes a peak at @greggirwin's (incomplete? but interesting!) https://github.com/greggirwin/red-formatting/blob/master/formatting-functions.adoc
greggirwin
20:02SHHHhhhhhhh!

dockimbel
06:53There's an internal partial implementation of point! used by Parse engine (to expose some stack slots to users in Parse callbacks), though, it has no literal form, as reusing the pair form would lead to hardly readable values: 453x73235x2345 or 12.3434x3.56722x16533.234.
06:53Actually even allowing decimal values in pair! already leads to hard to read values, IMO.
greggirwin
07:17While I agree that 453x73235x2345 isn't pretty, neither is 732352x534567. Decimals do make it even worse. I'm not sure I want to extend the separator (e.g. 1920_x_1080), but the real question is how often the bad cases come up. 10x12x15 isn't bad. 1x23x456 isn't great. 1234x56x789...but, and this is another consideration, if you look at numbers like this regularly, they may not seem as bad. I can't say. It's a tough call. Need to make that call, though, and say what people *should* use if we don't extend pair.
dockimbel
07:33Small numbers are fine, but as soon you get decimals in, readability drops quickly. That's the reason I haven't implemented decimals support in pairs yet, I wanted to solve that issue first. Though, I should implement it anyway in the next days, as we need it for Draw...
rebolek
07:35Numbers like [17.1018096 50.2095115] will always be not very readable.
pekr
07:36I wonder if there is any other easy to decide solution anyway?
dockimbel
07:36The issue is visually parsing the beginning and end of each number. Having a space separator is the best option in such cases IMO.
pekr
07:36Introducing another type with some other dimension separator, which would make it more readable?
DideC
08:15the only char that could help reading this except space is _, but is 12.3434_3.56722_16533.234 really more readable ? Not sure.
08:15And it does not carry the implicit meaning of x !
dockimbel
08:16Moving this discussion about pair/point syntax in red/red.

toomasv
09:01Is this a mistake in help doc?
>> ? insert
...
ARGUMENTS:
     series   [series! bitset! map!] 
     value   [any-type!] 
...
>> insert #() [a b]
*** Script Error: insert does not allow map! for its series argument
*** Where: insert
9214
14:22Looks like split has some undocumented obscure refinement
>> ? split

USAGE:
      split series dlm

DESCRIPTION:
      Break a string series into pieces using the provided delimiters. 
      split is of type: function! 

ARGUMENTS:
     series   [any-string!] 
     dlm   [string! char! bitset!] 

REFINEMENTS:

>> split/local
*** Script Error: split/local is missing its series argument
*** Where: split
>> split/local "123"
*** Script Error: split/local is missing its dlm argument
*** Where: split
>> split/local "123" space
*** Script Error: split/local is missing its s argument
*** Where: split
>> split/local "123" space 'what
*** Script Error: split/local is missing its num argument
*** Where: split
>> split/local "123" space 'what 1337
== ["123"]
>>
meijeru
14:36@toomasv Indeed; according to the source (the ultimate arbiter) insert is not defined for map! values. You might raise an issue.
9214
14:37@9214 jeez, I'm too sleepy today, just get what /local means :(
meijeru
14:38It is true that one can pre-set local variables by adding the /local refinement to the call, but it is not recommended :smile:
dockimbel
15:23@toomasv help is just extracting the info from functions, it doesn't rely on any document. So, what you see in help's output is what is in the function (try probe :insert). And yes, map! should be excluded.
rebolek
16:47@9214 /local is standard practice to define "local" words. See http://red.qyz.cz/safe-and-persistent-locals.html for some details.
9214
16:47@rebolek I remember your article about it
16:47ah, too late, you edited your comment :D
rebolek
16:48yes, ctrl-v vs cmd-v :)
16:51Anyway, /local is standard refinement as any other, it is just by convention ignored by tools like help.

9214
08:34[DSL Engineering from Markus Voelter](http://voelter.de/data/books/markusvoelter-dslengineering-1.0.pdf), potentially useful parse and dialect -oriented book.
gltewalt
22:48Target for making Red jobs
https://imgur.com/gallery/jeifK
geekyi
22:55How similar is /refinement to the term used [formally](https://en.wikipedia.org/wiki/Refinement_%28computing%29#Refinement_types)?
greggirwin
23:01Only to the extent of clarifying something.

GiuseppeChillemi
09:31Hi Everyone, it is nice to be here !
09:32I see a lot of good work going on !
09:32I have one simple question about RED/GUI
09:33Do we have text tables ?
meijeru
09:41If you mean multi-column ones: not yet! :worried:
pekr
10:00@GiuseppeChillemi actually missing grid widget might be a show stopper for you, if you have DB related apps in mind. We should probably move the discussion to GUI channel. I wonder, how far could we get with custom, even simple R2 VID like list-view attempt ...
GiuseppeChillemi
10:09@pekr I am new here. Where do I find the GUI Channel ?
10:09Found...
greggirwin
10:30Welcome @GiuseppeChillemi !
dockimbel
16:25@gltewalt Thanks, interesting graph indeed.
GiuseppeChillemi
18:56Thanks ! @greggirwin
BlackATTR_twitter
20:51@gltewalt Would be nice for Red to become the littlest language in Big Data.

gltewalt
22:37 https://github.com/gltewalt/red/blob/master/Red-Cloud9.adoc
22:38I don't remember how to submit the doc with git. (Nor is my repo in synch with the official Red repo)
greggirwin
22:59Nice @gltewalt. Thanks for writing that up.
gltewalt
23:00:+1: I hope I did the pull request thingy right
23:00Just stumbled through it. I don't use git enough to remember things. (I did synch repos)

gltewalt
23:32@greggirwin @Scaremonger
https://github.com/red/red/wiki/Install-Red-in-Cloud9-IDE
PeterWAWood
23:33Anybody know why this link doesn't take you to the #include section in the pre-processor doc? https://doc.red-lang.org/en/preprocessor.html#__include
gltewalt
23:38dont know...
greggirwin
23:39@PeterWAWood, your link did, but @gltewalt's did not, for me.
23:40@gltewalt, thanks for putting that in a wiki.
gltewalt
23:41My link was faulty. When I click on the link that @PeterWAWood pasted, it takes me to the page, but doesn't stay at #include
23:51@greggirwin Nenad told me to make a wiki page and notify you with the link

greggirwin
01:40Ah, yes. I thought you did it in the main Red wiki. I'll migrate it over.
gltewalt
01:53I don't think any changes are accepted from non red team there, and I wasn't sure about which section it would fit in
dockimbel
07:44@greggirwin @Scaremonger I let you decide where to put the Cloud9 link on the wiki home page.
07:50@gltewalt I added your link to the web site in http://www.red-lang.org/p/documentation.html
07:51@gltewalt If you can provide me with a nice screenshot or gif-anim (I can't find the one you posted anymore), I would be glad to tweet it with the link to your description.

dockimbel
06:30@gltewalt Sorry to bother you with that, but could you please make one shrinked horizontally, to remove most of the empty space in the middle? Also a high-resolution one is preferrable, so it can be zoomed by readers.
geekyi
20:32@gltewalt can you resize browser window to get rid of empty space without text?
gltewalt
20:33I dunno. Using snipping tool so I'm not sure it applies?
20:43http://i.imgur.com/n15G3Yk.jpg

dockimbel
01:36@gltewalt Thanks, I can crop it more now, no problem.

meijeru
20:29It has occurred to me that the native function construct is without any documentation (docstrings are missing). May we know what it is intended to do?
greggirwin
20:37Makes an object without evaluating the spec. Safe for making objects from untrusted data.

meijeru
07:26I see. And what does the refinement /only do?
greggirwin
07:37Looks like it prevents logic and none words from being reduced:
>> probe construct [state: true value: none]
make object! [
    state: true
    value: none
]
== make object! [
    state: true
    value: none
]
>> probe construct/only [state: true value: none]
make object! [
    state: 'true
    value: 'none
]
== make object! [
    state: 'true
    value: 'none
]
dockimbel
07:40@greggirwin That's easily fixable.
meijeru
08:58If you fix that, what remains the point of having /only?
geekyi
11:21@meijeru
>> ? construct
USAGE:
    CONSTRUCT block /with object

DESCRIPTION:
     Creates an object, but without evaluating its specification.
     CONSTRUCT is a native value.

ARGUMENTS:
     block -- Object specification block (Type: block)

REFINEMENTS:
     /with -- Provide a default base object
         object -- (Type: object)

One of the more useful functions to load options safely: [rebol docs](http://www.rebol.com/docs/words/wconstruct.html)
/only is an addition I didn't know about. Looks like it simply doesn't [reduce](https://github.com/red/red/commit/d2b8caa4121bbb53bdf66ba7bb901fd25ab59414#diff-47bd63b2c65d7245defba4efb9d5e84dR534) logic and none values.
I think maybe doc means there's others that can be added? (I somehow missed Gregg's reply. Does exactly as he says).
meijeru
12:13The help you showed comes from Rebol? It sure doesn't come from Red. If if is correct, may be someone can do a PR to add it...
greggirwin
15:30I have a note to add doc strings to construct. @dockimbel, it's by design (from looking at the code), so nothing to fix. Maybe it was an experiment, hence no docs?
dockimbel
15:52I don't recall precisely how it was implemented, just that it was a minimalist implementation. I don't think we have any tests for it.
greggirwin
15:58/only just suppresses reduction of all the logic words and 'none. I know using construct in R2 was confusing at times, when dealing with loaded data (e.g. config files), where it wasn't clear whether users needed to use lit-word syntax, or just words. I think the default behavior in Red is correct. construct/only doesn't appear to be used anywhere.
dockimbel
16:03@greggirwin It seems it changed a bit in R3, with some limited evaluation by default. Looks like a useful improvement a priori.
greggirwin
16:08Indeed. I didn't check R3. Same there.
meijeru
19:33"construct/only doesn't appear to be used anywhere (in the toolchain I suppose)" I can confirm that with my grep
>> grep/quiet "construct/only" %/C/Projects/Red/sources/
done, checked 206197 lines in 480 files/urls in 3307 msec,
found 0 matches
dander
19:49should also search for construct/with/only too, right? Doesn't look like it shows up either...
meijeru
20:30Indeed!

greggirwin
00:18Good catch @dander. I also just grepped for construct/only.

9214
18:09to @greggirwin and others: when writing wiki articles, you can enable syntax highlighting in code snippets by writing language name after first three backticks (e.g. Red)
greggirwin
18:12Thanks!

eranws
02:11Hello redders, I think I have finally found the right place to share my thoughts in
02:14I have made a small document with mostly links, i can share it here if anyone interested.
rebolek
04:05@eranws of course, share it, please
greggirwin
05:23Yes, please!

eranws
01:39Didn't mean to write an essay... https://docs.google.com/document/d/16BNzdBtaZX1I3D7EOn3cVdQ1WIQTfk7eRgYyjNdDH6w/edit?usp=sharing
01:39@rebolek great articles in your blog! why did you stop?
greggirwin
03:32Good thoughts @eranws. Thanks for posting them.
rebolek
05:59@eranws Thanks! I didn't stop, I will certainly add something new.

koba-yu
12:40Hi, I am now trying to translate Redbin format document to Japanese. At the beginning section, it says "The user interface for Redbin format access will be provided by load/binary and mold/binary".
12:41I guess not "mold/binary" but "write/binary", am I correct?
12:42"mold" seems not to have the refinement.
9214
12:43@koba-yu neither do load
>> ? load
USAGE:
     LOAD source

DESCRIPTION: 
     Returns a value or block of values by reading and evaluating a source. 
     LOAD is a function! value.

ARGUMENTS:
     source       [file! url! string! binary!] 

REFINEMENTS:
     /header      => TBD.
     /all         => Load all values, returns a block. TBD: Don't evaluate Red header.
     /trap        => Load all values, returns [[values] position error].
     /next        => Load the next value only, updates source series word.
        position     [word!] "Word updated with new series position".
     /part        => 
        length       [integer! string!] 
     /into        => Put results in out block, instead of creating a new block.
        out          [block!] "Target block for results".
     /as          => Specify the type of data; use NONE to load as code.
        type         [word! none!] "E.g. json, html, jpeg, png, etc".
koba-yu
12:43Ah...just not implemented yet?
dockimbel
12:44@koba-yu Right, not implemented yet. It will be supported by load/binary, mold/binary and save/binary.
12:46@koba-yu It's great to see someone working on a Japanese translation! :+1: Is it the first part you're translating or, did you already translate some other pages already?
koba-yu
12:46@dockimbel Thank you, I just translate the sentence literally
12:47well, I translate the doc file alphabetically so,
12:48draw, gui, libred, map, overview, ownership, preprocessor, reactivity,readme are done
dockimbel
12:48That's fantastic! :clap: Let me know when you finish, so I can announce it on Twitter!
koba-yu
12:52@dockimbel Thank you! Documents that are not translated yet look tough...They are big pages! but I want to keep tranlsating
dockimbel
12:53@koba-yu Feel free to ask any question about the docs content here.
koba-yu
12:55@dockimbel Thanks. I hope I can understand Red more by translating.

solisoft
07:03H there, I'm following red since few months ... never took time to really use it
07:03I'll try to create a lib for playing with arangodb database
07:04there is a simple RESTful API
rebolek
07:06Hi @solisoft , using REST is easy with Red.
solisoft
07:06yes I saw it and arangodb is working on linux/osx/windows
07:11I moved from osx to linux waiting GTK3 version now :)
koba-yu
15:26@dockimbel Hi, I have just made pull request about Japanese translated documents. If there is something wrong, would you let me know please?
greggirwin
17:45Thanks @koba-yu! Team Red is in deep-code mode for a short time. Maybe @JerryTsai can connect with you at some point. I don't know what other Japanese speakers we have here, to help with reviewing and corrections. If anyone else would like to assist with that, please speak up!
koba-yu
23:23Thank you @greggirwin! deep-coding for next release? It is exciting! As far as I googling, it unfortunately seems we have few Japanese speakers interesting in Red so far...so getting the documents reviewed is a kind of problem. Maybe I should write some Japanese articles to get attentions in Japan.
greggirwin
23:33That would be great @koba-yu. In the meantime, you are our lead Japanese translator! Congratulations!
23:36Not that I have any authority. :^)
koba-yu
23:39@greggirwin Haha, thank you! Your congratulation is enough to get happy! :smile:

geekyi
13:34Regarding https://github.com/red/docs/pull/23#issuecomment-322466373 , would it be good to change all syntax blocks in the docs?
13:35From:
*構文*
----
title <text>

to:
.*構文*
[source,red]
----
title <text>
13:36Looks like the more correct way even from the syntax highlighting here in gitter! :smile:

koba-yu
00:32Thank you @geekyi !
I made test branch on my fork.

https://github.com/koba-yu/docs/blob/work/ja/vid.adoc

It seems work well! My local gitbook by this branch looks ok too.
If this change would be approved, I can do change other language docs, it may not be difficult replacing.
geekyi
07:09More details: :point_left: [August 15, 2017 5:38 PM](https://gitter.im/asciidoctor/asciidoctor?at=5992eb34210ac2692085c46e)
07:10**tl;dr** both use asciidoctor, but gitbook version is older js, github version is correct

koba-yu
12:23Thank you very much for information, @geekyi !
12:28At least Japanese document should be modified. Well...both adding a blank line and use "." can be a solution?(sorry, I could not perfectly understand the conversation between you and Dan)

geekyi
13:31@koba-yu sorry for the late reply, yes, I'd recommend adding ., instead of blank line
13:32[source ..] part is optional, I guess not relevant here as it isn't exactly *Red syntax*
13:33Looks nice tho
koba-yu
14:36@geekyi No problem, I appreciate your help. I would make a pull request for this problem, maybe adding . only for now (I like [source ..] but its purpose is diffrent; not to avoid parser confusion).

maximvl
02:52
s: declare struct! [
   a   [integer!]
   b   [c-string!]
   c   [struct! [d [integer!] e [float!]]]
]
In this example, the struct value has 3 members: a, b, c, each with a different datatype. The c member is a struct! value pointer, it needs to be assigned to a struct value to be used. So a correct initialization for the c member would be:

s/c: declare struct! [d [integer!]]
02:52am I missing something? where did e field of c go?
03:33found a typo here:
>This is most useful with imported C *functiosn* that relies on cdecl convention
9214
05:39:point_up: [19 августа 2017 г., 07:52](https://gitter.im/red/docs?at=5997a7d3210ac269209b6217) http://static.red-lang.org/red-system-specs.html (for quick reference)

mikeparr
08:00Incorrect?? info in official docs on Draw. https://doc.red-lang.org/en/draw.html
It says: draw top-left bottom-right
but it also works with bottom-right to top-left, and top-right to bottom-left etc.

greggirwin
17:28Can you give an example @mikeparr? I'm not clear on what you mean.
mikeparr
18:07This code produces 3 (almost) identically-positioned boxes:
Red [needs 'View]
view[
    canvas: base white 200x200 draw[
     box 0x0 100x100   ;TL  BR
     box 97x97 2x2     ;BR  TL
     box 95x3 0x95     ;TR  BL
    ]
]


greggirwin
18:28Got it. Thanks. We could call them point-1/2. Using an image makes it clear that what is considered TL/BR has a distinct effect:
img: load https://pbs.twimg.com/profile_images/501701094032941056/R-a4YJ5K.png
view [
    canvas: base 200x200 draw [
        image img 100x100 0x0
    ]
]
18:29Imagine you have a physical box, and you mark a corner TL. No matter how you transform or orient the box, the same corner is always marked TL.

mikeparr
07:50I was also thinking about words such as : 'coordinates of a diagonal of the box'. (BTW @greggirwin I noticed the behaviour in your paint code, when creating/dragging a box around.)

mikeparr
08:02I'm looking at the Red Wikipedia page - references.
2. Softwarefreedomday - page is empty.
4. Red Alert - 'Bad Gateway'
5. Devcon 2012 'Bad Gateway'
I'm thinking that the page looks rather old, does not reflect the current Red.

mikeparr
14:54On the Redlang.org Documentation page, the link to
Community-provided learning material:
Parse expressions (Rebol wikibook)
Does not now exist.
9214
15:10@mikeparr it's still on wikibooks, but wiki name was changed by someone from REBOL_Programming to Rebol_programming
15:11[here's new link](https://en.wikibooks.org/wiki/Rebol_programming/Language_Features/Parse/Parse_expressions)
geekyi
15:36Was just about to point that out. Looks like ladislav (started to?) [change it in jan 2016, but was only really moved in August](https://en.wikibooks.org/w/index.php?title=Rebol_programming&action=history&year=2017&month=8&tagfilter=)?
9214
15:38@geekyi yes, I remember that all links in wiki were broken as they pointed to old pages

gltewalt
00:22@greggirwin
https://github.com/red/red/wiki/REBOL-Core-Users-Guide-and-Red

One chapter so far
03:25Two chapters. 3, 4
greggirwin
16:13Wonderful! Thank you @gltewalt !
rebolek
16:19@gltewalt cool!
16:21btw some of the examples will also produce error in Rebol, they are not meant to be run, just to illustrate a point. I.e.: if time > 10:30 [send jim news] etc
gltewalt
19:29Yeah, I pointed that out in one section. Some examples are "For example"
19:58Or I thought that I did. I may have taken that out.

gltewalt
22:21@greggirwin 3, 4, and 6
https://github.com/red/red/wiki/REBOL-Core-Users-Guide-and-Red

Phryxe
04:58That page is empty.
gltewalt
06:41Ahh, changed the title. Fix it when I get home.
07:48https://github.com/red/red/wiki/REBOL-Core-Users-Guide:--A-walkthrough-with-Red
greggirwin
17:56More good work @gltewalt ! In §8.2 the join/append change in the switch example is probably OK, but not exactly the same behavior. That is, join will copy the source each time, while append will modify it.

gltewalt
19:24I'm hoping some of the veterans can make edits if I have things wrong, or if I'm not being clear
greggirwin
20:37I'm not reviewing in deep detail, but will in the future. Getting the foundation there, for later tweaking, is *great*.
gltewalt
21:36Do I skip chapters like 13, 14, 15?
greggirwin
22:01For now, yes. For parse, you can include an entry in the wiki that points to Red parse docs.

greggirwin
18:10https://github.com/red/red/wiki/Reactivity

girliechicago
01:25Hello
greggirwin
01:34Hello @girliechicago.

gltewalt
02:12@greggirwin Might be as far as I go on the Walkthrough with Red document for now. I think it should be added to and/or amended by other reducers, first.
Also, not sure how to make it show up in the list of links on the wiki homepage.
greggirwin
16:36Thanks @gltewalt! I updated the main wiki page.

githubnyn
05:10http://www.red-lang.org/p/getting-started.html on this page the *reference documentation* link is broken

mikeparr
13:06Red-By-Example now has a page on parse:
http://www.red-by-example.org/parse.html
It is aimed at beginners. I'm sure there are errors and misunderstanding in it. Please give me some feedback.
9214
13:42@mikeparr good job! I quickly skimmed through first chapter:
* > The 'parse' facility of Red **provides** helps us
* in your first example, perhaps it should be parse/case? Otherwise, say, c3 will be accepted too
* to be specific, all series! values are parse-able, except for image! and vector!
14:37* > For case-sensitive matching, use the **/trace** refinement.
mikeparr
15:02@9214 /case, of course. Thanks -will fix. And other stuff as well!
greggirwin
19:46Great stuff @mikeparr !

> In fact most of the literal types are recognised.

At the block level, *all* literal types are supported. You are parsing at the value level.

> REBOL users please note...

Maybe include that parse in Red is the same as parse/all in Rebol.

> We block input, things are different

*With* block input, things are different

> §1.8 Also, what it we wanted to change our calculator

Also, what *if* we wanted to change our calculator

> §1.8 Most literal types (e.g. ...

*All* literal types (e.g. ...


- Looks like you have 2 §2.3 entries.
- Not sure about the terms invent and absorb, but will think more about it.
- §2.6 I believe collect and keep are considered keywords, just as copy and set are, even though they have same-named funcs in Red proper.
mikeparr
21:04@greggirwin thanks Gregg - will fix as appropriate. Re 'all types are recognised' I can't get binary - e.g. #2{11110000 1111 0000} to work.

greggirwin
03:44
>> bin: 2#{1111000011110000} 
== #{F0F0}
>> parse reduce [bin] [binary!]
== true
03:46
>> bin:  2#{11110000 11110000} 
== #{F0F0}
>> bin:  2#{11110000 1111 0000} 
*** Syntax Error: invalid binary! at "2#{11110000 1111 0000}"
*** Where: do
*** Stack: load

Red has slightly stricter lexing rules on binary than Rebol. Something to pose to @dockimbel when he comes up for air.
mikeparr
08:23@greggirwin thanks re binary!
10:22@9214 @greggirwin RBE Parse updated. Gregg: 'invent' 'absorb' in section 2.3 now re-worded
ghost~5585eedf15522ed4b3e236ae
12:58Hello. In Getting Started With Red page of http://redprogramming.com, the form word is used a lot of time without explanation.
mikeparr
13:25form - try: http://www.red-by-example.org/#form
ghost~5585eedf15522ed4b3e236ae
13:57Thanks mikeparr
9214
16:43@lkppo learn how to use ? and ?? functions
ghost~5585eedf15522ed4b3e236ae
17:03OK. I will use them. It's just to point a hole in this good doc.

toomasv
18:18There are some typos in examples of binary!:
;base 2, with spaces
red>> #2{11110000 1111 0000}
== "11110000 1111 0000"
;base 64
red>> #64{ffff"}
== {ffff"}

#2{...} should be 2#{...} and #64{...} 64#{...}. Currently == ... shows only string {...}. Correct values for those examples are:
>> 2#{11110000 1111 0000}
*** Syntax Error: invalid binary! at "2#{11110000 1111 0000}"
>> 64#{ffff"}
*** Syntax Error: invalid binary! at {64#{ffff"}}
18:28Actually:
>> 2#{11110000 11110000}
== #{F0F0}
>> 64#{ffff}
== #{7DF7DF}
greggirwin
18:49@toomasv, do you mean on Red-by-example? If so, I think Mike has those on his fix-list already.
toomasv
18:49Yes, it is in Red-by-example

mikeparr
08:37@toomasv Binary - RBE - I will investigate. Thanks

Phryxe
11:11Link to *specification* document about map! datatype on page http://www.red-lang.org/2015/06/054-new-datatypes-exceptions-and-set.html is dead. It's an old page, but might be good if the links work.
greggirwin
17:23Not sure if old blogs will get updated. Maybe the best thing we can do is make sure to point people to https://doc.red-lang.org/ for official docs.

mikeparr
21:53Minor changes/additions done to Red-by-example - rejoin added, popup dialog demos in Vid section.
greggirwin
22:41Cool. Thanks for the update Mike.