From cda3a2d7ddf375dff83132351ff406f5d5cb8db8 Mon Sep 17 00:00:00 2001 From: Eduardo Julian Date: Sun, 11 Jan 2015 13:37:34 -0400 Subject: - Compiler now handles automatic partial applications and calls to statically-known functions (global ones) better. --- test2.lux | 32 ++++++++++++++++++++++++++++---- 1 file changed, 28 insertions(+), 4 deletions(-) (limited to 'test2.lux') diff --git a/test2.lux b/test2.lux index dbb6c5b85..305f8f8b4 100644 --- a/test2.lux +++ b/test2.lux @@ -136,12 +136,12 @@ ## (meme yolo foo)) (def (+ x y) - (do ## (:: (:: System out) (println "x = ")) (:: (:: System out) (println x)) - ## (:: (:: System out) (println "y = ")) (:: (:: System out) (println y)) - (jvm/i+ x y))) + (jvm/i+ x y)) + +(def inc (+ 1)) #( - (def inc (+ 1)) + (def (fold f init values) (case values @@ -185,12 +185,36 @@ (#Form (#Cons (#Text text) #Nil)) (do (:: (:: System out) (println text)) (:: (:: System out) (println (+ 10 20))) + (:: (:: System out) (println (inc 10))) (:: (:: System out) (println (jvm/i- 10 20))) (:: (:: System out) (println (jvm/i* 10 20))) (:: (:: System out) (println (jvm/i/ 10 2)))) )) #( + (def (main args) + (case (' ((~ "Oh yeah..."))) + (#Form (#Cons (#Text text) #Nil)) + (do (jvm/invokevirtual (jvm/getstatic System out) + java.io.PrintStream "println" [String] + [text]) + (jvm/invokevirtual (jvm/getstatic System out) + java.io.PrintStream "println" [Object] + [(+ 10 20)]) + (jvm/invokevirtual (jvm/getstatic System out) + java.io.PrintStream "println" [Object] + [(inc 10)]) + (jvm/invokevirtual (jvm/getstatic System out) + java.io.PrintStream "println" [Object] + [(jvm/i- 10 20)]) + (jvm/invokevirtual (jvm/getstatic System out) + java.io.PrintStream "println" [Object] + [(jvm/i* 10 20)]) + (jvm/invokevirtual (jvm/getstatic System out) + java.io.PrintStream "println" [Object] + [(jvm/i/ 10 2)])) + )) + (defmacro (::+ pieces) (case pieces (#Cons init #Nil) -- cgit v1.2.3