r3wp [groups: 83 posts: 189283]
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

World: r3wp

[Rebol School] Rebol School

Pekr
4-Apr-2006
[71x2]
that is the set of proto functions - those string manipulation functions 
- you do use them everywhere ... even in graphics ... you have face, 
which has pane (container), and you insert, append, find, replace 
another gui elements, and then you call 'show ...
series and its operations everywhere ... that is how I would start 
....
JaimeVargas
4-Apr-2006
[73]
denismx, are you new to programming?
denismx
4-Apr-2006
[74x3]
Interesting, Pekr. I will keep that in mind when opening up the docs 
soon again.
No JaimeVargas. I teach programming to beginners (18 year old and 
+) in Science. I teach C++. A long time ago, I was a programmer: 
Cobol, RGP, assembler on the IBM 370.
Oh, and Fortran also.
Anton
4-Apr-2006
[77]
Denis, I am not sure there is a shortcut to learning the philosophy 
or way of any language. A person simply has to read and write in 
that language a lot before the way is realised. Having said that, 
Carl Sassenrath wrote a long time ago a ten-point summary of rebol, 
which, being so short, had to be more philosophical, I think. Now 
to remember where that might be...
denismx
4-Apr-2006
[78]
But, my skills are getting rusty.
[unknown: 9]
4-Apr-2006
[79]
For example:



Find | Select | Pick | First | Second | Third | Forth | Fifth | and 
Sixth are all really the same command:


If you picture a master command with lots of settings (refinements) 
and even some conditional code (if refinement set, do x).
JaimeVargas
4-Apr-2006
[80]
Ok. So moslty imperative programming languages. To get the gist of 
rebol I think you need to study a bit of the functional approach.
Anton
4-Apr-2006
[81]
But, ok, you are looking for good resources. Fair enough.
denismx
4-Apr-2006
[82x2]
Anton, when you teach languages, you HAVE TO find the best way to 
do it. And there ARE bad ways...
well, I know and have written small programs in Prolog too.
[unknown: 9]
4-Apr-2006
[84]
All languages are a giant state machine, as matter of fact all computing 
is. The basic op is NAND. ;-)


True, in a Turning sort of way.  But I think Rebol is more so that 
C for example, where variables are forgotten, and functions tend 
not to have memory.
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.