//licenceplate(x, y) = _ <: (opening_line(x, y, 4), closing_line(x, y, 2) : threshold(x, 1, 50), threshold(x, 150, 255) : and : opening_column(x, y, 4) : opening_line(x, y, 4) : dilations_square(x, y, 4)), _ : and;
-//process = dilations(8, 8, 3);
+//process = dilations_line(8, 8, 3);
//process = erosions(8, 8, 3);
//process = open(8, 8, 2);
//process = close(8, 8, 5);
-//process = licenceplate(4, 4, 15, 8, 1, 50, 150, 255, 4, 4, 2);
+//process = licenceplate(100, 50, 15, 8, 1, 50, 150, 255, 4, 4, 2);
-import ("../../architecture/morph.lib");
+import ("../../architecture/morpho.lib");
-process = dilations(112, 150, 2);
+process = dilations_square(112, 150, 2);
-../../interpretor/faustine -d dilation.dsp -i letter_j.csv --oformat csv
+../../interpretor/faustine -d dilation.dsp -i letter_j.csv -t 150 --oformat csv
import ("../../architecture/morpho.lib");
-process = licenceplate(640, 383, 15, 8, 1, 50, 150, 255, 4, 4, 2);
+process = licenceplate(300, 100, 15, 8, 1, 50, 150, 255, 4, 4, 2);
//process = licenceplate(195, 117, 1, 4, 1, 50, 150, 255, 1, 1, 2);
-../../interpretor/faustine -d sin.dsp
+faustine -d sin.dsp
let _ = Gc.set { (Gc.get())
with Gc.space_overhead = 100 } in
let _ = Gc.set { (Gc.get())
- with Gc.max_overhead = 0xFFFFF } in
+ with Gc.max_overhead = 0xFFF } in
let _ = Gc.set { (Gc.get())
with Gc.stack_limit = 0xFFFFF } in
let _ = Gc.set { (Gc.get())
- with Gc.allocation_policy = 0 } in
+ with Gc.allocation_policy = 1 } in
() ;;
let path_dsp = ref "";;
| Merge of faust_exp * faust_exp
+class type rate_type =
+ object
+ method to_int : int
+ method to_float : float
+ method equal : rate_type -> bool
+ method mul : int -> rate_type
+ method div : int -> rate_type
+ end
+
class type signal_type =
object
- method frequency : int
+ method frequency : rate_type
method at : time -> value_type
method add_memory : int -> unit
method add : signal_type -> signal_type