World: r3wp
[Rebol School] Rebol School
older newer | first last |
denismx 4-Apr-2006 [85] | (Turing) |
[unknown: 9] 4-Apr-2006 [86] | Sorry, Word nailed me with autospell. |
JaimeVargas 4-Apr-2006 [87] | I will recommend you read the PLT book, or the CTM Book. This introduce a lot of the concepts present in rebol, and you can get a sense on how to programm with series (lists), how to use func are as natural as integers, and how to drive your programs around the data structures, and not around the memory management. |
Anton 4-Apr-2006 [88] | Well, I was just saying that because I think rebol has turned out quite wordy, and evolving fast, so it's more like a natural language. The core natives, actions and ops are evolving more slowly than the mezzanine functions, though. |
JaimeVargas 4-Apr-2006 [89x2] | Important concepts in rebol: |
There is not variables, there are just values, and symbols associated with the values. | |
Anton 4-Apr-2006 [91] | So one aspect you can teach is the difference between op!s action!s and native!s vs function!s. |
denismx 4-Apr-2006 [92x2] | Ok Jaime. Not sure what PLT and CTM stand for though... Core Training Manual? |
Yes, strange concept: variables != symbols | |
JaimeVargas 4-Apr-2006 [94] | The values are typed, but you don't need to declare its type. The type is recognized at parsing time by the literal representation of the value, ie: 1 is integer!, #"a" is a char!, "hello" is a string!, 1x1 is pair!, 1.1.1.2 is tuple! (not a struct!), etc. |
eFishAnt 4-Apr-2006 [95] | very Logo like, Dennis |
denismx 4-Apr-2006 [96] | Hum, Logo like Rebol... yes, maybe. I see the similarity. But why is Logo so much easier to learn? I will think about that. |
JaimeVargas 4-Apr-2006 [97x2] | PLT Book == http://www.htdp.org/ |
CTM Book == http://www.info.ucl.ac.be/~pvr/ | |
denismx 4-Apr-2006 [99] | the one on htdp doesn't seem to be about Rebol...? |
Anton 4-Apr-2006 [100] | Carl Sassenrath said that the heart of rebol is in denotational semantics. So I went and started reading http://www.cis.ksu.edu/~schmidt/text/densem.html and it is true, you can see and understand the roots of rebol better afterwards. |
denismx 4-Apr-2006 [101] | DrScheme? |
eFishAnt 4-Apr-2006 [102] | The part of Logo that works is turtle graphics in Draw. Students get quick results. So they experiement and learn. See Gregg's Logo talk...where REBOL needs more "turtles" |
[unknown: 9] 4-Apr-2006 [103] | It would be cool to build a sort of proto-tree. So you can see where in the tree a word is related. I created a graphic language that effectively had two commands: Draw: at an xy point and Circle: which had center coordinates, radius, angle and divisor. The angle and devisor allowed you to pull an interesting trick. So to make a square, you simply called it with a divisor of 4. this would build a string (block) with 4 pairs. If you wanted a diamond, set the angle to 45. You then passed the string to draw. This may seem like a weird way to do this, but it was perfect for a real time rending system that was interactive. We use this in a draw program like Flash. |
JaimeVargas 4-Apr-2006 [104x3] | Now another concept is that you can make those symbols designate any value at any time. So 1 + 1 == 2 or a: 1 a + 1 == 2 |
So symbols can take place for values, in standard funcs. | |
BTW, The interpreter transform the infix form into a prefix form: 1 + 1 is really + 1 1 | |
eFishAnt 4-Apr-2006 [107] | Anton, Josh and I are planning to visit KSU very soon, what a cooincidence...to teach them how to teach using Predictive CognitionTM. |
Anton 4-Apr-2006 [108] | Forward thinking , you mean ? |
[unknown: 9] 4-Apr-2006 [109] | I missed the KSU....is that Kansas, or Kennesaw?? |
eFishAnt 4-Apr-2006 [110] | Kansas State University. |
JaimeVargas 4-Apr-2006 [111] | Another concepts is that a symbos (kinow in rebol as a word) can have found different forms. |
denismx 4-Apr-2006 [112x2] | downloaded the text on denotational semantics, Anton. Interesting. |
keep on Jaime. Reading... | |
JaimeVargas 4-Apr-2006 [114] | MY-WORD is a symbol and get evualted to the value inmediately. |
Pekr 4-Apr-2006 [115] | interesting talk - why this group is not web-public? :-) |
Anton 4-Apr-2006 [116] | Yeah, it's great. I didn't know much about densem before. |
JaimeVargas 4-Apr-2006 [117x2] | MY-WORD: (notice the colon) is the what is used to bind a word (kind of a C assignment) |
:MY-WORD (notice the colon again) is the another way to access the value imagine it to be get the value, it is useful to get values that will cause evaulation like functions. | |
denismx 4-Apr-2006 [119] | Difference between symbol and variable: A symbol can be of any type and does not get declared. Period. Is that correct? |
JaimeVargas 4-Apr-2006 [120] | Correct. |
denismx 4-Apr-2006 [121x2] | :word word: Like pointers. |
Are they pointers? | |
JaimeVargas 4-Apr-2006 [123] | Rebol is strongly typed dynamic language. While C is strongly typed static language (types are declared). |
[unknown: 9] 4-Apr-2006 [124] | Note: I mentioned the Draw Circle thing, it may have seemed out of contect…but I was thinking about the fact that about two dozen commands were generated from just these two in terms of proto. |
JaimeVargas 4-Apr-2006 [125x2] | There are not pointers in Rebol they are not necessary. |
So all no pointer math here. | |
Anton 4-Apr-2006 [127] | I think Jaime is trying to speak more in the terminology you understand from other languages, but by "symbol" he really should say "word!". |
JaimeVargas 4-Apr-2006 [128] | The interpreter does the memory management for you. |
denismx 4-Apr-2006 [129x2] | Reichart, you are working on defining the paradigm of the language. I think that is the right direction to follow to generate a faster learning map of Rebol. |
No pointer math, like in Java. But maybe they are pointers anyway, of similar. | |
Anton 4-Apr-2006 [131] | Words usually automatically "decay" (in rebol terminology they "reduce") to their associated value (if they have one). |
denismx 4-Apr-2006 [132] | Ok, Anton, word is the word :-) |
JaimeVargas 4-Apr-2006 [133] | On last form is 'MY-WORD (Notice the single quote) it is a way to way to 'quote' a symbol this is useful when doing DATA as CODE. Another major concept in rebol. |
Anton 4-Apr-2006 [134] | If that value is a "hot" one (like a function!) then the get-word syntax (:word) will prevent the evaluation whilst still allowing you to get the value. |
older newer | first last |