addressalign-toparrow-leftarrow-rightbackbellblockcalendarcameraccwcheckchevron-downchevron-leftchevron-rightchevron-small-downchevron-small-leftchevron-small-rightchevron-small-upchevron-upcircle-with-checkcircle-with-crosscircle-with-pluscontroller-playcrossdots-three-verticaleditemptyheartexporteye-with-lineeyefacebookfolderfullheartglobegmailgooglegroupshelp-with-circleimageimagesinstagramFill 1light-bulblinklocation-pinm-swarmSearchmailmessagesminusmoremuplabelShape 3 + Rectangle 1ShapeoutlookpersonJoin Group on CardStartprice-ribbonprintShapeShapeShapeShapeImported LayersImported LayersImported Layersshieldstartickettrashtriangle-downtriangle-uptwitteruserwarningyahoo

May Clojure Users Group Meeting: The Premise Language & Lightning Talks

The Los Angeles Clojure Users Group welcomes Michael Miller, the presenter for our May meetup. He'll be talking about the language Premise. Afterwards, we'll invite any attendee to give a quick talk on a topic of their choice.

The Premise Language

Premise is a functional prototype programming language that supports logical and similarity based pattern matching, asynchrony, and inference. The Sapir Whorf hypothesis applied to computer programming suggests that the primitives in a programming  language frame and constrain how developers think about solutions.  Premise's high level language intrinsics and literal orientation offer programmers a new vantage point for solving complex problems and building artificially intelligent systems.  

About Michael Miller

Michael Miller has worked and consulted extensively in the software industry for numerous companies including Bank of America, Deutschebank, TBWA Chiat Day, Northrop Grumman, American Express, AT&T, and Ford Motor Company. He has worked in various capacities from Software Developer, Knowledge Engineer, Principal Consultant to Senior Enterprise Architect. He attended Carnegie Mellon University where he worked on the Prodigy planning system in machine learning, and has published articles on building Cognitive Systems.

Also Lightning Talks

After Michael's presentation, we'll open up the floor to anyone that would like to give a quick talk (five minutes or so) on anything they'd think would be of interest to the group. A wide range of topics are encouraged: a library you've learned about recently, a new project you'd like feedback on, a question that's been on your mind lately, etc.

---

Parking and Directions:

Address Change! 

We're in a new building! Still in Century City, near the mall, but now at: 

     1999 Avenue of the Stars, 34th Floor, Los Angeles

The building is at the intersection of Avenue of the Stars and Constellation Blvd.

When you arrive, please tell the guards you are here for the "Meetup at Factual".

Parking:

The best place for attendees to park is at the Westfield Century City Mall.  Please note that they no longer offer free parking for the first 3 hours.  Parking rates are as follows:

0 to 3 hours: $1.00 per hour 
3 to 5 hours: $1.00 every 15 minutes 
5 hours or more: $24.00 
Daily maximum: $24.00

---

About the Venue:

Factual is a location platform that enables personalized and contextually relevant mobile experiences by enriching mobile location signals with definitive global data. Factual’s real-time data stack builds and maintains data on a global scale, with Factual's core Global Places data covering over 65 million local businesses and points of interest in 50 countries. Factual’s platform also informs location with contextual demographic and commercial data, and offers cleaning and mapping services for business listings and points of interest.

Join or login to comment.

  • Michael M.

    "Vish or Will had a question yesterday which I gave some thought to this morning: Finding all possible relationships for a new person in the system. Yesterday I said that you'd need to run the rules function to infer personal relationships continually. My sattori was that you just need to run the function in
    the instance constructor. Once the relationship is found it can be updated on both persons. Hence new persons entering the system can attach themselves to existing persons. You'll have to run the find-relationships function to quiescence (i.e. until no activity across all relations but that's okay for now. I suppose. So each new person will automatically update any known relations. And you begin by entering any known information about the person. For example


    (knew person :name 'Matt Jones' :ancestors {{father (knew person :name 'John Jones')} {mother (knew person :name 'Zelda Jones')}}) "

    May 7, 2014

  • Michael M.

    module geneology

    "Use key value maps for :ancestors :descendents
    :siblings :cousins. " let person
    :name
    :gender ; in {male female}
    :ancestors {} " e.g. {{mother person_47} ...} "
    :descendants {} " e.g. {{son person_23} ...} "
    :siblings {}
    :cousins {}
    !new person-new
    !old person-old
    end to person-new {?person}
    "find relations until no more found"
    (while (> (find-relations ?person) 0))
    end end

    May 7, 2014

  • Michael M.

    extend geneology to find-relations {?person}
    (max
    (find-father ?person)
    (find-mother ?person)
    (find-brothers ?person)
    (find-sisters ?person)
    (find-grandparents ?person)
    (find-grandchildren ?person)
    (find-first-cousins ?person)
    (find-second-cousins ?person)
    (find-sons ?person)
    (find-daughters ?person))
    end " (val ?map ?key) returns a value"
    " (key ?map ?val) returns a key " to find-father {?person}
    "a father is a child's male parent."
    (local ?count)
    (put 0 ?count)
    (given [person ^ ?father
    (= :gender male)
    (in (key :descendants ?person)
    {son daughter})]
    [person (= ^ ?person)
    (no (val :ancestors father))]
    do
    (add ?person :ancestors {father ?father})
    (put ?count (+ 1 ?count)))
    ?count
    end "and so forth " end

    May 7, 2014

  • Will M.

    Hi all,

    We'll actually be meeting on the 34th floor of 1999 AOS, not the 35th. I've updated the meetup page with the new info. Looking forward to seeing everyone on the 6th!

    April 30, 2014

  • malcolm

    RSVP is maybe - intend to change it if I am not coming.

    April 27, 2014

18 went

Our Sponsors

  • MatchCraft LLC

    Currently provides the regular meeting space and refreshments.

People in this
Meetup are also in:

Sign up

Meetup members, Log in

By clicking "Sign up" or "Sign up using Facebook", you confirm that you accept our Terms of Service & Privacy Policy