thank you very much, my search has lead me to seeking a lisp that could compile to machine code (mainly because i cannot accept the 20-22 sec `lein repl` startup time and eclipse/ccw memory consumptions - so I was hoping for something fast even though the cost is portability and all else)
On Wed, May 22, 2013 at 3:10 PM, Julian <juliangam...@gmail.com> wrote: > One more thought on the broader ideas of LISPy languages and ASM. One of > the versions of Crash Bandicoot was developed in Game Oriented Assembly > LISP (GOAL) - which was a common LISP DSL that generated assembler. > > I recalled this today because Michael Fogus tweeted about it: > https://twitter.com/fogus/status/336865798628966400 > > If you're a hobbyist dabbling in this space then you might find reading > about it interesting and inspiring: > http://en.wikipedia.org/wiki/Game_Oriented_Assembly_Lisp > > http://all-things-andy-gavin.com/2011/03/12/making-crash-bandicoot-gool-part-9/ > > JG > > > On Sunday, 19 May 2013 01:49:43 UTC+10, Gary Trakhman wrote: > >> It's hard to really appreciate java and clojure until you actually write >> some C/C++ or ASM.. I have some minor experience with that stuff, and it >> still haunts me from time to time. >> >> Sometimes we make tradeoffs without knowing we did. By choosing a >> language, or having the choice made for us, we accept a set of abstractions >> as our bottom level of thinking for a problem-space. Only old-timers and >> people that make a point to care about low-level stuff will notice the >> implications of what they're doing along the abstraction stack. People >> with ingrained habits just won't find it easy to think functionally, but >> I'm young and irreverent, so it doesn't bother me :-). >> >> C++ is fun because of all the bolted-on kludges that 'mitigate' these >> problems. You can use operator-overloading on pointer operations to >> perform automatic reference counting, deallocating objects when things that >> point to them go out of scope, but I think implementing a PersistentHashMap >> this way would be very difficult. Also, pretty sure it can't handle cycles. >> >> I guess the point is, I appreciate any effort to understand such issues, >> it's been a useful thing for me to know in the 0.05% of time that knowledge >> is needed. >> >> But, people who don't know just won't be able to get past those problems. >> And, you generally can't easily find a _really_ full-stack guy to glance >> at it for you when it would be useful to have one. >> >> On Sat, May 18, 2013 at 11:24 AM, atkaaz <atk...@gmail.com> wrote: >> >>> your comment caused me to be reading this http://prog21.dadgum.com/134.* >>> *html <http://prog21.dadgum.com/134.html> >>> (at least) >>> >>> >>> On Sat, May 18, 2013 at 6:17 PM, Gary Trakhman <gary.t...@gmail.com>wrote: >>> >>>> Immutability, persistence, closures without a serious garbage collector >>>> sounds hard. >>>> >>>> >>>> On Sat, May 18, 2013 at 1:09 AM, atkaaz <atk...@gmail.com> wrote: >>>> >>>>> Thanks very much everyone! I'm looking into all of those, but >>>>> currently planning to read Julian's pdf. I didn't want to say anything >>>>> until I had something definite, but just letting y'all know that I'm >>>>> considering each recommendation. >>>>> >>>>> >>>>> On Sat, May 18, 2013 at 7:12 AM, Julian <julian...@gmail.com> wrote: >>>>> >>>>>> If you had a hobbyist interest in representing S-expressions in >>>>>> assembler - then you could take a look at the tutorial written by >>>>>> Abdulaziz >>>>>> Ghuloum called "Compilers: Backend to Frontend and Back to Front Again". >>>>>> It >>>>>> used to be available here: http://www.cs.indiana.** >>>>>> edu/~aghuloum/compilers-**tutorial-2006-09-16.pdf<http://www.cs.indiana.edu/~aghuloum/compilers-tutorial-2006-09-16.pdf> >>>>>> >>>>>> I don't know if it available anywhere else on the internet - but I >>>>>> grabbed another copy and put it here: https://sites.google.** >>>>>> com/site/juliangamble/Home/**Compilers%20Tutorial%202006-** >>>>>> 09-16.pdf?attredirects=0&d=1<https://sites.google.com/site/juliangamble/Home/Compilers%20Tutorial%202006-09-16.pdf?attredirects=0&d=1> >>>>>> >>>>>> For a more serious representation of Clojure's persistent data >>>>>> structures, I don't recommend trying to implement them in ASM. >>>>>> >>>>>> Cheers >>>>>> Julian >>>>>> >>>>>> >>>>>> On Friday, 17 May 2013 22:06:45 UTC+10, Alan D. Salewski wrote: >>>>>> >>>>>>> On Fri, May 17, 2013 at 02:10:02PM +0300, atkaaz spake thus: >>>>>>> > Ok, weird question: is there some clojure port on assembler yet? >>>>>>> Even >>>>>>> > if(/especially if) it doesn't have jvm/java/javalibs support >>>>>>> > >>>>>>> > Or should I just check >>>>>>> > https://github.com/clojure/**clo**jure-clr<https://github.com/clojure/clojure-clr>? >>>>>>> > >>>>>>> > I'm mainly interested in low memory footprint and fast startup >>>>>>> times (does >>>>>>> > clojure-clr have that?) >>>>>>> >>>>>>> You may want to check out ClojureScript, too. ClojureScript programs >>>>>>> leveraging nodejs for host interop have fast startup times: >>>>>>> >>>>>>> >>>>>>> https://github.com/clojure/**clo**jurescript/wiki<https://github.com/clojure/clojurescript/wiki> >>>>>>> >>>>>>> -- >>>>>>> ------------------------------****------------------------------****----- >>>>>>> >>>>>>> a l a n d. s a l e w s k i sale...@att.net >>>>>>> 1024D/FA2C3588 EDFA 195F EDF1 0933 1002 6396 7C92 5CB3 FA2C 3588 >>>>>>> ------------------------------****------------------------------****----- >>>>>>> >>>>>>> >>>>>> -- >>>>>> -- >>>>>> You received this message because you are subscribed to the Google >>>>>> Groups "Clojure" group. >>>>>> To post to this group, send email to clo...@googlegroups.com >>>>>> >>>>>> Note that posts from new members are moderated - please be patient >>>>>> with your first post. >>>>>> To unsubscribe from this group, send email to >>>>>> clojure+u...@**googlegroups.com >>>>>> >>>>>> For more options, visit this group at >>>>>> http://groups.google.com/**group/clojure?hl=en<http://groups.google.com/group/clojure?hl=en> >>>>>> --- >>>>>> You received this message because you are subscribed to the Google >>>>>> Groups "Clojure" group. >>>>>> To unsubscribe from this group and stop receiving emails from it, >>>>>> send an email to clojure+u...@**googlegroups.com. >>>>>> >>>>>> For more options, visit >>>>>> https://groups.google.com/**groups/opt_out<https://groups.google.com/groups/opt_out> >>>>>> . >>>>>> >>>>>> >>>>>> >>>>> >>>>> -- >>>>> -- >>>>> You received this message because you are subscribed to the Google >>>>> Groups "Clojure" group. >>>>> To post to this group, send email to clo...@googlegroups.com >>>>> >>>>> Note that posts from new members are moderated - please be patient >>>>> with your first post. >>>>> To unsubscribe from this group, send email to >>>>> clojure+u...@**googlegroups.com >>>>> >>>>> For more options, visit this group at >>>>> http://groups.google.com/**group/clojure?hl=en<http://groups.google.com/group/clojure?hl=en> >>>>> --- >>>>> You received this message because you are subscribed to the Google >>>>> Groups "Clojure" group. >>>>> To unsubscribe from this group and stop receiving emails from it, send >>>>> an email to clojure+u...@**googlegroups.com. >>>>> >>>>> For more options, visit >>>>> https://groups.google.com/**groups/opt_out<https://groups.google.com/groups/opt_out> >>>>> . >>>>> >>>>> >>>>> >>>> >>>> -- >>>> -- >>>> You received this message because you are subscribed to the Google >>>> Groups "Clojure" group. >>>> To post to this group, send email to clo...@googlegroups.com >>>> >>>> Note that posts from new members are moderated - please be patient with >>>> your first post. >>>> To unsubscribe from this group, send email to >>>> clojure+u...@**googlegroups.com >>>> >>>> For more options, visit this group at >>>> http://groups.google.com/**group/clojure?hl=en<http://groups.google.com/group/clojure?hl=en> >>>> --- >>>> You received this message because you are subscribed to the Google >>>> Groups "Clojure" group. >>>> To unsubscribe from this group and stop receiving emails from it, send >>>> an email to clojure+u...@**googlegroups.com. >>>> >>>> For more options, visit >>>> https://groups.google.com/**groups/opt_out<https://groups.google.com/groups/opt_out> >>>> . >>>> >>>> >>>> >>> >>> -- >>> -- >>> You received this message because you are subscribed to the Google >>> Groups "Clojure" group. >>> To post to this group, send email to clo...@googlegroups.com >>> >>> Note that posts from new members are moderated - please be patient with >>> your first post. >>> To unsubscribe from this group, send email to >>> clojure+u...@**googlegroups.com >>> >>> For more options, visit this group at >>> http://groups.google.com/**group/clojure?hl=en<http://groups.google.com/group/clojure?hl=en> >>> --- >>> You received this message because you are subscribed to the Google >>> Groups "Clojure" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to clojure+u...@**googlegroups.com. >>> >>> For more options, visit >>> https://groups.google.com/**groups/opt_out<https://groups.google.com/groups/opt_out> >>> . >>> >>> >>> >> >> -- > -- > You received this message because you are subscribed to the Google > Groups "Clojure" group. > To post to this group, send email to clojure@googlegroups.com > Note that posts from new members are moderated - please be patient with > your first post. > To unsubscribe from this group, send email to > clojure+unsubscr...@googlegroups.com > For more options, visit this group at > http://groups.google.com/group/clojure?hl=en > --- > You received this message because you are subscribed to the Google Groups > "Clojure" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to clojure+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/groups/opt_out. > > > -- -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.