Wow, your words are simple and fit in single lines. Do you write pseudo 
code that is more expressible in factor or do you write traditional 
imperative style pseudo code and then translate them to a factor 
representation?

Thanks,
Sankar

On 2/25/16 12:01 PM, Jon Harper wrote:
> "Hi,
> I wrote a basic o(n^4) solution to see how simple it could get. The
> code looks nice to me, but it's slloooow :) like 1 hour on the 3200
> chars string.. http://paste.factorcode.org/paste?id=3843
>
> I noticed we have 1 function in common : remove-after-underscore. You
> can can see how head and when* make my implementation shorter (and
> more readable?)
>
> Cheers,
> Jon
>
>
> On Wed, Feb 24, 2016 at 5:50 AM, Sankaranarayanan Viswanathan
> <rationalrev...@gmail.com> wrote:
>> Hi,
>>
>> It had been awhile since I wrote any Factor code, so I was trying to
>> solve the following problem from reddit's dailyprogrammer subreddit:
>> http://bit.ly/1OtP8Qj
>>
>> The solution I came up with in Factor looks like this:
>> http://bit.ly/1PY8j98
>>
>> I struggled quite a lot coming up with this. Mainly in keeping things in
>> my head and figuring out what I needed to do to bring the stack in order
>> for the operations I was attempting..
>>
>> Coming from an iterative programming background (with a little bit of
>> exposure to functional programming), I find it quite hard to formulate
>> solutions in Factor. Can someone help me with tips on how they approach
>> writing code in Factor? What is your though process to turn a given
>> pseudo code into a factor program?
>>
>> For example, my pseudo code for the main portion of this problem (the
>> find-match function) was as follows:
>>
>> let buff = ""
>> let match = (indx=0, length=-1)
>> for each char c in input:
>>          find count(c) in buff
>>          if count == 2
>>                  append c to buff
>>                  check if str(first c to end) is longest and update match
>>                  remove chars in buff before second c occurrence
>>          else if count == 1
>>                  append c to buff
>>                  check if str(first c to end) is longest and update match
>>                  remove chars in buff before first c occurrence
>>          else
>>                  append c to buff
>> discard buff and return match
>>
>> Any pointers is greatly appreciated.
>>
>> Thanks,
>> Sankar
>>
>>
>> ------------------------------------------------------------------------------
>> Site24x7 APM Insight: Get Deep Visibility into Application Performance
>> APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
>> Monitor end-to-end web transactions and take corrective actions now
>> Troubleshoot faster and improve end-user experience. Signup Now!
>> http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140
>> _______________________________________________
>> Factor-talk mailing list
>> Factor-talk@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/factor-talk
>
> ------------------------------------------------------------------------------
> Site24x7 APM Insight: Get Deep Visibility into Application Performance
> APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
> Monitor end-to-end web transactions and take corrective actions now
> Troubleshoot faster and improve end-user experience. Signup Now!
> http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140
>



------------------------------------------------------------------------------
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140
_______________________________________________
Factor-talk mailing list
Factor-talk@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/factor-talk

Reply via email to