I'm using both: Marginalia for straight docstrings in the source code [1],
lein-midje-doc for TDD in a literate style [2]. Some of the components I
wanted to discuss with others, for example a new design for a Scalar
Encoder [3] (I found and fixed a bug in the algorithm using this approach).

[1] http://fergalbyrne.github.io/uberdoc.html
[2] http://fergalbyrne.github.io/
[3] http://fergalbyrne.github.io/rdse.html

Regards,

Fergal Byrne


On Wed, Apr 9, 2014 at 2:20 PM, Colin Yates <colin.ya...@gmail.com> wrote:

> lein-midje-doc really does look excellent.  I went with marginalia but if
> that had been around at the time I would have jumped on it without a doubt.
>
>
> On Wednesday, 9 April 2014 13:20:51 UTC+1, Fergal Byrne wrote:
>
>> Hi Colin,
>>
>> Cheers. I had exactly the same problem, so I've been trying out a few
>> other ideas. One is to use datalog (or cascalog etc) and represent
>> "objects" with entities and relationships between objects with refs (for
>> datalog). I have some enormous data structures (2-300m synapses per layer,
>> for example) but I find that Datomic and datalog are great for modelling
>> really big and complex structures.
>>
>> There's a datomic wrapper library called adi [1] which adds a nice
>> map-like interface on top of datalog. It's perfect for getting your schema
>> right (you start off with a big map and it automagically does the schema),
>> and you can do some really long link-following, but I'm not using it
>> extensively yet (because everything is data, you can use adi for schema
>> design and some queries, and raw datomic for the rest).
>>
>> I'll be writing extensively about each library or tool I've used on my
>> blog (see sig). I'm writing about lein-midje-doc (also by zcaudate) at the
>> moment, it's just wonderful.
>>
>> [1] https://github.com/zcaudate/adi
>>
>> Regards,
>>
>> Fergal Byrne
>>
>>
>> On Wed, Apr 9, 2014 at 12:22 PM, Colin Yates <colin...@gmail.com> wrote:
>>
>>> Hi Fergal,
>>>
>>> Thanks for those links.  I started using protocols and defrecords but I
>>> (maybe mistakenly) got the impression that they were "frowned upon".  As it
>>> turns out, maps (typically with a :type key) and multi methods go a long
>>> long way, but I still end up with fairly deep nesting of maps.
>>>
>>> Maybe that is the key - deep nesting of maps maybe cries out "one object
>>> [data model] to rule them all" and I need to decompose it further.
>>>
>>> Without types almost all the type hints would be either the map of
>>> sequence interface.  It isn't so much the structure that is obscure, but
>>> the semantics of what that structure is modelling.
>>>
>>> As I hinted at, I am sure it is because my implementation model is still
>>> influenced too much by my OO background.
>>>
>>> Onwards and upwards as they say.
>>>
>>> Col
>>>
>>>
>>> On Wednesday, 9 April 2014 11:37:52 UTC+1, Fergal Byrne wrote:
>>>
>>>> Hi Anthony,
>>>>
>>>> I'm building a fairly large real-world system called Clortex [1], which
>>>> is a rewrite of the Numenta Platform for Intelligent Computing (NuPIC) [2].
>>>> As it's a greenfield project, I've chosen to use Clojure components all the
>>>> way through instead of fitting in with Java-based or .Net-based frameworks.
>>>> There are good reasons why you should do this if you can, but obviously
>>>> that doesn't help you directly with your question.
>>>>
>>>> There are many people introducing Clojure as a component in an existing
>>>> ecosystem, as Colin explains, but usually this is done deep inside a big
>>>> Java or .Net shop, and they're not showing the world the code. One possible
>>>> route would be to see if any of the big Java or CLR Open Source apps are
>>>> looking at doing some subsystems in Clojure.
>>>>
>>>> Colin,
>>>>
>>>> Great to hear your experiences. I'm no expert, but it's likely that you
>>>> could ease much of the pain using protocols, type hints and deftypes or
>>>> records. Also, Typed Clojure [3] is definitely worth looking at.
>>>>
>>>> [1] Clortex will be public on Github shortly, see
>>>> http://fergalbyrne.github.io for docs, http://inbits.com for blog.
>>>>  [2] http://numenta.org
>>>> [3] https://github.com/clojure/core.typed
>>>>
>>>>  Regards,
>>>>
>>>> Fergal Byrne
>>>>
>>>>
>>>>
>>>>
>>>> On Wed, Apr 9, 2014 at 10:18 AM, Aditya Athalye 
>>>> <aditya....@gmail.com>wrote:
>>>>
>>>>> Welcome, Anthony.
>>>>>
>>>>> I'm not aware of complete applications that fit your requirement,
>>>>> however I think you'll find value in the newly-minted Clojure Cookbook
>>>>> http://clojure-cookbook.com/ ... many, many examples of real-world
>>>>> problems,
>>>>> across domains, solved by Clojure practitioners.
>>>>>
>>>>> All the examples and solutions are available here:
>>>>> https://github.com/clojure-cookbook/clojure-cookbook
>>>>>
>>>>> Cheers, and once again, welcome!
>>>>>
>>>>>
>>>>>
>>>>> On Wednesday, April 9, 2014 12:53:06 AM UTC+5:30, Anthony Ortiz wrote:
>>>>>>
>>>>>> Hello world!
>>>>>>
>>>>>> I'm a C# developer who recently went to an interview at a major bank
>>>>>> here in NYC and found that they've been using Clojure for their business
>>>>>> logic for over a year already and that got me curious, so I find myself 
>>>>>> on
>>>>>> unfamiliar territory learning how to program in a functional language. So
>>>>>> far so good, Moxley Stratton's online tutorial combined with Try Clojure
>>>>>> (the online interpreter) has been very helpful (kudos to you guys!) and 
>>>>>> I'm
>>>>>> now going through the book 'Programming Clojure'. So far I've seen a lot 
>>>>>> of
>>>>>> utility/academic examples such as fibonacci but little in the way of an
>>>>>> actual real-world example of a top-to-bottom desktop application built
>>>>>> using Clojure on either the JVM or CLR, something simple that would
>>>>>> demonstrate how Clojure fits into the event-driven model on the 
>>>>>> client-side
>>>>>> behind, let's say, WPF, and how it would interact with more Clojure on 
>>>>>> the
>>>>>> service-side via, let's say, WCF. Does anyone know of an example they can
>>>>>> direct me to?
>>>>>>
>>>>>> Many thanks!
>>>>>>
>>>>>> Anthony
>>>>>>
>>>>>  --
>>>>> 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
>>>>> ---
>>>>> 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/d/optout.
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>>
>>>> Fergal Byrne, Brenter IT
>>>>
>>>> Author, Real Machine Intelligence with Clortex and NuPIC
>>>> https://leanpub.com/realsmartmachines
>>>>
>>>> <http://www.examsupport.ie>http://inbits.com - Better Living through
>>>> Thoughtful Technology
>>>> http://ie.linkedin.com/in/fergbyrne/
>>>> https://github.com/fergalbyrne
>>>>
>>>> e:fergalby...@gmail.com t:+353 83 4214179
>>>> Formerly of Adnet edi...@adnet.ie http://www.adnet.ie
>>>>
>>>  --
>>> 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
>>> ---
>>> 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/d/optout.
>>>
>>
>>
>>
>> --
>>
>> Fergal Byrne, Brenter IT
>>
>> Author, Real Machine Intelligence with Clortex and NuPIC
>> https://leanpub.com/realsmartmachines
>>
>> <http://www.examsupport.ie>http://inbits.com - Better Living through
>> Thoughtful Technology
>> http://ie.linkedin.com/in/fergbyrne/
>> https://github.com/fergalbyrne
>>
>> e:fergalby...@gmail.com t:+353 83 4214179
>> Formerly of Adnet edi...@adnet.ie http://www.adnet.ie
>>
>  --
> 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/d/optout.
>



-- 

Fergal Byrne, Brenter IT

Author, Real Machine Intelligence with Clortex and NuPIC
https://leanpub.com/realsmartmachines

<http://www.examsupport.ie>http://inbits.com - Better Living through
Thoughtful Technology
http://ie.linkedin.com/in/fergbyrne/
https://github.com/fergalbyrne

e:fergalbyrnedub...@gmail.com t:+353 83 4214179
Formerly of Adnet edi...@adnet.ie http://www.adnet.ie

-- 
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/d/optout.

Reply via email to