<div dir="ltr">Thanks for the tips :)<br><div><div class="gmail_extra"><br><br><div class="gmail_quote">2013/7/24 John Ribe <span dir="ltr"><<a href="mailto:john@johnribe.com" target="_blank">john@johnribe.com</a>></span><br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br><tt><font>Amirouche,</font></tt>
<br><tt><font>I will give you a few of my opinions.</font></tt>
<br>
<br><tt><font>I learned scheme in 1986 using the TI PC Scheme interpreter.
 I read R3RS which seemed like a really well written and clear document,
but I could not quite figure out how to actually use it.  And then
by chance I stumbled upon the book "Structure and Interpretation of
Computer Programs" -- that was the missing piece that let me put it
all together.  It is an old book now but I still highly recommend
it.  It was written as an introductory programming textbook and I
was surprised how useful I found it because I regarded myself as a pretty
experienced programmer at that time (and I had taken college level computer
science courses).  A bonus is that the text is now available free
on the web and there is a set of video lectures also available free presented
by one of the books authors.  I think the R5RS is still a pretty readable
document, don't go near the later RXRS specs until you feel you have a
real mastery of scheme.</font></tt>
<br>
<br><tt><font>The book: <a href="http://mitpress.mit.edu/sicp/" target="_blank">http://mitpress.mit.edu/sicp/</a></font></tt>
<br>
<br><tt><font>The video lectures: <a href="http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-001-structure-and-interpretation-of-computer-programs-spring-2005/video-lectures/" target="_blank">http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-001-structure-and-interpretation-of-computer-programs-spring-2005/video-lectures/</a></font></tt>
<br>
<br><tt><font>Maybe I am a stupid dinosaur, but I have always thought
that object oriented languages seem to obfuscate programs by introducing
an absurd amount of what I call "ceremony" (as in:  "Hello
Mr Compiler.  Allow me to introduce you to my friend Variable X who
will be used for such and such values and will be stored as a member of
Object Z over here...).  So I agree completely with you "</font></tt><font size="3">I
came to Scheme and Gambit for its simplicity/minimalism, expressiveness,
wisdom and also speed. </font><tt><font>"  </font></tt>
<br>
<br><tt><font>The reason I learned scheme in the first place was
because I wanted to write a DSL that could be run in an interpretive environment.
 It was a good choice for me but I will relate this to you:  over
the course of several iterations my DSL became less and less of a DSL.
 I eventually decided the effort of doing a DSL was a waste and instead
decided that the people I wanted to share the program with would just have
to learn to live with parenthesis.  The final documentation I wrote
presents it to users as a DSL that uses a lisp like syntax, but in fact
it is nothing more that a collection of top level variable definitions,
procedures, and macros written in Scheme -- consider it.</font></tt>
<br><tt><font>     </font></tt>
<br><tt><font>John Ribe<br>
John Ribe Consulting LLC<br>
email: <a href="mailto:john@johnribe.com" target="_blank">john@johnribe.com</a><br>
office: <a href="tel:630%20517%205040" value="+16305175040" target="_blank">630 517 5040</a><br>
cell: <a href="tel:214%20532%209862" value="+12145329862" target="_blank">214 532 9862</a><br>
skype: john.ribe<br>
linkedin profile: <a href="http://www.linkedin.com/in/johnribe" target="_blank">http://www.linkedin.com/in/johnribe</a><br>
</font></tt>
<br>
<br>
<br>
<p></p><table width="100%">
<tbody><tr valign="top">
<td width="40%"><font face="sans-serif" size="1"><b>Amirouche Boubekki <<a href="mailto:amirouche.boubekki@gmail.com" target="_blank">amirouche.boubekki@gmail.com</a>></b>
</font>
<br><font face="sans-serif" size="1">Sent by: <a href="mailto:gambit-list-bounces@iro.umontreal.ca" target="_blank">gambit-list-bounces@iro.umontreal.ca</a></font>
<p><font face="sans-serif" size="1">07/23/2013 06:37 PM</font>
</p></td><td width="59%">
<table width="100%">
<tbody><tr valign="top">
<td>
<div align="right"><font face="sans-serif" size="1">To</font></div>
</td><td><font face="sans-serif" size="1"><a href="mailto:gambit-list@iro.umontreal.ca" target="_blank">gambit-list@iro.umontreal.ca</a></font>
</td></tr><tr valign="top">
<td>
<div align="right"><font face="sans-serif" size="1">cc</font></div>
</td><td>
</td></tr><tr valign="top">
<td>
<div align="right"><font face="sans-serif" size="1">Subject</font></div>
</td><td><font face="sans-serif" size="1">[gambit-list] New user (& Questions)</font></td></tr></tbody></table>
<br>
<table>
<tbody><tr valign="top">
<td>
</td><td></td></tr></tbody></table>
<br></td></tr></tbody></table>
<br>
<br>
<br><font size="3">Héllo,<br>
</font>
<br><font size="3">A new user here, my name is Amirouche, I go by this name
from the beginning of my life which is probably a short period of time
but certainly not too much.<br>
</font>
<br><font size="3">I define myself has being primarly a Python dev. I do
web (or related and sometimes silly) things but that's not what pays the
bills.<br>
</font>
<br><font size="3">I came to Scheme and Gambit for its simplicity/minimalism,
expressiveness, wisdom and also speed. <br>
<br>
Actually what triggered the need to try a LISP is a problem I encountered.
I needed (or wanted) to keep the number of Python objects to a minimum
while still maintaining maintainability and readability. But the thing
is I'm jailed in the Python class system. I find myself fighting it to
have the user API I want while still providing a clear inner architecture.
For that matter, I use, so-called, advanced patterns like metaclasses and
data descriptors which basically reduce maintainability because Python
user seldom use them. Being less maintainable also means it's less pratical.<br>
</font>
<br><font size="3">What I believe is that LISP-like languages are easier
to build DSL while still keeping the concepts and code pratical. I'm not
sure how much this is True. That said, I also believe, the reason why LISP-like
languages were forgotten from the industry is because every project is
a new language, I don't know how much True this is either. I also assume
that LISP coming from academia, is though to not be pragmatic. Python being
in-between has a privileged position.<br>
</font>
<br><font size="3">Scheme having a small core, makes it I think more practical
than LISP, somewhat easy to learn like Python. While still, making it possible
to express problems and solutions in a clear, concise and efficient way.
That said Scheme and Gambit in particular lakes documentation, except if
SFRI are the documentation...<br>
<br>
Those are all assumptions that I want to check.<br>
</font>
<br><font size="3">Anyway, <br>
<br>
I tried to build Black Hole but it failed, I filled </font><a href="https://github.com/pereckerdal/blackhole/issues/50" target="_blank"><font color="blue" size="3"><u>an
issue</u></font></a><font size="3">.<br>
</font>
<br><font size="3">Is there any procedure reference page I can read ? or
is it the R5RS ?</font>
<br>
<br><font size="3">See you around,<br>
</font>
<br><font size="3">Amirouche</font><tt><font>_______________________________________________<br>
Gambit-list mailing list<br>
<a href="mailto:Gambit-list@iro.umontreal.ca" target="_blank">Gambit-list@iro.umontreal.ca</a><br>
<a href="https://webmail.iro.umontreal.ca/mailman/listinfo/gambit-list" target="_blank">https://webmail.iro.umontreal.ca/mailman/listinfo/gambit-list</a><br>
</font></tt>
<br></blockquote></div><br></div></div></div>