World: r3wp
[Rebol School] Rebol School
older newer | first last |
james_nak 4-Apr-2006 [152] | Should anyone mention that Rebol is very addictive? It may be too late for denismx. |
[unknown: 9] 4-Apr-2006 [153] | : ) |
Anton 4-Apr-2006 [154] | As far as I understand, rebol is written in C, incidentally. |
[unknown: 9] 4-Apr-2006 [155] | Shhhhhhhhhhhhhh.......................first one is free. |
james_nak 4-Apr-2006 [156] | LOL |
eFishAnt 4-Apr-2006 [157] | The reason that University of Uppsula in Sweden teaches Scheme first (and Grinnel College as well) is that you don't learn the bad habits of C/C++ and you learn the process of abstraction, and the beauty of elegance, and purer algorithms. |
Pekr 4-Apr-2006 [158] | web su.ks ... just tinkering with css, html, and all that MLs, which do give you different results in different interpreters, ehm, browsers :-) |
james_nak 4-Apr-2006 [159] | R, and you call it "SafeWorlds!" |
eFishAnt 4-Apr-2006 [160] | Once they discover REBOL, they will move to it. |
JaimeVargas 4-Apr-2006 [161] | Because C is a good abstraction of current hardware architectues. (It is a just bit better than assembly). |
denismx 4-Apr-2006 [162] | I've given up on web dev about 10 years ago. Used to teach it then. |
eFishAnt 4-Apr-2006 [163] | james: LOL |
Thør 4-Apr-2006 [164] | and to I've just been "reintroduced" to web dev... |
denismx 4-Apr-2006 [165] | Still in constant contact with one of my students of that period. He's become quite an expert at web dev . I ask him when I need something ;-0 |
eFishAnt 4-Apr-2006 [166] | heuristics. If you had taught him REBOL, just think where he would be today. You could ask him anything. |
Thør 4-Apr-2006 [167] | to I've -> to think I've |
Pekr 4-Apr-2006 [168] | part of my jog nowadays is get into XML, XSLT and that stuff ... we just upgraded SAP, and it generates some docs for us, which are ok in IE, not in FF (totally screwed) and on friday I visit IBM to see XForms and I will ask those guys, if it makes sense to go that route ... it seems like going to hell ... :-) |
JaimeVargas 4-Apr-2006 [169] | denismx I really recommend you to read at least the free chapter of the CTM Book http://mitpress.mit.edu/books/chapters/0262220695chap1.pdf |
denismx 4-Apr-2006 [170] | I'm addicted to Rebol since a few years back in fact. But never got to the point of the newcomer stage in the learning process. One excuse: to many distractions elswhere. |
eFishAnt 4-Apr-2006 [171] | no prob. REBOL is more than 20 years ahead of its time. If it takes you 5 years, you are still way ahead of the crowd. |
denismx 4-Apr-2006 [172] | eFish... that's my plan: to learn just enough to start teaching it. Then I'll actually start learning it, in fact ;-) |
Pekr 4-Apr-2006 [173] | eFishAnt - I always liked your optimism :-) |
JaimeVargas 4-Apr-2006 [174] | If I had time I will translate the examples there to Rebol. Maybe you can do that while you learn. I can help you. My first attemp was to make the Class Factory from the book. I got it. However Oz the language of the book has bit better security than Rebol. But any how I was able to do this and in the process I learn a lot of good programming techniques. |
[unknown: 9] 4-Apr-2006 [175] | Pekr, given your level, what is there to learn in XML. "you" site down for 1 hour, read about, furrow your eyebrow, and your done. |
denismx 4-Apr-2006 [176] | Ok, Jaime... will read that chapter. |
Pekr 4-Apr-2006 [177] | hmm, maybe I should start thinking working for guys like IBM, and infect them from the inside :-) they are technology open-minded .... |
[unknown: 9] 4-Apr-2006 [178] | Denis, this might be so obviouse that no one mentions it............but AltME is written 100% in Rebol, as is our massive online site Qtask. |
Pekr 4-Apr-2006 [179] | Reichart - have you ever looked into stuff like transformations? If XML was all that easy as you suggest, how is that we don't have proper SAX or DOM parser in rebol - those supporting libs are sometimes larger than Core itself - I wonder, if it was intention of its creators ...... |
denismx 4-Apr-2006 [180] | Yes I knew altme was 100% Rebol. Don't know about Qtask though. |
Pekr 4-Apr-2006 [181] | Qtask is not 100% in rebol, but it is 100% rebol inspired :-) |
[unknown: 9] 4-Apr-2006 [182] | Qtask is not 100% Rebol? |
denismx 4-Apr-2006 [183] | well, wife is calling for dinner (EST here). Will check back later. Very usefull discussion. Tks for all the help. Very encouraging. Lots of reading to do! :-) |
Pekr 4-Apr-2006 [184x2] | Reichart - it uses html, so no? |
have a good dinner! | |
[unknown: 9] 4-Apr-2006 [186] | Used HTML, no, it renders "to" HTML. |
Pekr 4-Apr-2006 [187] | time to move home too .... 18:30 here, enough of "work" |
[unknown: 9] 4-Apr-2006 [188x2] | It also renders JavaScript, and XML, and CSV, and SMS, and Email, etc. |
But Rebol does the rednering. | |
Pekr 4-Apr-2006 [190] | yes, I always see html as a "presentation" layer .... one of them ... |
[unknown: 9] 4-Apr-2006 [191x4] | We do too. |
An annoying one at that. | |
Would much rather render to RebGUI for example. | |
When Rebol.plugin works on all browsers, that would become a reality. | |
Pekr 4-Apr-2006 [195x2] | btw - do you know what Carl means by "browser integration" project he mentioned ? |
is that plug-in related? or something else? | |
[unknown: 9] 4-Apr-2006 [197] | Hmmm, I will assume plugin related, but in fact I don't know. I will ask him at some point. |
Pekr 4-Apr-2006 [198] | ok, thanks ..... |
yeksoon 4-Apr-2006 [199] | On Rebol plugin. Opera 9 (still in beta) have a nice way of implementing their version of widgets. Technically, it is no breakthrough. But, the way they place the 'Opera Widgets' is similar Mac's dashboard. The 'Opera Widget' tab' will sit on top of your desktop so long as Opera is loaded. So, even if you have FF open, etc, there will still be this litte tab on your 'title bar'. Clicking it will show the various widgets you have. I would think if Rebol could be integrated with the browser in this way...it will be a plus point. Opera test builds can be obtained at http://my.opera.com/desktopteam/ |
Thør 4-Apr-2006 [200] | manual resync... |
BrianH 4-Apr-2006 [201] | denismx, when I've taught REBOL to people, even people who are already familiar with other programming languages, it has been helpful to make the distinction between the REBOL language and the dialect engines. REBOL is really a data model and related syntax, and a bundle of library functions that manipulate data in this model. A dialect is really a semantic model for interpreting this data, like what people think of as a language in real life. A dialect engine is a set of library functions that think of the data in the same way - I know this sounds anthropomorphic, but it makes it easier to explain REBOL if you think of the different dialect engines as entities that are acting on a set of commands you are giving them. You can even use role playing to demonstrate this, having one of your students act out the part. It also helps to name each of these models after the main function that implements them - otherwise people might not get the distinction between them and REBOL as a whole. There are some functions that only deal with the REBOL data model and don't really do anything with the data other than translate it from or to some concrete syntax. It is best to group these functions by the syntax they implement - the group that implements what people normally think of as the REBOL syntax is LOAD, SAVE and MOLD. When teaching REBOL dialects I usually start with what I call the DO engine, what people normally think of as the REBOL language. DO is a stack machine like Forth, but it uses a prefix syntax to make it easier to use (by making DO dialect code more resemble that in other programming languages). DO also does a simple swapping hack to implement inline operators, which you will have to demonstrate so that your students will understand DO's operator precedence or lack thereof. DO always works on REBOL data: If you pass it a string or file that contains REBOL syntax code, DO will call LOAD to convert it to REBOL data - this is an important distinction to make so that your students can distinguish between the data and the processor of that data. There are many functions that depend on DO to interpret their blocks of "code", such as IF, WHILE, FOR, etc. It is important to note that these are just functions, not "syntax". DO's only syntax is the predefined operators that DO swaps (these are effectively keywords because of how the swap is implemented), the word/set-word/get-word difference, the interpretation of paths and the precedence of parens. Everything else is a function. There is also the PARSE engine, a rule-based recursive-decent parser with limited backtracking, that implements three dialects (simple parse, string parse and block parse). These dialects actually have keywords, as well as an entirely different execution model. Also, there is the View engine, which implements the LAYOUT and DRAW dialects. Refering to these engines as state machines isn't helpful, because the distinctions between their execution models, or whether they even have execution models, is important for distinguishing between them. You need to use the higher-level terms like stack machine, composition engine and such. I hope this helps! |
older newer | first last |