#code2017 - Your focus area and/or goals for 2017

Languages (most likely to be used): Java, JS
Free time objectives: learn some functional programming via clojure, learn some React, learn some R, learn some Processing
 
great, would be interested to see this.

have you looked at http://www.javaslang.io/?
Yes re Javalang; they're however focused on a few other FP branches e.g. pattern matching, laziness, ...

My articles will essentially be a continuation from the last ones, specifically picking up on a commitment to demonstrate:
  • Combinatorial logic, partial application, currying, recursion, ...
  • Functors and Applicative Functors
  • Recursion; with a specific focus on using Trampolines (thunk routine)

Basically the extensions will hopefully demonstrate how FP can e.g. easily enable:
  • Dependency Injection(DI)
  • Inversion of Control (IoC)
  • Transformation of data in a list using composable list of functions.
  • Ability to use the conciseness of recursive routines, without the stack loading penalty (incl. avoiding stack overflows)
  • Associativity for functions i.e. pipelining, however that going to a bit limited re custom operator issues: Java (no support) or C# (no support for custom operators in extensions)
I'm almost code complete for the C# and Java extensions; biggest remaining challenge is to think of a good practical example to demonstrate the versatility of this. ATM I'm was thinking along the lines of gaming models, i.e. affecting game elements in run loop -- could be too complicated to explain though, hence I'm still looking at options.
 
Last edited:
Languages (most likely to be used): Java, JS
Free time objectives: learn some functional programming via clojure, learn some React, learn some R, learn some Processing
Is clojure something required in your line of work?
 
[)roi(];18953088 said:
Is clojure something required in your line of work?

No, just looks interesting and as I'm so familiar with Java it seemed like a good choice
 
No, just looks interesting and as I'm so familiar with Java it seemed like a good choice
The only similarity is the underlying byte code; beyond that Clojure is far more like Lisp than Java. 1st challenge is always bracket blindness...

e.g.
PHP:
(fn rep 
  ([lst n]
    (rep (rest lst)
    n
    (take n 
      (repeat (first lst)))))
  ([lst n out]
    (if
      (empty? lst)
      out
      (rep 
        (rest lst) n
        (concat out (take n 
          (repeat 
            (first lst))))))))
 
Last edited:
1) Win a HackerRank T-Shirt.
2) Re-learn a few web dev frameworks and complete a side project.
3) Play with machine learning.
 
[)roi(];18953228 said:
The only similarity is the underlying byte code; beyond that Clojure is far more like Lisp than Java. 1st challenge is always bracket blindness...

e.g.
PHP:
(fn rep 
  ([lst n]
    (rep (rest lst)
    n
    (take n 
      (repeat (first lst)))))
  ([lst n out]
    (if
      (empty? lst)
      out
      (rep 
        (rest lst) n
        (concat out (take n 
          (repeat 
            (first lst))))))))

Is that a sample of clojure? I just seems different enough from what I know to make it worthwhile learning, while still giving me access to the java libraries which are familiar to me
 
2017 goal. Bit of a reach but hey you gotta set your goals high and if you miss at least you learned something.

41byrwtNAiL.jpg
 
Last edited:
They wrote a book on Dependency Injection?
 
#Python - learn from scratch
#Unity - learn from scratch
#Blender animation - from scratch
#Powershell - get more in depth
 
Top
Sign up to the MyBroadband newsletter
X