Here is an intro to the basics in leema. The format will show some code, then explain the concepts used in that code. See what you think!
This is a function that takes a string and returns it as a palindrome.
class Solution: | |
def networkDelayTime(self, edges, N, K): | |
""" | |
:type times: List[List[int]] | |
:type N: int | |
:type K: int | |
:rtype: int | |
""" | |
edges.sort(key=lambda e: e[2]) | |
# print(edges) |
diff --git a/T/prefab.lma b/T/prefab.lma | |
index ad970e2..efb8d8f 100644 | |
--- a/T/prefab.lma | |
+++ b/T/prefab.lma | |
@@ -18,28 +18,28 @@ macro fail(ft, msg) -> | |
macro refail(f) -> | |
return f | |
-- | |
I've spent the past six weeks working on Leema full time at a place called Recurse Center. It's been a great opportunity and I've made a lot of progress.
I didn't set out to implement currying. I was trying to implement closures but it seemed like it would be easier to implement closures if I added currying first.
But I didn't set out to implement closures either. I originally wanted to implement asynchronous expressions and futures but they too seemed easier to implement if I already had closures.
use Dogma.RuleBuilder | |
defrule Dogma.Rule.FnParens, [] do | |
@moduledoc """ | |
A rule that enforces using parens in a fn that takes parens | |
""" | |
@fn_pattern ~r/fn(\s*)(\(|->)?/ | |
def test(rule, script) do | |
script.processed_lines |
color | |
flavor | |
humor | |
labor | |
center | |
fiber | |
liter | |
theater | |
analyze | |
defense |
color | |
flavor | |
humor | |
labor | |
center | |
fiber | |
liter | |
theater | |
analyse | |
defense |
docker0 Link encap:Ethernet HWaddr 02:42:46:54:e0:ff | |
inet addr:172.17.0.1 Bcast:0.0.0.0 Mask:255.255.0.0 | |
UP BROADCAST MULTICAST MTU:1500 Metric:1 | |
RX packets:0 errors:0 dropped:0 overruns:0 frame:0 | |
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 | |
collisions:0 txqueuelen:0 | |
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B) | |
enp0s31f6 Link encap:Ethernet HWaddr 54:ee:75:9a:dd:8e | |
UP BROADCAST MULTICAST MTU:1500 Metric:1 |