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 
> <javascript:>>wrote:
>
>> your comment caused me to be reading this 
>> http://prog21.dadgum.com/134.html
>>   (at least)
>>
>>
>> On Sat, May 18, 2013 at 6:17 PM, Gary Trakhman 
>> <gary.t...@gmail.com<javascript:>
>> > wrote:
>>
>>> Immutability, persistence, closures without a serious garbage collector 
>>> sounds hard.
>>>
>>>
>>> On Sat, May 18, 2013 at 1:09 AM, atkaaz <atk...@gmail.com 
>>> <javascript:>>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<javascript:>
>>>> > 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
>>>>>
>>>>> 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
>>>>>
>>>>> 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/**clojure-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/**clojurescript/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<javascript:>
>>>>> 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 <javascript:>
>>>>> 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+u...@googlegroups.com <javascript:>.
>>>>> 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 clo...@googlegroups.com<javascript:>
>>>> 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 <javascript:>
>>>> 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+u...@googlegroups.com <javascript:>.
>>>> 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 clo...@googlegroups.com<javascript:>
>>> 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 <javascript:>
>>> 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+u...@googlegroups.com <javascript:>.
>>> 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 clo...@googlegroups.com<javascript:>
>> 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 <javascript:>
>> 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+u...@googlegroups.com <javascript:>.
>> 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.


Reply via email to