├── lispBM ├── lispBM │ ├── .gitattributes │ ├── tests │ │ ├── qc │ │ │ ├── cabal.project │ │ │ ├── tests │ │ │ │ └── Regression │ │ │ │ │ └── Spec.hs │ │ │ ├── cabalpar.project │ │ │ └── src │ │ │ │ └── SExpGen.hs │ │ └── tests │ │ │ ├── test_char_0.lisp │ │ │ ├── test_eq_4.lisp │ │ │ ├── test_eq_5.lisp │ │ │ ├── test_eq_6.lisp │ │ │ ├── test_hex_0.lisp │ │ │ ├── test_quote_0.lisp │ │ │ ├── test_arith_13.lisp │ │ │ ├── test_arith_14.lisp │ │ │ ├── test_arith_16.lisp │ │ │ ├── test_arith_17.lisp │ │ │ ├── test_arith_18.lisp │ │ │ ├── test_arith_19.lisp │ │ │ ├── test_arith_20.lisp │ │ │ ├── test_arith_7.lisp │ │ │ ├── test_arith_8.lisp │ │ │ ├── test_dot1.lisp │ │ │ ├── test_dot2.lisp │ │ │ ├── test_eq_3.lisp │ │ │ ├── test_list_5.lisp │ │ │ ├── test_logic_6.lisp │ │ │ ├── test_logic_8.lisp │ │ │ ├── test_logic_9.lisp │ │ │ ├── test_num_not_eq_3.lisp │ │ │ ├── test_read_0.lisp │ │ │ ├── test_arith_1.lisp │ │ │ ├── test_arith_10.lisp │ │ │ ├── test_arith_11.lisp │ │ │ ├── test_arith_12.lisp │ │ │ ├── test_arith_2.lisp │ │ │ ├── test_arith_23.lisp │ │ │ ├── test_arith_24.lisp │ │ │ ├── test_arith_9.lisp │ │ │ ├── test_car_0.lisp │ │ │ ├── test_cdr_0.lisp │ │ │ ├── test_extension_1.lisp │ │ │ ├── test_logic_1.lisp │ │ │ ├── test_logic_2.lisp │ │ │ ├── test_logic_5.lisp │ │ │ ├── test_not_eq_1.lisp │ │ │ ├── test_not_eq_3.lisp │ │ │ ├── test_num_not_eq_1.lisp │ │ │ ├── test_progn_0.lisp │ │ │ ├── test_progn_5.lisp │ │ │ ├── test_rest_0.lisp │ │ │ ├── test_symbol_0.lisp │ │ │ ├── test_arith_22.lisp │ │ │ ├── test_arith_3.lisp │ │ │ ├── test_arith_4.lisp │ │ │ ├── test_arith_5.lisp │ │ │ ├── test_arith_6.lisp │ │ │ ├── test_array_syntax_8.lisp │ │ │ ├── test_car_1.lisp │ │ │ ├── test_car_2.lisp │ │ │ ├── test_cdr_1.lisp │ │ │ ├── test_cdr_2.lisp │ │ │ ├── test_eq_0.lisp │ │ │ ├── test_eq_2.lisp │ │ │ ├── test_eval_0.lisp │ │ │ ├── test_extension_0.lisp │ │ │ ├── test_extension_2.lisp │ │ │ ├── test_extension_3.lisp │ │ │ ├── test_first_0.lisp │ │ │ ├── test_fn_0.lisp │ │ │ ├── test_ix_0.lisp │ │ │ ├── test_ix_1.lisp │ │ │ ├── test_ix_2.lisp │ │ │ ├── test_list_4.lisp │ │ │ ├── test_logic_3.lisp │ │ │ ├── test_logic_4.lisp │ │ │ ├── test_logic_7.lisp │ │ │ ├── test_nan_1.lisp │ │ │ ├── test_nan_2.lisp │ │ │ ├── test_not_eq_2.lisp │ │ │ ├── test_num_not_eq_2.lisp │ │ │ ├── test_progn_6.lisp │ │ │ ├── test_qq_0.lisp │ │ │ ├── test_qq_3.lisp │ │ │ ├── test_qq_4.lisp │ │ │ ├── test_quote_1.lisp │ │ │ ├── test_typeof_1.lisp │ │ │ ├── test_append_3.lisp │ │ │ ├── test_arith_0.lisp │ │ │ ├── test_arith_21.lisp │ │ │ ├── test_atomic_0.lisp │ │ │ ├── test_def_0.lisp │ │ │ ├── test_eval_1.lisp │ │ │ ├── test_eval_3.lisp │ │ │ ├── test_list_3.lisp │ │ │ ├── test_qq_1.lisp │ │ │ ├── test_read_1.lisp │ │ │ ├── test_read_4.lisp │ │ │ ├── test_rotate_1.lisp │ │ │ ├── test_typeof_0.lisp │ │ │ ├── test_typeof_2.lisp │ │ │ ├── test_typeof_3.lisp │ │ │ ├── test_typeof_4.lisp │ │ │ ├── test_typeof_5.lisp │ │ │ ├── test_typeof_6.lisp │ │ │ ├── test_array_0.lisp │ │ │ ├── test_define_1.lisp │ │ │ ├── test_define_3.lisp │ │ │ ├── test_eq_1.lisp │ │ │ ├── test_eval_2.lisp │ │ │ ├── test_if_0.lisp │ │ │ ├── test_if_1.lisp │ │ │ ├── test_list_0.lisp │ │ │ ├── test_logic_10.lisp │ │ │ ├── test_qq_13.lisp │ │ │ ├── test_qq_5.lisp │ │ │ ├── test_qq_6.lisp │ │ │ ├── test_range_0.lisp │ │ │ ├── test_range_1.lisp │ │ │ ├── test_range_3.lisp │ │ │ ├── test_typeof_7.lisp │ │ │ ├── test_underscore_sym_1.lisp │ │ │ ├── test_float_0.lisp │ │ │ ├── test_float_1.lisp │ │ │ ├── test_float_2.lisp │ │ │ ├── test_logic_11.lisp │ │ │ ├── test_typeof_8.lisp │ │ │ ├── test_append_4.lisp │ │ │ ├── test_callcc_2.lisp │ │ │ ├── test_define_4.lisp │ │ │ ├── test_high_level_array_4.lisp │ │ │ ├── test_let_1.lisp │ │ │ ├── test_list_1.lisp │ │ │ ├── test_numbers_1.lisp │ │ │ ├── test_qq_12.lisp │ │ │ ├── test_qq_2.lisp │ │ │ ├── test_read_3.lisp │ │ │ ├── test_setix_2.lisp │ │ │ ├── test_str_join_3.lisp │ │ │ ├── test_take_iota_0.lisp │ │ │ ├── test_append_1.lisp │ │ │ ├── test_array_syntax_1.lisp │ │ │ ├── test_gc_14.lisp │ │ │ ├── test_numbers_2.lisp │ │ │ ├── test_progn_2.lisp │ │ │ ├── test_qq_15.lisp │ │ │ ├── test_range_4.lisp │ │ │ ├── test_read_program_9.lisp │ │ │ ├── test_rotate_2.lisp │ │ │ ├── test_arith_15.lisp │ │ │ ├── test_array_1.lisp │ │ │ ├── test_compare_0.lisp │ │ │ ├── test_compare_1.lisp │ │ │ ├── test_compare_2.lisp │ │ │ ├── test_float_3.lisp │ │ │ ├── test_float_5.lisp │ │ │ ├── test_gc_10.lisp │ │ │ ├── test_logic_12.lisp │ │ │ ├── test_map_10.lisp │ │ │ ├── test_map_11.lisp │ │ │ ├── test_map_12.lisp │ │ │ ├── test_map_9.lisp │ │ │ ├── test_merge_13.lisp │ │ │ ├── test_merge_14.lisp │ │ │ ├── test_random_1.lisp │ │ │ ├── test_rotate_3.lisp │ │ │ ├── test_setix_0.lisp │ │ │ ├── test_underscore_sym_0.lisp │ │ │ ├── test_array_2.lisp │ │ │ ├── test_compare_3.lisp │ │ │ ├── test_cond_6.lisp │ │ │ ├── test_flat_unflat_2.lisp │ │ │ ├── test_float_4.lisp │ │ │ ├── test_lambda_0.lisp │ │ │ ├── test_lambda_1.lisp │ │ │ ├── test_let_4.lisp │ │ │ ├── test_list_2.lisp │ │ │ ├── test_setq_0.lisp │ │ │ ├── test_setq_5.lisp │ │ │ ├── test_undefine_7.lisp │ │ │ ├── test_word_size.lisp │ │ │ ├── test_array_syntax_14.lisp │ │ │ ├── test_define_2.lisp │ │ │ ├── test_eval_program_5.lisp │ │ │ ├── test_lambda_2.lisp │ │ │ ├── test_lambda_3.lisp │ │ │ ├── test_lambda_4.lisp │ │ │ ├── test_let_5.lisp │ │ │ ├── test_move_to_flash_3.lisp │ │ │ ├── test_array_extensions_6.lisp │ │ │ ├── test_array_syntax_15.lisp │ │ │ ├── test_array_syntax_16.lisp │ │ │ ├── test_array_syntax_3.lisp │ │ │ ├── test_callcc_5.lisp │ │ │ ├── test_flat_unflat_3.lisp │ │ │ ├── test_gc_1.lisp │ │ │ ├── test_hof_1.lisp │ │ │ ├── test_let_0.lisp │ │ │ ├── test_mail_1.lisp │ │ │ ├── test_progn_1.lisp │ │ │ ├── test_read_program_1.lisp │ │ │ ├── test_rest_args_1.lisp │ │ │ ├── test_setix_1.lisp │ │ │ ├── test_deconstruct_let_0.lisp │ │ │ ├── test_hof_2.lisp │ │ │ ├── test_let_2.lisp │ │ │ ├── test_str_join_2.lisp │ │ │ ├── test_array_syntax_17.lisp │ │ │ ├── test_comments_0.lisp │ │ │ ├── test_let_12.lisp │ │ │ ├── test_move_to_flash_1.lisp │ │ │ ├── test_rest_args_5.lisp │ │ │ ├── test_share_const_array_1.lisp │ │ │ ├── test_tailrec_0.lisp │ │ │ ├── test_lambda_5.lisp │ │ │ ├── test_move_to_flash_7.lisp │ │ │ ├── test_progn_var_14.lisp │ │ │ ├── test_read_program_5.lisp │ │ │ ├── test_refmut_3.lisp │ │ │ ├── test_refmut_4.lisp │ │ │ ├── test_setq_2.lisp │ │ │ ├── test_undefine_8.lisp │ │ │ ├── test_array_3.lisp │ │ │ ├── test_array_4.lisp │ │ │ ├── test_array_syntax_9.lisp │ │ │ ├── test_cond_7.lisp │ │ │ ├── test_deconstruct_let_1.lisp │ │ │ ├── test_fib_1.lisp │ │ │ ├── test_move_to_flash_5.lisp │ │ │ ├── test_qq_8.lisp │ │ │ ├── test_read_program_2.lisp │ │ │ ├── test_read_program_4.lisp │ │ │ ├── test_refmut_5.lisp │ │ │ ├── test_refmut_6.lisp │ │ │ ├── test_spawn_3.lisp │ │ │ ├── test_array_19.lisp │ │ │ ├── test_array_6.lisp │ │ │ ├── test_array_7.lisp │ │ │ ├── test_callcc_1.lisp │ │ │ ├── test_curly_syntax_0.lisp │ │ │ ├── test_eval_program_1.lisp │ │ │ ├── test_fib_0.lisp │ │ │ ├── test_flat_unflat_1.lisp │ │ │ ├── test_progn_var_15.lisp │ │ │ ├── test_progn_var_16.lisp │ │ │ ├── test_range_2.lisp │ │ │ ├── test_read_program_3.lisp │ │ │ ├── test_share_const_array_0.lisp │ │ │ ├── test_spawn_1.lisp │ │ │ ├── test_take_2.lisp │ │ │ ├── test_take_3.lisp │ │ │ ├── test_array_5.lisp │ │ │ ├── test_array_syntax_6.lisp │ │ │ ├── test_atomic_1.lisp │ │ │ ├── test_curly_syntax_1.lisp │ │ │ ├── test_curly_syntax_2.lisp │ │ │ ├── test_drop_2.lisp │ │ │ ├── test_dynamic_extension_1.lisp │ │ │ ├── test_lambda_6.lisp │ │ │ ├── test_let_6.lisp │ │ │ ├── test_print_value_1.lisp │ │ │ ├── test_qq_7.lisp │ │ │ ├── test_read_eval_program_1.lisp │ │ │ ├── test_setq_6.lisp │ │ │ ├── test_str_join_1.lisp │ │ │ ├── test_undefine_9.lisp │ │ │ ├── test_array_8.lisp │ │ │ ├── test_drop_3.lisp │ │ │ ├── test_eval_program_2.lisp │ │ │ ├── test_flat_unflat_4.lisp │ │ │ ├── test_hof_0.lisp │ │ │ ├── test_list_6.lisp │ │ │ ├── test_match_7.lisp │ │ │ ├── test_refmut_1.lisp │ │ │ ├── test_refmut_2.lisp │ │ │ ├── test_refmut_7.lisp │ │ │ ├── test_refmut_8.lisp │ │ │ ├── test_rest_args_2.lisp │ │ │ ├── test_take_1.lisp │ │ │ ├── test_undefine_1.lisp │ │ │ ├── test_array_syntax_5.lisp │ │ │ ├── test_array_syntax_7.lisp │ │ │ ├── test_cond_5.lisp │ │ │ ├── test_deconstruct_let_3.lisp │ │ │ ├── test_dot_1.lisp │ │ │ ├── test_drop_1.lisp │ │ │ ├── test_loop_range_1.lisp │ │ │ ├── test_match_13.lisp │ │ │ ├── test_match_14.lisp │ │ │ ├── test_progn_var_10.lisp │ │ │ ├── test_progn_var_6.lisp │ │ │ ├── test_read_eval_program_3.lisp │ │ │ ├── test_spawn_4.lisp │ │ │ ├── test_string_1.lisp │ │ │ ├── test_tailrec_1.lisp │ │ │ ├── test_undefine_2.lisp │ │ │ ├── test_array_syntax_4.lisp │ │ │ ├── test_atomic_var_0.lisp │ │ │ ├── test_deconstruct_let_2.lisp │ │ │ ├── test_deconstruct_let_5.lisp │ │ │ ├── test_deconstruct_let_7.lisp │ │ │ ├── test_define_0.lisp │ │ │ ├── test_eval_program_3.lisp │ │ │ ├── test_high_level_array_3.lisp │ │ │ ├── test_high_level_array_5.lisp │ │ │ ├── test_lambda_11.lisp │ │ │ ├── test_progn_var_4.lisp │ │ │ ├── test_read_2.lisp │ │ │ ├── test_spawn_2.lisp │ │ │ ├── test_gc_15.lisp │ │ │ ├── test_loop_while_1.lisp │ │ │ ├── test_merge_1.lisp │ │ │ ├── test_merge_2.lisp │ │ │ ├── test_merge_6.lisp │ │ │ ├── test_partial_1.lisp │ │ │ ├── test_partial_2.lisp │ │ │ ├── test_read_eval_program_2.lisp │ │ │ ├── test_setq_4.lisp │ │ │ ├── test_vector_1.lisp │ │ │ ├── test_high_level_array_6.lisp │ │ │ ├── test_loop_foreach_1.lisp │ │ │ ├── test_match_0.lisp │ │ │ ├── test_match_1.lisp │ │ │ ├── test_merge_5.lisp │ │ │ ├── test_progn_var_3.lisp │ │ │ ├── test_undefine_0.lisp │ │ │ ├── test_array_extensions_5.lisp │ │ │ ├── test_flat_unflat_5.lisp │ │ │ ├── test_loop_for_1.lisp │ │ │ ├── test_merge_3.lisp │ │ │ ├── test_merge_4.lisp │ │ │ ├── test_partial_0.lisp │ │ │ ├── test_str_from_n_1.lisp │ │ │ ├── test_assoc_0.lisp │ │ │ ├── test_cossa_0.lisp │ │ │ ├── test_lambda_7.lisp │ │ │ ├── test_merge_7.lisp │ │ │ ├── test_merge_8.lisp │ │ │ ├── test_merge_9.lisp │ │ │ ├── test_move_to_flash_2.lisp │ │ │ ├── test_progn_3.lisp │ │ │ ├── test_qq_10.lisp │ │ │ ├── test_qq_9.lisp │ │ │ ├── test_tailrec_2.lisp │ │ │ ├── test_variable_0.lisp │ │ │ ├── test_assoc_1.lisp │ │ │ ├── test_cossa_1.lisp │ │ │ ├── test_gc_5.lisp │ │ │ ├── test_let_9.lisp │ │ │ ├── test_match_15.lisp │ │ │ ├── test_merge_10.lisp │ │ │ ├── test_move_to_flash_4.lisp │ │ │ ├── test_read_program_8.lisp │ │ │ ├── test_gc_8.lisp │ │ │ ├── test_if_3.lisp │ │ │ ├── test_match_8.lisp │ │ │ ├── test_mutual_rec_0.lisp │ │ │ ├── test_mutual_rec_1.lisp │ │ │ ├── test_progn_var_0.lisp │ │ │ ├── test_callcc_6.lisp │ │ │ ├── test_let_3.lisp │ │ │ ├── test_range_5.lisp │ │ │ ├── test_eval_program_4.lisp │ │ │ ├── test_macro_0.lisp │ │ │ ├── test_trap_1.lisp │ │ │ ├── test_trap_2.lisp │ │ │ ├── test_append_2.lisp │ │ │ ├── test_gc_4.lisp │ │ │ ├── test_let_11.lisp │ │ │ ├── test_partial_5.lisp │ │ │ ├── test_progn_var_5.lisp │ │ │ ├── test_qq_11.lisp │ │ │ ├── test_receive_1.lisp │ │ │ ├── test_setvar_let_1.lisp │ │ │ ├── test_event_1.lisp │ │ │ ├── test_list_7.lisp │ │ │ ├── test_map_0.lisp │ │ │ ├── test_match_5.lisp │ │ │ ├── test_progn_var_7.lisp │ │ │ ├── test_array_syntax_0.lisp │ │ │ ├── test_cossa_3.lisp │ │ │ ├── test_ix_3.lisp │ │ │ ├── test_ix_4.lisp │ │ │ ├── test_lambda_8.lisp │ │ │ ├── test_progn_7.lisp │ │ │ ├── test_progn_var_8.lisp │ │ │ ├── test_setvar_let_0.lisp │ │ │ ├── test_str_find_1.lisp │ │ │ ├── test_symbol_1.lisp │ │ │ ├── test_array_syntax_10.lisp │ │ │ ├── test_assoc_3.lisp │ │ │ ├── test_gc_11.lisp │ │ │ ├── test_map_13.lisp │ │ │ ├── test_match_2.lisp │ │ │ ├── test_partial_3.lisp │ │ │ ├── test_map_5.lisp │ │ │ ├── test_partial_4.lisp │ │ │ ├── test_progn_var_11.lisp │ │ │ ├── test_rest_args_3.lisp │ │ │ ├── test_spawn_wait_1.lisp │ │ │ ├── test_gc_2.lisp │ │ │ ├── test_if_2.lisp │ │ │ ├── test_mail_4.lisp │ │ │ ├── test_map_7.lisp │ │ │ ├── test_match_3.lisp │ │ │ ├── test_print_value_3.lisp │ │ │ ├── test_built_in_loop_0.lisp │ │ │ ├── test_deconstruct_let_6.lisp │ │ │ ├── test_move_to_flash_6.lisp │ │ │ ├── test_nil_1.lisp │ │ │ ├── test_progn_var_1.lisp │ │ │ ├── test_vector_3.lisp │ │ │ ├── test_atomic_2.lisp │ │ │ ├── test_cond_3.lisp │ │ │ ├── test_map_8.lisp │ │ │ ├── test_read_program_6.lisp │ │ │ ├── test_read_program_7.lisp │ │ │ ├── test_saxpy_1.lisp │ │ │ ├── test_str_find_2.lisp │ │ │ ├── test_curly_syntax_3.lisp │ │ │ ├── test_event_2.lisp │ │ │ ├── test_map_4.lisp │ │ │ ├── test_range_8.lisp │ │ │ ├── test_range_9.lisp │ │ │ ├── test_rest_args_4.lisp │ │ │ ├── test_assoc_4.lisp │ │ │ ├── test_built_in_loop_1.lisp │ │ │ ├── test_built_in_loop_2.lisp │ │ │ ├── test_map_6.lisp │ │ │ ├── test_match_9.lisp │ │ │ ├── test_progn_var_12.lisp │ │ │ ├── test_block_unblock_1.lisp │ │ │ ├── test_let_7.lisp │ │ │ ├── test_sort_8.lisp │ │ │ ├── test_array_9.lisp │ │ │ ├── test_fold_0.lisp │ │ │ ├── test_lambda_10.lisp │ │ │ ├── test_match_4.lisp │ │ │ ├── test_variable_1.lisp │ │ │ ├── test_atomic_3.lisp │ │ │ ├── test_match_10.lisp │ │ │ ├── test_match_guard_0.lisp │ │ │ ├── test_match_guard_5.lisp │ │ │ ├── test_progn_var_2.lisp │ │ │ ├── test_saxpy_2.lisp │ │ │ ├── test_sort_9.lisp │ │ │ ├── test_assoc_2.lisp │ │ │ ├── test_atomic_4.lisp │ │ │ ├── test_bitwise_1.lisp │ │ │ ├── test_cossa_2.lisp │ │ │ ├── test_match_guard_1.lisp │ │ │ ├── test_matrix_1.lisp │ │ │ ├── test_cond.lisp │ │ │ ├── test_match_17.lisp │ │ │ ├── test_match_19.lisp │ │ │ ├── test_match_guard_6.lisp │ │ │ ├── test_setq_1.lisp │ │ │ ├── test_explicit_gc_0.lisp │ │ │ ├── test_if_4.lisp │ │ │ ├── test_match_12.lisp │ │ │ ├── test_cond_2.lisp │ │ │ ├── test_spawn_trap_1.lisp │ │ │ ├── test_match_11.lisp │ │ │ ├── test_memory_1.lisp │ │ │ ├── test_move_to_flash_0.lisp │ │ │ ├── test_spawn_trap_3.lisp │ │ │ ├── test_if_5.lisp │ │ │ ├── test_spawn_trap_2.lisp │ │ │ ├── test_append_5.lisp │ │ │ ├── test_match_18.lisp │ │ │ ├── test_move_to_flash_8.lisp │ │ │ ├── test_trap_5.lisp │ │ │ ├── test_trap_6.lisp │ │ │ ├── test_lambda_9.lisp │ │ │ ├── test_match_guard_7.lisp │ │ │ ├── test_progn_4.lisp │ │ │ ├── test_spawn_trap_4.lisp │ │ │ ├── test_str_find_3.lisp │ │ │ ├── test_append_6.lisp │ │ │ ├── test_gc_13.lisp │ │ │ ├── test_match_16.lisp │ │ │ ├── test_match_guard_2.lisp │ │ │ ├── test_print_value_4.lisp │ │ │ ├── test_trap_3.lisp │ │ │ ├── test_trap_4.lisp │ │ │ ├── test_callcc_3.lisp │ │ │ ├── test_array_extensions_7.lisp │ │ │ ├── test_cond_0.lisp │ │ │ ├── test_merge_12.lisp │ │ │ ├── test_numbers_0.lisp │ │ │ ├── test_sort_10.lisp │ │ │ ├── test_array_extensions_8.lisp │ │ │ ├── test_cond_1.lisp │ │ │ ├── test_fib_2.lisp │ │ │ ├── test_fib_3.lisp │ │ │ ├── test_map_3.lisp │ │ │ ├── test_to_str_1.lisp │ │ │ ├── test_undefine_3.lisp │ │ │ ├── test_deconstruct_let_4.lisp │ │ │ ├── test_gc_3.lisp │ │ │ ├── test_comments_4.lisp │ │ │ ├── test_encode_64_1.lisp │ │ │ ├── test_encode_64_2.lisp │ │ │ ├── test_encode_64_3.lisp │ │ │ ├── test_match_6.lisp │ │ │ ├── test_setq_3.lisp │ │ │ ├── test_block_unblock_3.lisp │ │ │ ├── test_comments_2.lisp │ │ │ ├── test_fib_4.lisp │ │ │ ├── test_high_level_array_1.lisp │ │ │ ├── test_trap_8.lisp │ │ │ ├── test_match_guard_8.lisp │ │ │ ├── test_str_to_i_1.lisp │ │ │ ├── test_gc_12.lisp │ │ │ ├── test_let_8.lisp │ │ │ ├── test_progn_var_9.lisp │ │ │ ├── test_str_from_n_2.lisp │ │ │ ├── test_str_to_f_1.lisp │ │ │ ├── test_sumtree_0.lisp │ │ │ ├── test_undefine_5.lisp │ │ │ ├── test_comments_3.lisp │ │ │ ├── test_match_20.lisp │ │ │ ├── test_str_len_1.lisp │ │ │ ├── test_str_part_1.lisp │ │ │ ├── test_trap_7.lisp │ │ │ ├── test_event_3.lisp │ │ │ ├── test_map_1.lisp │ │ │ ├── test_progn_var_13.lisp │ │ │ ├── test_range_6.lisp │ │ │ ├── test_block_unblock_2.lisp │ │ │ ├── test_concurrent_0.lisp │ │ │ ├── test_let_10.lisp │ │ │ ├── test_str_join_gc_3.lisp │ │ │ ├── test_callcc_0.lisp │ │ │ ├── test_gc_9.lisp │ │ │ ├── test_str_to_lower_1.lisp │ │ │ ├── test_str_to_upper_1.lisp │ │ │ ├── test_undefine_6.lisp │ │ │ ├── test_match_guard_4.lisp │ │ │ ├── test_to_str_delim_1.lisp │ │ │ ├── test_str_join_gc_1.lisp │ │ │ ├── test_str_join_gc_2.lisp │ │ │ └── test_callcc_4.lisp │ ├── .clang_complete │ ├── mktags.sh │ ├── runinfer.sh │ ├── runsa.sh │ ├── benchmarks │ │ ├── loop_200k.lisp │ │ ├── fibonacci.lisp │ │ ├── bench_chibi │ │ │ └── flash.sh │ │ ├── tail_call_200k.lisp │ │ ├── dec_cnt1.lisp │ │ ├── dec_cnt2.lisp │ │ ├── dec_cnt3.lisp │ │ ├── q2.lisp │ │ ├── tak.lisp │ │ ├── fibonacci_tail.lisp │ │ └── stored_results │ │ │ └── benchresult22_01_22_10_11_07 │ ├── doc │ │ ├── images │ │ │ ├── t.png │ │ │ ├── list.png │ │ │ ├── list0.png │ │ │ ├── pair.png │ │ │ ├── test.png │ │ │ ├── millions.png │ │ │ ├── cons_cell.png │ │ │ ├── float_stm.png │ │ │ ├── list_1234.png │ │ │ ├── millions64.png │ │ │ ├── snoc_1234.png │ │ │ ├── add_one_two.png │ │ │ ├── float_riscv.png │ │ │ ├── float_x86_32.png │ │ │ ├── float_x86_64.png │ │ │ ├── lbm_arith_pc.png │ │ │ ├── millions_zoom.png │ │ │ ├── thousands_arm.png │ │ │ ├── float_stm_zoom.png │ │ │ ├── rotate_pos_neg.png │ │ │ ├── sum_of_squares.png │ │ │ ├── thousands_riscv.png │ │ │ ├── float_riscv_zoom.png │ │ │ ├── float_x86_32_zoom.png │ │ │ ├── lbm_arith_embedded.png │ │ │ ├── thousands_arm_zoom.png │ │ │ └── thousands_riscv_zoom.png │ │ ├── Makefile │ │ └── manual │ │ │ └── ch3_examples │ │ │ ├── hello.lisp │ │ │ ├── hello_repeater.lisp │ │ │ ├── recv_message.lisp │ │ │ ├── recv_message2.lisp │ │ │ └── hello_bye.lisp │ ├── vesc_express_tests │ │ ├── test_1.lisp │ │ ├── test_0.lisp │ │ └── Makefile │ ├── mascot │ │ ├── lispbm_llama.png │ │ └── lispbm_llama_small.png │ ├── videos │ │ ├── sum150_rgb_2.mp4 │ │ ├── one_minute_heap_vis.mp4 │ │ └── sum150_tail_recursive_rgb_0.mp4 │ ├── repl │ │ ├── examples │ │ │ ├── fibonacci.lisp │ │ │ ├── fibonacci_tail.lisp │ │ │ └── simple.lisp │ │ ├── convpng.sh │ │ ├── convmp4.sh │ │ └── profile.sh │ ├── test_reports │ │ ├── version_0.24.0 │ │ │ └── scan-build │ │ │ │ └── 2024-04-28-134646-49849-1 │ │ │ │ └── sorttable.js │ │ ├── version_0.25.0 │ │ │ └── scan-build │ │ │ │ └── 2024-07-23-152344-239046-1 │ │ │ │ └── sorttable.js │ │ └── version_0.23.0 │ │ │ └── scan-build │ │ │ └── 2024-03-09-191247-1858527-1 │ │ │ └── sorttable.js │ └── .travis.yml └── c_libs │ └── examples │ ├── ssd1306 │ └── Makefile │ ├── thread │ └── Makefile │ ├── extension │ └── Makefile │ ├── speed_test │ └── Makefile │ ├── custom_data_comm │ └── Makefile │ ├── ws2812 │ └── Makefile │ └── config │ └── Makefile ├── tmc ├── tmc.mk └── ic │ └── TMC6200 │ └── TMC6200_Fields.h ├── tests ├── utils_math │ ├── app.h │ └── ch.h └── overvoltage_fault │ ├── overvoltage_test_v1.ods │ ├── overvoltage_test_v1.pdf │ ├── overvoltage_test_v2.ods │ └── overvoltage_test_v2.pdf ├── imu ├── Fusion │ └── LICENSE └── imu.mk ├── util ├── utils.h └── util.mk ├── ChibiOS_3.0.5 ├── os │ ├── ext │ │ ├── CMSIS │ │ │ ├── ST │ │ │ │ ├── stm32f405xx.h │ │ │ │ └── stm32f407xx.h │ │ │ └── readme.txt │ │ └── readme.txt │ ├── hal │ │ └── osal │ │ │ ├── rt │ │ │ └── osal.mk │ │ │ ├── nil │ │ │ └── osal.mk │ │ │ └── os-less │ │ │ └── ARMCMx │ │ │ └── osal.mk │ ├── nil │ │ ├── nil.mk │ │ └── ports │ │ │ └── AVR │ │ │ └── compilers │ │ │ └── GCC │ │ │ └── mk │ │ │ └── port.mk │ ├── rt │ │ └── ports │ │ │ ├── ARMCMx │ │ │ └── cmsis_os │ │ │ │ └── cmsis_os.mk │ │ │ ├── AVR │ │ │ └── compilers │ │ │ │ └── GCC │ │ │ │ └── mk │ │ │ │ └── port.mk │ │ │ ├── SIMIA32 │ │ │ └── compilers │ │ │ │ └── GCC │ │ │ │ └── port.mk │ │ │ └── ARM │ │ │ └── compilers │ │ │ └── GCC │ │ │ └── mk │ │ │ └── port_generic.mk │ └── various │ │ ├── cpp_wrappers │ │ └── chcpp.mk │ │ ├── fatfs_bindings │ │ ├── readme.txt │ │ └── fatfs.mk │ │ └── lwip_bindings │ │ └── readme.txt └── ext │ └── readme.txt ├── blackmagic └── target │ └── flashstub │ └── nrf51.stub ├── motor └── motor.mk ├── comm ├── comm.mk └── comm_usb_serial.h ├── hwconf ├── teamtriforceuk │ ├── a100s_v4 │ │ └── hw_a100s_v4.h │ ├── a50s_v23 │ │ ├── hw_a50s_v23_6s.h │ │ ├── hw_a50s_v23_8s.h │ │ ├── hw_a50s_v23_12s.h │ │ └── hw_a50s_v23_20s.h │ ├── a50s_v23c │ │ ├── hw_a50s_v23c_12s.h │ │ └── hw_a50s_v23c_8s.h │ └── a50s_v22 │ │ ├── hw_a50s_v22_6s.h │ │ ├── hw_a50s_v22_12s.h │ │ ├── hw_a50s_v22_6s_hg.h │ │ └── hw_a50s_v22_12s_hg.h ├── stormcore │ ├── 60D │ │ ├── hw_stormcore_60d.h │ │ ├── hw_stormcore_60dxs.h │ │ ├── hw_stormcore_60d+.h │ │ ├── hw_stormcore_60d_no_limits.h │ │ ├── hw_stormcore_60dxs_no_limits.h │ │ └── hw_stormcore_60d+_no_limits.h │ └── 100D │ │ ├── hw_stormcore_100d.h │ │ ├── hw_stormcore_100dx.h │ │ ├── hw_stormcore_100d_v2.h │ │ ├── hw_stormcore_100d_no_limits.h │ │ ├── hw_stormcore_100d_parallel.h │ │ ├── hw_stormcore_100dx_no_limits.h │ │ ├── hw_stormcore_100dx_parallel.h │ │ └── hw_stormcore_100d_v2_no_limits.h ├── example │ └── README.md └── luna │ ├── m600 │ └── qmlui_luna_m600.h │ └── bbshd │ └── qmlui_luna_bbshd.h ├── stm32-bv_openocd.cfg ├── .travis.yml ├── driver └── lora │ └── lora.h ├── .gitignore ├── applications ├── applications.mk ├── er │ └── er_qml.h └── finn │ └── finn_qml.h ├── encoder └── encoder.mk └── qmlui └── hw └── qmlui_example_hw.h /lispBM/lispBM/.gitattributes: -------------------------------------------------------------------------------- 1 | *.html linguist-generated=true -------------------------------------------------------------------------------- /lispBM/lispBM/tests/qc/cabal.project: -------------------------------------------------------------------------------- 1 | packages: ./*.cabal -------------------------------------------------------------------------------- /lispBM/lispBM/.clang_complete: -------------------------------------------------------------------------------- 1 | -I./include 2 | -I/usr/include -------------------------------------------------------------------------------- /lispBM/lispBM/mktags.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | ctags -e -R * 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_char_0.lisp: -------------------------------------------------------------------------------- 1 | (check (= \#c \#c)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_eq_4.lisp: -------------------------------------------------------------------------------- 1 | (check (eq 1.2 1.2)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_eq_5.lisp: -------------------------------------------------------------------------------- 1 | (check (eq 1u32 1u32)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_eq_6.lisp: -------------------------------------------------------------------------------- 1 | (check (eq 1i32 1i32)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_hex_0.lisp: -------------------------------------------------------------------------------- 1 | (check (= 0xFF 0xFF)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_quote_0.lisp: -------------------------------------------------------------------------------- 1 | (check (eq 'x 'x)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_arith_13.lisp: -------------------------------------------------------------------------------- 1 | (check (= (mod 4 2) 0)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_arith_14.lisp: -------------------------------------------------------------------------------- 1 | (check (= (mod 5 2) 1)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_arith_16.lisp: -------------------------------------------------------------------------------- 1 | (check (= (+ -1 -1) -2)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_arith_17.lisp: -------------------------------------------------------------------------------- 1 | (check (= (+ -1 1) 0)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_arith_18.lisp: -------------------------------------------------------------------------------- 1 | (check (= (- -1 1) -2)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_arith_19.lisp: -------------------------------------------------------------------------------- 1 | (check (= (- 1 -1) 2)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_arith_20.lisp: -------------------------------------------------------------------------------- 1 | (check (= 3i (+ 1u 2i))) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_arith_7.lisp: -------------------------------------------------------------------------------- 1 | (check (= (* 2 4) 8)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_arith_8.lisp: -------------------------------------------------------------------------------- 1 | (check (= (* 2 2 2) 8)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_dot1.lisp: -------------------------------------------------------------------------------- 1 | (check (= (car '(1 . 2)) 1)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_dot2.lisp: -------------------------------------------------------------------------------- 1 | (check (= (cdr '(1 . 2)) 2)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_eq_3.lisp: -------------------------------------------------------------------------------- 1 | (check (= 2 2)) 2 | 3 | 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_list_5.lisp: -------------------------------------------------------------------------------- 1 | (check (eq (list) nil)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_logic_6.lisp: -------------------------------------------------------------------------------- 1 | (check (= (and 1 2 3) 3)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_logic_8.lisp: -------------------------------------------------------------------------------- 1 | (check (eq (not nil) t)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_logic_9.lisp: -------------------------------------------------------------------------------- 1 | (check (eq (not t) nil)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_num_not_eq_3.lisp: -------------------------------------------------------------------------------- 1 | (check (not (!= 1))) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_read_0.lisp: -------------------------------------------------------------------------------- 1 | (check (= (read "1") 1)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_arith_1.lisp: -------------------------------------------------------------------------------- 1 | (check (= (+ 1 (- 1)) 0)) 2 | 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_arith_10.lisp: -------------------------------------------------------------------------------- 1 | (check (= (* 2 (- 4)) (- 8))) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_arith_11.lisp: -------------------------------------------------------------------------------- 1 | (check (= (/ 4 2) 2) ) 2 | 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_arith_12.lisp: -------------------------------------------------------------------------------- 1 | (check (= (/ 8 2 2 2) 1)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_arith_2.lisp: -------------------------------------------------------------------------------- 1 | (check (= (+ 1 0xf) 16u)) 2 | 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_arith_23.lisp: -------------------------------------------------------------------------------- 1 | (check (= -3i64 (- 3i64))) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_arith_24.lisp: -------------------------------------------------------------------------------- 1 | (check (= (mod 1100 256) 76)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_arith_9.lisp: -------------------------------------------------------------------------------- 1 | (check (= (* 5.2 4.0) 20.8)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_car_0.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq (car 1) nil)) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_cdr_0.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq (cdr 1) nil)) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_extension_1.lisp: -------------------------------------------------------------------------------- 1 | (check (eq (ext-odd 1) t)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_logic_1.lisp: -------------------------------------------------------------------------------- 1 | (check (eq (and 't 't) 't)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_logic_2.lisp: -------------------------------------------------------------------------------- 1 | (check (eq (or 't 'nil) 't)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_logic_5.lisp: -------------------------------------------------------------------------------- 1 | (check (= (or 'nil 'nil 1) 1)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_not_eq_1.lisp: -------------------------------------------------------------------------------- 1 | (check (not-eq 'apa 'bepa)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_not_eq_3.lisp: -------------------------------------------------------------------------------- 1 | (check (not (not-eq 'apa))) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_num_not_eq_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (!= 1 0)) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_progn_0.lisp: -------------------------------------------------------------------------------- 1 | (check (= (progn 1 2 3) 3)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_progn_5.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq (progn) nil)) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_rest_0.lisp: -------------------------------------------------------------------------------- 1 | (check (= (rest '(1 . 2)) 2)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_symbol_0.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq 'apa 'apa)) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/runinfer.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | make clean 4 | infer run -- make 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_arith_22.lisp: -------------------------------------------------------------------------------- 1 | (check (= 3u64 (+ 1u64 2u64))) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_arith_3.lisp: -------------------------------------------------------------------------------- 1 | (check (= (+ 4u32 7u32) 11u32)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_arith_4.lisp: -------------------------------------------------------------------------------- 1 | (check (= (+ 7u32 (- 7u32)) 0u32)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_arith_5.lisp: -------------------------------------------------------------------------------- 1 | (check (= (+ 4i32 7i32) 11i32)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_arith_6.lisp: -------------------------------------------------------------------------------- 1 | (check (= (+ 7i32 (- 7i32)) 0i32)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_array_syntax_8.lisp: -------------------------------------------------------------------------------- 1 | (check (eq [1 2 3] [1 2 3])) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_car_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq (car '(1 . 2)) 1)) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_car_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq (car [1 2 3]) nil)) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_cdr_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq (cdr '(1 . 2)) 2)) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_cdr_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq (cdr [1 2 3 4]) nil)) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_eq_0.lisp: -------------------------------------------------------------------------------- 1 | (check (eq "hello" "hello")) 2 | 3 | 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_eq_2.lisp: -------------------------------------------------------------------------------- 1 | (check (eq (= 1 2) nil)) 2 | 3 | 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_eval_0.lisp: -------------------------------------------------------------------------------- 1 | (check (= (eval '(+ 1 2)) 3)) 2 | 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_extension_0.lisp: -------------------------------------------------------------------------------- 1 | (check (eq (ext-even 2) t)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_extension_2.lisp: -------------------------------------------------------------------------------- 1 | (check (eq (ext-even 7) nil)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_extension_3.lisp: -------------------------------------------------------------------------------- 1 | (check (eq (ext-odd 6) nil)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_first_0.lisp: -------------------------------------------------------------------------------- 1 | (check (= (first '(1 . 2)) 1) ) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_fn_0.lisp: -------------------------------------------------------------------------------- 1 | (check (= ((fn (x) (+ x 1)) 2) 3)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_ix_0.lisp: -------------------------------------------------------------------------------- 1 | (check (= 7 (ix '(1 2 0 7 3 2 1) 3))) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_ix_1.lisp: -------------------------------------------------------------------------------- 1 | (check (eq nil (ix '(1 2) 100000))) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_ix_2.lisp: -------------------------------------------------------------------------------- 1 | (check (= 45 (ix (iota 100) 45))) 2 | 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_list_4.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (= (length 'nil) 0)) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_logic_3.lisp: -------------------------------------------------------------------------------- 1 | (check (eq (and 'nil 't) 'nil)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_logic_4.lisp: -------------------------------------------------------------------------------- 1 | (check (eq (or 'nil 'nil) 'nil)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_logic_7.lisp: -------------------------------------------------------------------------------- 1 | (check (eq (not (and 1 2 3)) nil)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_nan_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq (is-nan 3.14) nil)) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_nan_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (is-nan (sqrt -1.0f32))) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_not_eq_2.lisp: -------------------------------------------------------------------------------- 1 | (check (not (not-eq 'apa 'apa))) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_num_not_eq_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (not (!= 1 1))) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_progn_6.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq (progn (+ 1 2)) 3)) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_qq_0.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq '(+ 1 2) `(+ 1 2))) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_qq_3.lisp: -------------------------------------------------------------------------------- 1 | (check (= (eval `(+ 1 ,(+ 2 3))) 6)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_qq_4.lisp: -------------------------------------------------------------------------------- 1 | (check (= (eval (eval ``(+ 1 2))) 3)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_quote_1.lisp: -------------------------------------------------------------------------------- 1 | (check (eq '(1 2 3) (list 1 2 3))) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_typeof_1.lisp: -------------------------------------------------------------------------------- 1 | (check (eq (type-of 1u) type-u)) 2 | -------------------------------------------------------------------------------- /tmc/tmc.mk: -------------------------------------------------------------------------------- 1 | TMCSRC = tmc/ic/TMC6200/TMC6200.c 2 | 3 | TMCINC = tmc/ic/TMC6200 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_append_3.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (check (eq (append) nil)) 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_arith_0.lisp: -------------------------------------------------------------------------------- 1 | (check (= (+ 5u 60u) 65u)) 2 | 3 | 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_arith_21.lisp: -------------------------------------------------------------------------------- 1 | (check (= 3i64 (+ 1i64 2i64))) 2 | 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_atomic_0.lisp: -------------------------------------------------------------------------------- 1 | (check ( = (atomic (+ 1 2) (+ 1 2)))) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_def_0.lisp: -------------------------------------------------------------------------------- 1 | (def apa 10) 2 | 3 | (check (= apa 10)) 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_eval_1.lisp: -------------------------------------------------------------------------------- 1 | (check (= (+ 5 (eval '(+ 1 2))) 8)) 2 | 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_eval_3.lisp: -------------------------------------------------------------------------------- 1 | (check (= (eval (eval ''(+ 1 2))) 3)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_list_3.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (= (length (iota 101)) 101)) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_qq_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq `(+ 1 ,(+ 2 3)) '(+ 1 5))) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_read_1.lisp: -------------------------------------------------------------------------------- 1 | (check (= (eval (read "(+ 1 2)")) 3)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_read_4.lisp: -------------------------------------------------------------------------------- 1 | (check (eq (read "[1 2 3 4]") [1 2 3 4])) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_rotate_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq (rotate '() 1) '())) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_typeof_0.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq (type-of 1) type-i)) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_typeof_2.lisp: -------------------------------------------------------------------------------- 1 | (check (eq (type-of 2i32) type-i32)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_typeof_3.lisp: -------------------------------------------------------------------------------- 1 | (check (eq (type-of 2u32) type-u32)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_typeof_4.lisp: -------------------------------------------------------------------------------- 1 | (check (eq (type-of 2i64) type-i64)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_typeof_5.lisp: -------------------------------------------------------------------------------- 1 | (check (eq (type-of 2u64) type-u64)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_typeof_6.lisp: -------------------------------------------------------------------------------- 1 | (check (eq (type-of 3.14) type-float)) 2 | -------------------------------------------------------------------------------- /tests/utils_math/app.h: -------------------------------------------------------------------------------- 1 | #ifndef APP_H 2 | #define APP_H 3 | 4 | #endif // APP_H 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/qc/tests/Regression/Spec.hs: -------------------------------------------------------------------------------- 1 | {-# OPTIONS_GHC -F -pgmF hspec-discover #-} -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_array_0.lisp: -------------------------------------------------------------------------------- 1 | (check (= (bufget-i8 "hello" 3u) \#l)) 2 | 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_define_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define a 3) 3 | 4 | (check (eq a 3)) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_define_3.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | (check (eq (define n 55) 55)) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_eq_1.lisp: -------------------------------------------------------------------------------- 1 | (check (eq (eq "hello" "hell0") nil)) 2 | 3 | 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_eval_2.lisp: -------------------------------------------------------------------------------- 1 | (check (= (+ 5 (eval '(+ 1 2)) 6) 14)) 2 | 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_if_0.lisp: -------------------------------------------------------------------------------- 1 | (check (eq (if (> 0 1) 'apa 'bepa) 'bepa)) 2 | 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_if_1.lisp: -------------------------------------------------------------------------------- 1 | (check (eq (if (< 0 1) 'apa 'bepa) 'apa)) 2 | 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_list_0.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq (list 1 2 3) '(1 2 3))) 3 | 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_logic_10.lisp: -------------------------------------------------------------------------------- 1 | (check (eq (not (not (not (not t)))) t)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_qq_13.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq `(1 append 2) '(1 append 2))) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_qq_5.lisp: -------------------------------------------------------------------------------- 1 | (check (= (eval (eval ``(+ 1 2 ,(+ 1 1 1)))) 6)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_qq_6.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq `(1 2 ,@'(3 4 5)) '(1 2 3 4 5))) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_range_0.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (check (eq (range 5) '(0 1 2 3 4))) 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_range_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (check (eq (range 2 5) '(2 3 4))) 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_range_3.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq (range 10 4) '(9 8 7 6 5 4))) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_typeof_7.lisp: -------------------------------------------------------------------------------- 1 | (check (eq (type-of 3.14f64) type-double)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_underscore_sym_1.lisp: -------------------------------------------------------------------------------- 1 | (check (eq 'read_error 'read_error)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_float_0.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (check (eq (type-of 1.0e3) type-float)) 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_float_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq (type-of 1.0e3f64) type-double)) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_float_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq (type-of 1.0e3f32) type-float)) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_logic_11.lisp: -------------------------------------------------------------------------------- 1 | (check (eq (not (not (not (not (not t))))) nil)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_typeof_8.lisp: -------------------------------------------------------------------------------- 1 | (check (eq (type-of "hello world") type-array)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_append_4.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq (append '(1 2 3 4)) '(1 2 3 4))) 3 | 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_callcc_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (check (eq (call-cc (lambda (k) (k))) 'nil)) 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_define_4.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check t) 3 | (define x 1) 4 | (def a (if x 2 1)) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_high_level_array_4.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq (mkarray 3) (mkarray 3))) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_let_1.lisp: -------------------------------------------------------------------------------- 1 | (check (let ((f (lambda (x) (+ x 1)))) (= (f 33) 34))) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_list_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq (list 1 2 (+ 1 2) 4) '(1 2 3 4))) 3 | 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_numbers_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (ext-numbers 1.0 1.5 1.5 1.0f64 1.5f64)) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_qq_12.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq `(1 2 nil 3 ,nil 4) '(1 2 nil 3 nil 4))) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_qq_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq `(+ 1 (+ 2 ,(+ 3 4))) '(+ 1 (+ 2 7)))) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_read_3.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq (read "\"hello world\"") "hello world")) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_setix_2.lisp: -------------------------------------------------------------------------------- 1 | (check (eq (setix (list 1 2 3 4 5 6 7 8 9) 10 0) 'nil)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_str_join_3.lisp: -------------------------------------------------------------------------------- 1 | (check (eq 2 | (str-join '() "-") 3 | "" 4 | )) -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_take_iota_0.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq (take (iota 1000) 100) (iota 100))) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/runsa.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | make clean 4 | scan-build-14 -o ./static_analysis make -j4 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_append_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq (append '(1 2 3) '(4 5 6)) '(1 2 3 4 5 6))) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_array_syntax_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | (check (= (buflen [1 2 3 4 5 6]) 6)) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_gc_14.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define a 2u32) 3 | 4 | (gc) 5 | 6 | (check (= a 2)) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_numbers_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (ext-numbers 1 1u 1i 1u32 1i32 1u64 1i64)) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_progn_2.lisp: -------------------------------------------------------------------------------- 1 | (check (= (progn (define a 10) (define b 20) (+ a b)) 30)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_qq_15.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq `(1 2 3 ,@(range 4 10)) '(1 2 3 4 5 6 7 8 9))) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_range_4.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (check (eq (range 10 4) (reverse (range 4 10)))) 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_read_program_9.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq (read-program "(+ 1 2)") '((+ 1 2)))) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_rotate_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq (rotate (list 1 2 3 4) 2) (list 3 4 1 2))) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_arith_15.lisp: -------------------------------------------------------------------------------- 1 | (check (and (= (/ 2 4) 0) 2 | (= (/ 2 4.0) 0.5))) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_array_1.lisp: -------------------------------------------------------------------------------- 1 | (define a "hello") 2 | 3 | (check (= (bufget-i8 a 3u) \#l)) 4 | 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_compare_0.lisp: -------------------------------------------------------------------------------- 1 | (check (and (eq t (> 1 0)) 2 | (eq nil (< 1 0)))) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_compare_1.lisp: -------------------------------------------------------------------------------- 1 | (check (and (eq t (>= 1 1)) 2 | (eq t (<= 1 1)))) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_compare_2.lisp: -------------------------------------------------------------------------------- 1 | (check (and (eq t (>= 1 0)) 2 | (eq t (<= 0 1)))) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_float_3.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (check (and (< -3.14 3) 4 | (> 3.14 3))) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_float_5.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (and (< -3.14f32 3) 3 | (> 3.14f32 3))) 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_gc_10.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define f1 3.14) 3 | 4 | (gc) 5 | 6 | (check (= f1 3.14)) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_logic_12.lisp: -------------------------------------------------------------------------------- 1 | (check (= (and (let ((apa 1)) apa) (let ((bepa 2)) bepa)) 2)) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_map_10.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x) (+ x 1)) 3 | 4 | (check (eq (map f '()) nil)) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_map_11.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x) (+ x 1)) 3 | 4 | (check (eq (map f nil) '())) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_map_12.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x) (+ x 1)) 3 | 4 | (check (eq (map f nil) nil)) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_map_9.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x) (+ x 1)) 3 | 4 | (check (eq (map f '()) '())) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_merge_13.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq (merge (lambda (x y) (< x y)) '(1) '()) '(1))) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_merge_14.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq (merge (lambda (x y) (< x y)) '() '(1)) '(1))) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_random_1.lisp: -------------------------------------------------------------------------------- 1 | (define r (random)) 2 | 3 | (check (eq (type-of r) type-u)) 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_rotate_3.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq (rotate (list 1 2 3 4 5) -2) (list 3 4 5 1 2))) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_setix_0.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq (setix (list 1 2 3 4 5) 2 0) (list 1 2 0 4 5))) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_underscore_sym_0.lisp: -------------------------------------------------------------------------------- 1 | (define apa_bepa 12) 2 | 3 | (check (= apa_bepa 12)) 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/benchmarks/loop_200k.lisp: -------------------------------------------------------------------------------- 1 | 2 | (loop ( (n 200000) ) 3 | (> n 0) 4 | (setq n (- n 1))) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_array_2.lisp: -------------------------------------------------------------------------------- 1 | (check (let ((a "hello")) 2 | (= (bufget-i8 a 3u) \#l))) 3 | 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_compare_3.lisp: -------------------------------------------------------------------------------- 1 | (check (and (eq nil (>= 0 1)) 2 | (eq nil (<= 1 0)))) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_cond_6.lisp: -------------------------------------------------------------------------------- 1 | (let ((x 1)) 2 | (cond ((= x 1) (check 't)) 3 | (t nil))) 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_flat_unflat_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define a (flatten 1)) 3 | 4 | (check (= (unflatten a) 1)) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_float_4.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (check (and (< -3.14f64 3) 4 | (> 3.14f64 3))) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_lambda_0.lisp: -------------------------------------------------------------------------------- 1 | (define f (lambda (x) (+ x 1))) 2 | 3 | (check (= (f 78) 79)) 4 | 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_lambda_1.lisp: -------------------------------------------------------------------------------- 1 | (define f (lambda (x y) (+ x y))) 2 | 3 | (check (= (f 2 3) 5)) 4 | 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_let_4.lisp: -------------------------------------------------------------------------------- 1 | (check (let ((a 4)) 2 | (let ((b 4)) 3 | (= a b)))) 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_list_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define l '(1 2 3 4 5 6 7 8)) 3 | 4 | (check (= (length l) 8)) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_setq_0.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (def a 10) 4 | 5 | (setq a 100) 6 | 7 | (check (= a 100)) 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_setq_5.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | { 4 | (var a 10) 5 | (setq a 100) 6 | (check (= a 100)) 7 | } 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_undefine_7.lisp: -------------------------------------------------------------------------------- 1 | (define a 10) 2 | 3 | (undefine 'kurt) 4 | 5 | (check (= a 10)) 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_word_size.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (or (= (word-size 4)) 3 | (= (word-size 8)))) 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_array_syntax_14.lisp: -------------------------------------------------------------------------------- 1 | 2 | (def arr [1 2 3 4 5 6 7]) 3 | 4 | (check (= (buflen arr) 7)) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_define_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (and (= 3 (define bepa 3) ) 3 | (= bepa 3))) 4 | 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_eval_program_5.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define prg '()) 3 | 4 | (check (eq (eval-program prg) 'nil)) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_lambda_2.lisp: -------------------------------------------------------------------------------- 1 | (define f (lambda (x y z) x)) 2 | 3 | (check (= (f 10 11 12) 10)) 4 | 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_lambda_3.lisp: -------------------------------------------------------------------------------- 1 | (define f (lambda (x y z) y)) 2 | 3 | (check (= (f 10 11 12) 11)) 4 | 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_lambda_4.lisp: -------------------------------------------------------------------------------- 1 | (define f (lambda (x y z) z)) 2 | 3 | (check (= (f 10 11 12) 12)) 4 | 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_let_5.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (let ((a 5)) 3 | (let ((a 7)) 4 | (= a 7)))) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_move_to_flash_3.lisp: -------------------------------------------------------------------------------- 1 | (def a 1.2) 2 | (move-to-flash a) 3 | (+ a 1.1) 4 | 5 | (check t) 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/doc/images/t.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/lispBM/lispBM/doc/images/t.png -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_array_extensions_6.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define arr (bufcreate 16)) 3 | 4 | (check (= 16 (buflen arr))) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_array_syntax_15.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define arr [1 2 3 4 5 6 7 8]) 3 | 4 | (check (= (buflen arr) 8)) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_array_syntax_16.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define arr [ 1 2 3 4 5 6 ]) 3 | 4 | (check (= (buflen arr) 6)) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_array_syntax_3.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define arr [1 2 3 4 5 6]) 3 | 4 | (check (= (bufget-i8 arr 4) 5)) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_callcc_5.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (check (eq (progn 4 | (call-cc (lambda (k) (k))) 'nil))) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_flat_unflat_3.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define a (flatten "hej")) 3 | 4 | (check (eq (unflatten a) "hej")) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_gc_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define a (list 1 2 3 4)) 3 | 4 | (gc) 5 | 6 | (check (eq a (list 1 2 3 4))) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_hof_1.lisp: -------------------------------------------------------------------------------- 1 | (check (let ((f (lambda () (lambda (x) (+ x 1))))) 2 | (= ((f) 1) 2))) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_let_0.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (let ((x 1) 3 | (y 2)) 4 | (= (+ x y) 3))) 5 | 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_mail_1.lisp: -------------------------------------------------------------------------------- 1 | (send (self) 1) 2 | 3 | (recv ((? x) (define a1 x))) 4 | 5 | (check (= a1 1)) 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_progn_1.lisp: -------------------------------------------------------------------------------- 1 | (check (= (let ((a 5)) 2 | (progn (let ((a 3)) a) (+ a 10)) 15))) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_read_program_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (= 1 (eval-program (read-program "(+ 1 2) (- 3 2)")))) 3 | 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_rest_args_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x) (rest-args)) 3 | 4 | 5 | 6 | (check (eq (f 1) nil)) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_setix_1.lisp: -------------------------------------------------------------------------------- 1 | (check (eq (setix (list 1 2 3 4 5 6 7 8 9) 0 100) (list 100 2 3 4 5 6 7 8 9))) 2 | -------------------------------------------------------------------------------- /lispBM/lispBM/vesc_express_tests/test_1.lisp: -------------------------------------------------------------------------------- 1 | (start-test "test_should_fail") 2 | 3 | (check (= 1 0)) 4 | 5 | (end-test) 6 | -------------------------------------------------------------------------------- /tmc/ic/TMC6200/TMC6200_Fields.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/tmc/ic/TMC6200/TMC6200_Fields.h -------------------------------------------------------------------------------- /imu/Fusion/LICENSE: -------------------------------------------------------------------------------- 1 | This software is provided under the GNU General Public License. 2 | 3 | https://www.gnu.org/licenses/gpl.html 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/doc/Makefile: -------------------------------------------------------------------------------- 1 | all: 2 | doxygen 3 | 4 | 5 | 6 | publish: 7 | cp -r html ../../svenssonjoel.github.com/lbmdoc 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/doc/images/list.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/lispBM/lispBM/doc/images/list.png -------------------------------------------------------------------------------- /lispBM/lispBM/doc/images/list0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/lispBM/lispBM/doc/images/list0.png -------------------------------------------------------------------------------- /lispBM/lispBM/doc/images/pair.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/lispBM/lispBM/doc/images/pair.png -------------------------------------------------------------------------------- /lispBM/lispBM/doc/images/test.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/lispBM/lispBM/doc/images/test.png -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_deconstruct_let_0.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (check (let (( (a . b) '(1 . 77) )) 4 | (= (+ a b) 78))) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_hof_2.lisp: -------------------------------------------------------------------------------- 1 | (check (let ((f (lambda (y) (lambda (x) (+ x y))))) 2 | (=((f 2) 1) 3))) 3 | 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_let_2.lisp: -------------------------------------------------------------------------------- 1 | (check (let ((f (lambda (x) (if (= x 0) 0 (+ x (f (- x 1))))))) (= (f 10) 55))) 2 | 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_str_join_2.lisp: -------------------------------------------------------------------------------- 1 | (check (eq 2 | (str-join '("ab" "cde" "f") "---") 3 | "ab---cde---f" 4 | )) -------------------------------------------------------------------------------- /lispBM/lispBM/vesc_express_tests/test_0.lisp: -------------------------------------------------------------------------------- 1 | (start-test "(+ 1 2)") 2 | 3 | 4 | (check (= (+ 1 2) 3)) 5 | 6 | 7 | (end-test) 8 | -------------------------------------------------------------------------------- /util/utils.h: -------------------------------------------------------------------------------- 1 | #ifndef UTILS_H_ 2 | #define UTILS_H_ 3 | 4 | #include "utils_sys.h" 5 | #include "utils_math.h" 6 | 7 | #endif 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/benchmarks/fibonacci.lisp: -------------------------------------------------------------------------------- 1 | (let ((fib (lambda (n) (if (> 2 n) n (+ (fib (- n 1)) (fib (- n 2))))))) 2 | (fib 23)) 3 | 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/doc/images/millions.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/lispBM/lispBM/doc/images/millions.png -------------------------------------------------------------------------------- /lispBM/lispBM/mascot/lispbm_llama.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/lispBM/lispBM/mascot/lispbm_llama.png -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_array_syntax_17.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define arr [1 2 3 4 5 6 7 8 9 10 11]) 3 | 4 | (check (= (buflen arr) 11)) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_comments_0.lisp: -------------------------------------------------------------------------------- 1 | ; Test comment 2 | (define a (+ 1 2)) 3 | ; Another test comment 4 | (check (= a 3)) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_let_12.lisp: -------------------------------------------------------------------------------- 1 | (check (let ((f (lambda (x) (if (= x 0) 0 (f (- x 1)))))) 2 | (= (f 2) 0))) 3 | 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_move_to_flash_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x) (+ x 1)) 3 | 4 | (move-to-flash f) 5 | 6 | (check (= (f 1) 2)) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_rest_args_5.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x) 3 | (+ x (rest-args 2))) 4 | 5 | (check (= (f 1 2 3 4 5 6) 5)) 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_share_const_array_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (def a (const-prg)) 3 | 4 | (check (= (eval (read (const-prg))) 10)) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_tailrec_0.lisp: -------------------------------------------------------------------------------- 1 | (define f (lambda (n) (if (= n 0) 0 (f (- n 1))))) 2 | 3 | (check (= (f 100000) 0)) 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/videos/sum150_rgb_2.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/lispBM/lispBM/videos/sum150_rgb_2.mp4 -------------------------------------------------------------------------------- /lispBM/lispBM/benchmarks/bench_chibi/flash.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | openocd -f stm32f407g.cfg -c "program ./build/lisp_test.elf verify reset exit" 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/benchmarks/tail_call_200k.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define f (lambda (n) 3 | (if (= n 0) () 4 | (f (- n 1))))) 5 | 6 | (f 200000) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/doc/images/cons_cell.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/lispBM/lispBM/doc/images/cons_cell.png -------------------------------------------------------------------------------- /lispBM/lispBM/doc/images/float_stm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/lispBM/lispBM/doc/images/float_stm.png -------------------------------------------------------------------------------- /lispBM/lispBM/doc/images/list_1234.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/lispBM/lispBM/doc/images/list_1234.png -------------------------------------------------------------------------------- /lispBM/lispBM/doc/images/millions64.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/lispBM/lispBM/doc/images/millions64.png -------------------------------------------------------------------------------- /lispBM/lispBM/doc/images/snoc_1234.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/lispBM/lispBM/doc/images/snoc_1234.png -------------------------------------------------------------------------------- /lispBM/lispBM/repl/examples/fibonacci.lisp: -------------------------------------------------------------------------------- 1 | (let ((fib (lambda (n) (if (> 2 n) n (+ (fib (- n 1)) (fib (- n 2))))))) 2 | (fib 23)) 3 | 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_lambda_5.lisp: -------------------------------------------------------------------------------- 1 | (define f 2 | (lambda () 3 | (lambda (x) (+ x 1)))) 4 | 5 | (check (= ((f) 1) 2 )) 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_move_to_flash_7.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (define a (list 1)) 4 | (move-to-flash a) 5 | 6 | (check (eq a (list 1))) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_progn_var_14.lisp: -------------------------------------------------------------------------------- 1 | 2 | { 3 | (var a 5) 4 | (var a 10) 5 | (var a 5) 6 | (setq a a) 7 | (check (= a 5)) 8 | } 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_read_program_5.lisp: -------------------------------------------------------------------------------- 1 | (check (let ((r (eval-program (read-program "(+ 50 50)")))) 2 | (= r 100))) 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_refmut_3.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define a 1) 3 | 4 | (define r (setcar a 999)) 5 | 6 | (check (and (not r) (= a 1))) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_refmut_4.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define a 1) 3 | 4 | (define r (setcdr a 999)) 5 | 6 | (check (and (not r) (= a 1))) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_setq_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (define a 10) 4 | 5 | (let ((a 100)) 6 | (setq a 43000)) 7 | 8 | (check (= a 10)) 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_undefine_8.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define a 10) 3 | (define b 20) 4 | 5 | (undefine (list 'a)) 6 | 7 | (check (= b 20)) 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/doc/images/add_one_two.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/lispBM/lispBM/doc/images/add_one_two.png -------------------------------------------------------------------------------- /lispBM/lispBM/doc/images/float_riscv.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/lispBM/lispBM/doc/images/float_riscv.png -------------------------------------------------------------------------------- /lispBM/lispBM/doc/images/float_x86_32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/lispBM/lispBM/doc/images/float_x86_32.png -------------------------------------------------------------------------------- /lispBM/lispBM/doc/images/float_x86_64.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/lispBM/lispBM/doc/images/float_x86_64.png -------------------------------------------------------------------------------- /lispBM/lispBM/doc/images/lbm_arith_pc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/lispBM/lispBM/doc/images/lbm_arith_pc.png -------------------------------------------------------------------------------- /lispBM/lispBM/doc/images/millions_zoom.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/lispBM/lispBM/doc/images/millions_zoom.png -------------------------------------------------------------------------------- /lispBM/lispBM/doc/images/thousands_arm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/lispBM/lispBM/doc/images/thousands_arm.png -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_array_3.lisp: -------------------------------------------------------------------------------- 1 | (define arr (bufcreate 10)) 2 | 3 | (bufset-i8 arr 5 77) 4 | 5 | (check (= (bufget-i8 arr 5) 77)) 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_array_4.lisp: -------------------------------------------------------------------------------- 1 | (define arr (bufcreate 10)) 2 | 3 | (bufset-i8 arr 5 77) 4 | 5 | (check (= (bufget-i8 arr 5) 77)) 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_array_syntax_9.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define arr [0xFF 0x00 0xFF 0x00]) 3 | 4 | (check (= (bufget-u32 arr 0) 0xFF00FF00u32)) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_cond_7.lisp: -------------------------------------------------------------------------------- 1 | (check t) 2 | 3 | (defun test (x) 4 | (cond 5 | ((= x 1) 1) 6 | (t 2) 7 | )) 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_deconstruct_let_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | (check (let (( (a b . c) '(1 100 . 77) )) 5 | (= (+ a b c) 178))) 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_fib_1.lisp: -------------------------------------------------------------------------------- 1 | (check (let ((fib (lambda (n) (if (> 2 n) n (+ (fib (- n 1)) (fib (- n 2))))))) (= (fib 10) 55))) 2 | 3 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_move_to_flash_5.lisp: -------------------------------------------------------------------------------- 1 | 2 | (def arr [1 2 3 4]) 3 | 4 | (move-to-flash arr) 5 | 6 | (check (eq arr [1 2 3 4])) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_qq_8.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define a 10) 3 | 4 | (check (= (let ((b 1)) 5 | (eval `(+ b ,a))) 6 | 11)) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_read_program_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define r 100) 3 | 4 | (check (= r (eval-program (read-program "(+ 50 50)")))) 5 | 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_read_program_4.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define r (eval-program (read-program "(+ 50 50)"))) 3 | 4 | (check (= r 100)) 5 | 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_refmut_5.lisp: -------------------------------------------------------------------------------- 1 | (define a (cons 1 2)) 2 | 3 | (setcar a (cons 7 8)) 4 | 5 | (check (eq a (cons (cons 7 8) 2))) 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_refmut_6.lisp: -------------------------------------------------------------------------------- 1 | (define a (cons 1 2)) 2 | 3 | (setcdr a (cons 7 8)) 4 | 5 | (check (eq a (cons 1 (cons 7 8)))) 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_spawn_3.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x) (+ x 1)) 3 | 4 | (defun g (x) (check (= (f x) (+ x 1)))) 5 | 6 | (spawn g 100) 7 | -------------------------------------------------------------------------------- /ChibiOS_3.0.5/os/ext/CMSIS/ST/stm32f405xx.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/ChibiOS_3.0.5/os/ext/CMSIS/ST/stm32f405xx.h -------------------------------------------------------------------------------- /ChibiOS_3.0.5/os/ext/CMSIS/ST/stm32f407xx.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/ChibiOS_3.0.5/os/ext/CMSIS/ST/stm32f407xx.h -------------------------------------------------------------------------------- /lispBM/lispBM/benchmarks/dec_cnt1.lisp: -------------------------------------------------------------------------------- 1 | (define dec-cnt (lambda (x) 2 | (if (= x 0) 0 (dec-cnt (- x 1))) 3 | )) 4 | 5 | 6 | (dec-cnt 100000) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/benchmarks/dec_cnt2.lisp: -------------------------------------------------------------------------------- 1 | (define dec-cnt2 (lambda (x) 2 | (match x (0 0) (_ (dec-cnt2 (- x 1)))) 3 | )) 4 | 5 | (dec-cnt2 100000) 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/doc/images/float_stm_zoom.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/lispBM/lispBM/doc/images/float_stm_zoom.png -------------------------------------------------------------------------------- /lispBM/lispBM/doc/images/rotate_pos_neg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/lispBM/lispBM/doc/images/rotate_pos_neg.png -------------------------------------------------------------------------------- /lispBM/lispBM/doc/images/sum_of_squares.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/lispBM/lispBM/doc/images/sum_of_squares.png -------------------------------------------------------------------------------- /lispBM/lispBM/doc/images/thousands_riscv.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/lispBM/lispBM/doc/images/thousands_riscv.png -------------------------------------------------------------------------------- /lispBM/lispBM/mascot/lispbm_llama_small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/lispBM/lispBM/mascot/lispbm_llama_small.png -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_array_19.lisp: -------------------------------------------------------------------------------- 1 | (define arr (array-create 10)) 2 | 3 | (bufset-i8 arr 5 77) 4 | 5 | (check (= (bufget-i8 arr 5) 77)) 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_array_6.lisp: -------------------------------------------------------------------------------- 1 | (define arr (bufcreate 10)) 2 | 3 | (bufset-i32 arr 5 77) 4 | 5 | (check (= (bufget-i32 arr 5) 77)) 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_array_7.lisp: -------------------------------------------------------------------------------- 1 | (define arr (bufcreate 10)) 2 | 3 | (bufset-f32 arr 5 3.14) 4 | 5 | (check (= (bufget-f32 arr 5) 3.14)) 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_callcc_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define f (lambda (x) (+ x 1))) 3 | 4 | 5 | 6 | (check (= (f (call-cc (lambda (k) (k 10)))) 11)) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_curly_syntax_0.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f () { 3 | 1 4 | 2 5 | 3 6 | }) 7 | 8 | (check (= (f) 3)) 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_eval_program_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define prg '( (+ 1 2) (+ 3 4) (+ 10 5))) 3 | 4 | 5 | (check (= (eval-program prg) 15)) 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_fib_0.lisp: -------------------------------------------------------------------------------- 1 | (define fib (lambda (n) (if (> 2 n) n (+ (fib (- n 1)) (fib (- n 2)))))) 2 | 3 | (check (= (fib 10) 55)) 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_flat_unflat_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define a (flatten '(1 2u32 3i32 3.0))) 3 | 4 | (check (eq (unflatten a) '(1 2u32 3i32 3.0))) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_progn_var_15.lisp: -------------------------------------------------------------------------------- 1 | { 2 | (var f (lambda (x) (if (= x 0) 0 (f (- x 1))))) 3 | (var a (f 10)) 4 | (check (= a 0)) 5 | } 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_progn_var_16.lisp: -------------------------------------------------------------------------------- 1 | { 2 | (var f 10) 3 | (setq f (lambda (x) (if (= x 0) 0 (f (- x 1))))) 4 | (check (= (f 10) 0)) 5 | } 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_range_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq (let (( a 10)) 3 | (range a (+ a 5))) 4 | '(10 11 12 13 14))) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_read_program_3.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (check (let ((r 100)) 4 | (= r (eval-program (read-program "(+ 50 50)"))))) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_share_const_array_0.lisp: -------------------------------------------------------------------------------- 1 | 2 | (def a (const-prg)) 3 | 4 | (check (= (eval-program (read-program (const-prg))) 11)) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_spawn_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x) (+ x 1)) 3 | 4 | (defun g (x) (check (= (f x) (+ x 1)))) 5 | 6 | (spawn 20 g 100) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_take_2.lisp: -------------------------------------------------------------------------------- 1 | (define ls '(1 2 3 4 5 6 7 8 9 10)) 2 | 3 | (define sub-ls (take ls 100)) 4 | 5 | (check (eq sub-ls ls)) 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_take_3.lisp: -------------------------------------------------------------------------------- 1 | (define ls '(1 2 3 4 5 6 7 8 9 10)) 2 | 3 | (define sub-ls (take ls 0)) 4 | 5 | (check (eq sub-ls nil)) 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/videos/one_minute_heap_vis.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/lispBM/lispBM/videos/one_minute_heap_vis.mp4 -------------------------------------------------------------------------------- /lispBM/lispBM/doc/images/float_riscv_zoom.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/lispBM/lispBM/doc/images/float_riscv_zoom.png -------------------------------------------------------------------------------- /lispBM/lispBM/doc/images/float_x86_32_zoom.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/lispBM/lispBM/doc/images/float_x86_32_zoom.png -------------------------------------------------------------------------------- /lispBM/lispBM/doc/images/lbm_arith_embedded.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/lispBM/lispBM/doc/images/lbm_arith_embedded.png -------------------------------------------------------------------------------- /lispBM/lispBM/doc/images/thousands_arm_zoom.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/lispBM/lispBM/doc/images/thousands_arm_zoom.png -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_array_5.lisp: -------------------------------------------------------------------------------- 1 | (define arr (bufcreate 10)) 2 | 3 | (bufset-u32 arr 5 1234 ) 4 | 5 | (check (= (bufget-u32 arr 5) 1234)) 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_array_syntax_6.lisp: -------------------------------------------------------------------------------- 1 | (define arr (bufcreate 10)) 2 | 3 | (define arr1 [0 0 0 0 0 0 0 0 0 0]) 4 | 5 | (check (eq arr arr1)) 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_atomic_1.lisp: -------------------------------------------------------------------------------- 1 | (define foo (lambda () 2 | (atomic (+ 1 2 3)))) 3 | 4 | (check (= (foo) 6)) 5 | 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_curly_syntax_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | { 3 | (define a 10) 4 | (define b 20) 5 | (define c 30) 6 | } 7 | 8 | (check (= 60 (+ a b c))) 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_curly_syntax_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f () 3 | (let (( a {1 2 3 4 5 6 7} )) 4 | (+ a 100))) 5 | 6 | (check (= (f) 107)) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_drop_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define ls '(1 2 3 4 5 6 7 8 9 10)) 3 | 4 | (define sub-ls (drop ls 10)) 5 | 6 | (check (eq sub-ls nil)) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_dynamic_extension_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (load-inc-i) 3 | 4 | (define a 1) 5 | 6 | (define b (ext-inc-i a)) 7 | 8 | (check (= b 2)) 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_lambda_6.lisp: -------------------------------------------------------------------------------- 1 | (define f (lambda () 2 | (lambda (x) 3 | (+ x 1)))) 4 | 5 | (check (= ((f) 1) 2)) 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_let_6.lisp: -------------------------------------------------------------------------------- 1 | (check (let ((a 4)) 2 | (let ((b 5)) 3 | (let ((c 6)) 4 | (= (+ a b c) 15))))) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_print_value_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (and 3 | (eq (to-str (cons 1 2) "(1 . 2)")) 4 | (eq (to-str 'apa) "apa"))) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_qq_7.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define a 10) 3 | 4 | (check (= (eval (let ((b 1)) 5 | `(+ ,b ,a))) 6 | 11)) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_read_eval_program_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (def prg "(define a 10) (+ a 100)") 3 | 4 | 5 | (check (= (read-eval-program prg) 110)) 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_setq_6.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define f (lambda (x) (+ x 1))) 3 | 4 | { 5 | (var a 10) 6 | (setq a (f 1)) 7 | (check (= a 2)) 8 | } 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_str_join_1.lisp: -------------------------------------------------------------------------------- 1 | (check (eq 2 | (str-join '("ab" "cde" "f")) 3 | (str-join '("ab" "cde" "f") "") 4 | "abcdef" 5 | )) -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_undefine_9.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define a 10) 3 | (define b 20) 4 | 5 | (undefine (list 'a 'kurt 'russel)) 6 | 7 | (check (= b 20)) 8 | -------------------------------------------------------------------------------- /tests/overvoltage_fault/overvoltage_test_v1.ods: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/tests/overvoltage_fault/overvoltage_test_v1.ods -------------------------------------------------------------------------------- /tests/overvoltage_fault/overvoltage_test_v1.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/tests/overvoltage_fault/overvoltage_test_v1.pdf -------------------------------------------------------------------------------- /tests/overvoltage_fault/overvoltage_test_v2.ods: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/tests/overvoltage_fault/overvoltage_test_v2.ods -------------------------------------------------------------------------------- /tests/overvoltage_fault/overvoltage_test_v2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/tests/overvoltage_fault/overvoltage_test_v2.pdf -------------------------------------------------------------------------------- /lispBM/c_libs/examples/ssd1306/Makefile: -------------------------------------------------------------------------------- 1 | TARGET = ssdacc 2 | 3 | SOURCES = code.c 4 | 5 | VESC_C_LIB_PATH=../../ 6 | include $(VESC_C_LIB_PATH)/rules.mk 7 | 8 | -------------------------------------------------------------------------------- /lispBM/c_libs/examples/thread/Makefile: -------------------------------------------------------------------------------- 1 | TARGET = example 2 | 3 | SOURCES = code.c 4 | 5 | VESC_C_LIB_PATH=../../ 6 | include $(VESC_C_LIB_PATH)rules.mk 7 | 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/doc/images/thousands_riscv_zoom.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/lispBM/lispBM/doc/images/thousands_riscv_zoom.png -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_array_8.lisp: -------------------------------------------------------------------------------- 1 | (define arr (bufcreate 10)) 2 | 3 | (bufset-f32 arr 4 3.14f32) 4 | 5 | (check (= (bufget-f32 arr 4) 3.14f32)) 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_drop_3.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define ls '(1 2 3 4 5 6 7 8 9 10)) 3 | 4 | (define sub-ls (drop ls 100)) 5 | 6 | (check (eq sub-ls nil)) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_eval_program_2.lisp: -------------------------------------------------------------------------------- 1 | (define prg '( (eval-program '( (+ 1 2) (+ 2 3) (+ 10 5))))) 2 | 3 | 4 | (check (= (eval-program prg) 15)) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_flat_unflat_4.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define tree '((1 2) (3 4))) 3 | 4 | (define a (flatten tree)) 5 | 6 | (check (eq (unflatten a) tree)) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_hof_0.lisp: -------------------------------------------------------------------------------- 1 | (check (let ((f (lambda (x) (+ x 1))) 2 | (g (lambda (h) (h 1)))) 3 | (= (g f) 2))) 4 | 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_list_6.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define f (lambda () (list 1 2 3 4))) 3 | 4 | (setix (f) 2 77) 5 | 6 | (check (eq (f) (list 1 2 3 4))) 7 | 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_match_7.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq (match (+ 1 2) 3 | ( 3 't) 4 | ( _ 'nil)) 5 | 't)) 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_refmut_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (define a (cons 1 2)) 4 | 5 | (setcar a 199) 6 | 7 | (check (and (= (car a) 199) (= (cdr a) 2))) 8 | 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_refmut_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (define a (cons 1 2)) 4 | 5 | (setcdr a 199) 6 | 7 | (check (and (= (car a) 1) (= (cdr a) 199))) 8 | 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_refmut_7.lisp: -------------------------------------------------------------------------------- 1 | (check (let ((a (cons 1 2))) 2 | (progn (setcar a 10) 3 | (and (= (car a) 10) (= (cdr a) 2))))) 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_refmut_8.lisp: -------------------------------------------------------------------------------- 1 | (check (let ((a (cons 1 2))) 2 | (progn (setcdr a 10) 3 | (and (= (car a) 1) (= (cdr a) 10))))) 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_rest_args_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x) 3 | (map (lambda (y) (+ x y)) (rest-args) )) 4 | 5 | 6 | (check (eq (f 1 1 1) '(2 2))) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_take_1.lisp: -------------------------------------------------------------------------------- 1 | (define ls '(1 2 3 4 5 6 7 8 9 10)) 2 | 3 | (define sub-ls (take ls 5)) 4 | 5 | (check (eq sub-ls '(1 2 3 4 5))) 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_undefine_1.lisp: -------------------------------------------------------------------------------- 1 | (define apa 0) 2 | (setvar 'apa 1) 3 | (define bepa 2) 4 | 5 | (undefine 'apa) 6 | 7 | (check (= bepa 2)) 8 | -------------------------------------------------------------------------------- /lispBM/c_libs/examples/extension/Makefile: -------------------------------------------------------------------------------- 1 | TARGET = example 2 | 3 | SOURCES = code.c 4 | 5 | VESC_C_LIB_PATH=../../ 6 | include $(VESC_C_LIB_PATH)rules.mk 7 | 8 | -------------------------------------------------------------------------------- /lispBM/c_libs/examples/speed_test/Makefile: -------------------------------------------------------------------------------- 1 | TARGET = example 2 | 3 | SOURCES = code.c 4 | 5 | VESC_C_LIB_PATH=../../ 6 | include $(VESC_C_LIB_PATH)rules.mk 7 | 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_array_syntax_5.lisp: -------------------------------------------------------------------------------- 1 | (define arr [1 2 3 4 5 6 7 8 9 10]) 2 | 3 | (define arr1 [1 2 3 4 5 6 7 8 9 10]) 4 | 5 | (check (eq arr arr1)) 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_array_syntax_7.lisp: -------------------------------------------------------------------------------- 1 | (define arr (bufcreate 10)) 2 | 3 | (define arr1 [0 0 0 0 1 0 0 0 0 0]) 4 | 5 | (check (not (eq arr arr1))) 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_cond_5.lisp: -------------------------------------------------------------------------------- 1 | (defun test (x) 2 | (cond 3 | ((= x 1) 1) 4 | (t 2) 5 | )) 6 | 7 | (check (= 1 (test 1))) 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_deconstruct_let_3.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (let (( (a (b0 _ b2) . c) '(1 (100 200 300) . 77) )) 3 | (= (+ a b0 b2 c) 478))) 4 | 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_dot_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define x (vector 1 2 3)) 3 | (define y (vector 1 5 7)) 4 | 5 | (define r (dot x y)) 6 | 7 | (check (= r 32.0)) 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_drop_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define ls '(1 2 3 4 5 6 7 8 9 10)) 3 | 4 | (define sub-ls (drop ls 5)) 5 | 6 | (check (eq sub-ls '(6 7 8 9 10))) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_loop_range_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define n 0) 3 | 4 | 5 | (looprange i 0 11 6 | (define n (+ n i))) 7 | 8 | (check (eq n 55)) 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_match_13.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x y) 3 | (match (cons x y) 4 | ((1 . 2) 'a-symbol))) 5 | 6 | (check (eq (f 1 2) 'a-symbol)) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_match_14.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x y) 3 | (match `(,x . ,y) 4 | ((1 . 2) 'a-symbol))) 5 | 6 | (check (eq (f 1 2) 'a-symbol)) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_progn_var_10.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (progn 4 | (var f (lambda (x) ( + x 1))) 5 | (var a 1) 6 | (check ( = (f a) 2)) 7 | ) 8 | 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_progn_var_6.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check ( = 3 | { 4 | (var (a b) (list 1 2)) 5 | (+ a b) 6 | } 7 | 3)) 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_read_eval_program_3.lisp: -------------------------------------------------------------------------------- 1 | 2 | (def prg "(defun test (x) (if (= x 2) 2 3)) (test 2)") 3 | 4 | (check (= (read-eval-program prg) 2)) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_spawn_4.lisp: -------------------------------------------------------------------------------- 1 | (defun f (a b c) (list a b c)) 2 | 3 | (defun g (a b c) (check (eq (f a b c) (list 1 2 3)))) 4 | 5 | (spawn g 1 2 3) 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_string_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (and (= (buflen "apa") 4) 3 | (= (buflen "bepa") 5) 4 | (= (buflen "kurt1") 6))) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_tailrec_1.lisp: -------------------------------------------------------------------------------- 1 | (define f (lambda (acc n) (if (= n 0) acc (f (+ acc n) (- n 1))))) 2 | 3 | (check ( = (f 0 10000u32) 50005000u32)) 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_undefine_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define apa 1) 3 | (define bepa 0) 4 | (setvar 'bepa 2) 5 | 6 | (undefine 'apa) 7 | 8 | (check (= bepa 2)) 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/videos/sum150_tail_recursive_rgb_0.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/lispBM/lispBM/videos/sum150_tail_recursive_rgb_0.mp4 -------------------------------------------------------------------------------- /lispBM/lispBM/tests/qc/cabalpar.project: -------------------------------------------------------------------------------- 1 | packages: ./*.cabal 2 | 3 | source-repository-package 4 | type: git 5 | location: https://github.com/Rewbert/quickcheck.git -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_array_syntax_4.lisp: -------------------------------------------------------------------------------- 1 | (define arr [1 2 3 4 5 6]) 2 | 3 | 4 | (check (and (= 1 (bufget-u8 arr 0)) 5 | (= 6 (bufget-u8 arr 5)))) 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_atomic_var_0.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (def r (atomic 4 | (var a 10) 5 | (var b 20) 6 | (+ a b))) 7 | 8 | (check (= r 30)) 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_deconstruct_let_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (check (let (( (a (b0 b1 b2) . c) '(1 (100 200 300) . 77) )) 4 | (= (+ a b0 b1 b2 c) 678))) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_deconstruct_let_5.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (let (( (a _ b _ c _ . d) '(1 2 3 4 5 6 . 7) )) 3 | (= (+ a b c d) (+ 1 3 5 7)))) 4 | 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_deconstruct_let_7.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (let (( (a . b) '(1 . 2)) 3 | ( c (+ a b)) ) 4 | (= c 3))) 5 | 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_define_0.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define a 1) 3 | 4 | (define b 2) 5 | 6 | (define f (lambda () (+ a b))) 7 | 8 | (check (= (f) 3)) 9 | 10 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_eval_program_3.lisp: -------------------------------------------------------------------------------- 1 | (define prg (list (eval-program (list (+ 1 2) (+ 2 3) (+ 10 5))))) 2 | 3 | 4 | (check (= (eval-program prg) 15)) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_high_level_array_3.lisp: -------------------------------------------------------------------------------- 1 | 2 | (def a (range 0 10)) 3 | (def b (list-to-array a)) 4 | (def c (array-to-list b)) 5 | 6 | (check (eq a c)) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_high_level_array_5.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define a (list-to-array (list 1 2 3))) 3 | (define b (list-to-array (list 1 2 3))) 4 | 5 | (check (eq a b)) 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_lambda_11.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define f2 (lambda () (lambda (x) (- x 1)))) 3 | 4 | (define f (lambda (n) ((f2) n) )) 5 | 6 | (check (= (f 2) 1)) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_progn_var_4.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f () 3 | (progn 4 | (var a 10) 5 | (var b (+ a 10)) 6 | (+ a b))) 7 | 8 | (check (= (f) 30)) 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_read_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define prg "(define a 10) (define r (+ a 10))") 3 | 4 | (eval-program (read-program prg)) 5 | 6 | (check (= r 20)) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_spawn_2.lisp: -------------------------------------------------------------------------------- 1 | (defun f (a b c) (list a b c)) 2 | 3 | (defun g (a b c) (check (eq (f a b c) (list 1 2 3)))) 4 | 5 | (spawn 20 g 1 2 3) 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_gc_15.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define ls (list 1u32 2u32 3u32 4u32 5u32 6u32)) 3 | 4 | (gc) 5 | 6 | (check (eq ls (list 1u32 2u32 3u32 4u32 5u32 6u32))) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_loop_while_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define n 0) 3 | 4 | (check (= (loopwhile (<= n 10) 5 | (define n (+ n 1))) 6 | 11)) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_merge_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define a '(1)) 3 | (define b '(2)) 4 | 5 | (define cmp (lambda (x y) (< x y))) 6 | 7 | (check (eq (merge cmp a b) '(1 2))) 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_merge_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define a '(2)) 3 | (define b '(1)) 4 | 5 | (define cmp (lambda (x y) (< x y))) 6 | 7 | (check (eq (merge cmp a b) '(1 2))) 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_merge_6.lisp: -------------------------------------------------------------------------------- 1 | (define a '()) 2 | (define b '(1 3)) 3 | 4 | (define cmp (lambda (x y) (< x y))) 5 | 6 | (check (eq (merge cmp a b) '(1 3))) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_partial_1.lisp: -------------------------------------------------------------------------------- 1 | ;; partial application has been removed 2 | 3 | (define f (lambda (x y z w) (+ x y z w))) 4 | 5 | (check (= (f 1 2 3 4) 10)) 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_partial_2.lisp: -------------------------------------------------------------------------------- 1 | ;; Partial application has been removed 2 | 3 | (define f (lambda (x y z w) (+ x y z w))) 4 | 5 | (check (= (f 1 2 3 4) 10)) 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_read_eval_program_2.lisp: -------------------------------------------------------------------------------- 1 | (def prg "(defun test (x) (cond ((= x 1) 1) (t 2))) (test 1)") 2 | 3 | 4 | (check (= (read-eval-program prg) 1)) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_setq_4.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x) { 3 | (var a 10) 4 | (setq a 100) 5 | (+ x a) 6 | }) 7 | 8 | (check (= (f 1) 101)) 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_vector_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (def vec (list-to-vector '(1 2 3))) 4 | (def lis (vector-to-list vec)) 5 | 6 | 7 | (check (eq lis '(1.0 2.0 3.0))) 8 | -------------------------------------------------------------------------------- /tests/utils_math/ch.h: -------------------------------------------------------------------------------- 1 | #ifndef CH_H 2 | #define CH_H 3 | 4 | typedef int systime_t; 5 | typedef struct { 6 | uint32_t *p_stklimit; 7 | } thread_t; 8 | #endif // CH_H 9 | -------------------------------------------------------------------------------- /blackmagic/target/flashstub/nrf51.stub: -------------------------------------------------------------------------------- 1 | 0x2300, 0x2601, 0x4D06, 0x1AC9, 0x18C4, 0x429A, 0xD800, 0xBE00, 0x58CF, 0x6027, 0x682C, 0x4234, 0xD0FC, 0x3304, 0xE7F4, 0x46C0, 0xE400, 0x4001, -------------------------------------------------------------------------------- /lispBM/c_libs/examples/custom_data_comm/Makefile: -------------------------------------------------------------------------------- 1 | TARGET = example 2 | 3 | SOURCES = code.c buffer.c 4 | 5 | VESC_C_LIB_PATH=../../ 6 | include $(VESC_C_LIB_PATH)rules.mk 7 | 8 | -------------------------------------------------------------------------------- /lispBM/c_libs/examples/ws2812/Makefile: -------------------------------------------------------------------------------- 1 | TARGET = ws2812 2 | 3 | SOURCES = code.c 4 | 5 | USE_STLIB = yes 6 | VESC_C_LIB_PATH=../../ 7 | include $(VESC_C_LIB_PATH)rules.mk 8 | 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/benchmarks/dec_cnt3.lisp: -------------------------------------------------------------------------------- 1 | (define dec-cnt3 (lambda (x) 2 | (if (> x 0) (dec-cnt3 (- (- (- (- (- (- (- x 1) 1) 1) 1) 1) 1) 1)) 0) 3 | )) 4 | 5 | (dec-cnt3 100000) 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/doc/manual/ch3_examples/hello.lisp: -------------------------------------------------------------------------------- 1 | (defun sleep (x) 2 | (yield (* x 1000000))) 3 | 4 | (defun hello () 5 | (progn 6 | (sleep 10) 7 | (print "hello"))) 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/repl/convpng.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | 4 | for f in *.raw 5 | do 6 | res=${f%.raw}.png 7 | convert -depth 8 -size 64x64+0 rgb:$f -scale 512x512 $res 8 | done 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_high_level_array_6.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define a (list-to-array (list 1 2 3))) 3 | (define b (list-to-array (list 3 2 1))) 4 | 5 | (check (not (eq a b))) 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_loop_foreach_1.lisp: -------------------------------------------------------------------------------- 1 | (define n 0) 2 | 3 | (loopforeach i '(0 1 2 3 4 5 6 7 8 9 10) 4 | (define n (+ n i))) 5 | 6 | (check (eq n 55)) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_match_0.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define f (lambda (x) 3 | (match x ( (apa (? x)) (+ x 10)) 4 | ( (? x) x)))) 5 | 6 | (check (= (f '(apa 10)) 20)) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_match_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define f (lambda (x) 3 | (match x ( (apa (? x)) (+ x 10)) 4 | ( (? x) 10)))) 5 | 6 | (check (= (f '(foo 3)) 10)) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_merge_5.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define a '(2 4)) 3 | (define b '()) 4 | 5 | (define cmp (lambda (x y) (< x y))) 6 | 7 | (check (eq (merge cmp a b) '(2 4))) 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_progn_var_3.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (defun f () 4 | (progn 5 | (var a 10) 6 | (var b 20) 7 | (+ a b))) 8 | 9 | (check (= (f) 30)) 10 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_undefine_0.lisp: -------------------------------------------------------------------------------- 1 | (define apa 1) 2 | (define bepa 2) 3 | (define cepa 3) 4 | 5 | (undefine 'apa) 6 | (undefine 'cepa) 7 | 8 | (check (= bepa 2)) 9 | -------------------------------------------------------------------------------- /ChibiOS_3.0.5/os/hal/osal/rt/osal.mk: -------------------------------------------------------------------------------- 1 | # OSAL files. 2 | OSALSRC += ${CHIBIOS}/os/hal/osal/rt/osal.c 3 | 4 | # Required include directories 5 | OSALINC += ${CHIBIOS}/os/hal/osal/rt 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_array_extensions_5.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define arr (bufcreate 16)) 3 | 4 | (free arr) 5 | 6 | (check (and (eq (car arr) nil) 7 | (eq (cdr arr) nil))) 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_flat_unflat_5.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define tree '(("hello" "kurt") ("russel" "rules"))) 3 | 4 | (define a (flatten tree)) 5 | 6 | (check (eq (unflatten a) tree)) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_loop_for_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define n 0) 3 | 4 | 5 | (check (= (loopfor i 0 (<= i 10) (+ i 1) 6 | (define n (+ n i))) 7 | 55)) 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_merge_3.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define a '(1 3)) 3 | (define b '(2 4)) 4 | 5 | (define cmp (lambda (x y) (< x y))) 6 | 7 | (check (eq (merge cmp a b) '(1 2 3 4))) 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_merge_4.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define a '(2 4)) 3 | (define b '(1 3)) 4 | 5 | (define cmp (lambda (x y) (< x y))) 6 | 7 | (check (eq (merge cmp a b) '(1 2 3 4))) 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_partial_0.lisp: -------------------------------------------------------------------------------- 1 | ;; Partial application has been removed 2 | 3 | (define f (lambda (x y z w) (+ x y z w))) 4 | 5 | (check (= (f 1 2 3 4) 10)) 6 | 7 | 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_str_from_n_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (gc) 3 | 4 | (define n (mem-num-free)) 5 | 6 | (str-from-n 132) 7 | 8 | (gc) 9 | 10 | (check (= n (mem-num-free))) 11 | -------------------------------------------------------------------------------- /ChibiOS_3.0.5/os/hal/osal/nil/osal.mk: -------------------------------------------------------------------------------- 1 | # OSAL files. 2 | OSALSRC += ${CHIBIOS}/os/hal/osal/nil/osal.c 3 | 4 | # Required include directories 5 | OSALINC += ${CHIBIOS}/os/hal/osal/nil 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_assoc_0.lisp: -------------------------------------------------------------------------------- 1 | (define alist (list '(1 . a) '(2 . b) '(3 . c) '(4 . d))) 2 | 3 | (check (and (eq (assoc alist 3) 'c) 4 | (eq (assoc alist 1) 'a))) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_cossa_0.lisp: -------------------------------------------------------------------------------- 1 | (define alist (list '(1 . a) '(2 . b) '(3 . c) '(4 . d))) 2 | 3 | (check (and (eq (cossa alist 'c) 3) 4 | (eq (cossa alist 'a) 1))) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_lambda_7.lisp: -------------------------------------------------------------------------------- 1 | (define f (lambda () 2 | (let ((a 1)) 3 | (lambda (x) 4 | (+ x a))))) 5 | 6 | (check (= ((f) 1) 2)) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_merge_7.lisp: -------------------------------------------------------------------------------- 1 | (define a '(1)) 2 | (define b '(2 3 4 5 6)) 3 | 4 | (define cmp (lambda (x y) (< x y))) 5 | 6 | (check (eq (merge cmp a b) '(1 2 3 4 5 6))) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_merge_8.lisp: -------------------------------------------------------------------------------- 1 | (define a '(2 3 4 5 6)) 2 | (define b '(1)) 3 | 4 | (define cmp (lambda (x y) (< x y))) 5 | 6 | (check (eq (merge cmp a b) '(1 2 3 4 5 6))) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_merge_9.lisp: -------------------------------------------------------------------------------- 1 | (define a '(1 2 3 4 5 6)) 2 | (define b '(7)) 3 | 4 | (define cmp (lambda (x y) (< x y))) 5 | 6 | (check (eq (merge cmp a b) '(1 2 3 4 5 6 7))) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_move_to_flash_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x) (+ x 1)) 3 | 4 | (def a '(1 2 3 4 5 6)) 5 | 6 | (move-to-flash f a) 7 | 8 | (check (eq (map f a) '(2 3 4 5 6 7))) 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_progn_3.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define f 3 | (lambda (x) 4 | (if (= x 0) 5 | 0 6 | (+ x (f (- x 1)))))) 7 | 8 | (check (= (progn (define a 5) (f a) ) 15)) 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_qq_10.lisp: -------------------------------------------------------------------------------- 1 | 2 | (let ((b 101)) 3 | (defun f (a) 4 | `(+ ,b ,a))) 5 | 6 | 7 | (check (and (= (eval (f 1)) 102) 8 | (= (eval (f 100)) 201))) 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_qq_9.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (a) 3 | (let ((b 101)) 4 | `(+ ,b ,a))) 5 | 6 | 7 | (check (and (= (eval (f 1)) 102) 8 | (= (eval (f 100)) 201))) 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_tailrec_2.lisp: -------------------------------------------------------------------------------- 1 | (define sum (lambda (s ls) (if (eq ls nil) s (sum (+ s (car ls)) (cdr ls))))) 2 | 3 | (check ( = (sum 0 (list 2.0 2.0 1.0 1.0 3.0 3.0)) 12.0)) 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_variable_0.lisp: -------------------------------------------------------------------------------- 1 | (define #apa 10) 2 | (define #bepa 20) 3 | (define #cepa 30) 4 | 5 | (check (and (= #bepa 20) 6 | (= (+ #apa #bepa #cepa) 60))) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/benchmarks/q2.lisp: -------------------------------------------------------------------------------- 1 | (define q2 (lambda (x y) 2 | (if (or (< x 1) (< y 1)) 1 3 | (+ (q2 (- x (q2 (- x 1) y)) y) 4 | (q2 x (- y (q2 x (- y 1)))))))) 5 | 6 | (q2 6 7) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_assoc_1.lisp: -------------------------------------------------------------------------------- 1 | (define alist (list '(p . a) '(q . b) '(r . c) '(s . d))) 2 | 3 | (check (and (eq (assoc alist 'q) 'b) 4 | (eq (assoc alist 's) 'd))) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_cossa_1.lisp: -------------------------------------------------------------------------------- 1 | (define alist (list '(p . a) '(q . b) '(r . c) '(s . d))) 2 | 3 | (check (and (eq (cossa alist 'b) 'q) 4 | (eq (cossa alist 'd) 's))) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_gc_5.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define tree '(((1 . 2) . (3 . 4)) . ((5 . 6) . (7 . 8 )))) 3 | 4 | (gc) 5 | 6 | (check (eq tree '(((1 . 2) . (3 . 4)) . ((5 . 6) . (7 . 8 ))))) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_let_9.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (let ((f (lambda (x) 3 | (let ((f (lambda (x) (+ x 10)))) 4 | (f 100))))) 5 | (= (f 0) 110))) 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_match_15.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x y) 3 | (match (cons x y) 4 | ((1 . 2) 'a-symbol) 5 | ( _ 'whatever))) 6 | 7 | (check (eq (f 1 4) 'whatever)) 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_merge_10.lisp: -------------------------------------------------------------------------------- 1 | (define a '(7)) 2 | (define b '(1 2 3 4 5 6)) 3 | 4 | (define cmp (lambda (x y) (< x y))) 5 | 6 | (check (eq (merge cmp a b) '(1 2 3 4 5 6 7))) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_move_to_flash_4.lisp: -------------------------------------------------------------------------------- 1 | (defun test (a b) 2 | (cond 3 | ((= a 0) a) 4 | (t b) 5 | )) 6 | 7 | (move-to-flash test) 8 | (check (= (test 10 2) 2)) 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_read_program_8.lisp: -------------------------------------------------------------------------------- 1 | (defun f (x) 2 | (+ x (eval-program (read-program "(+ 100 150)")))) 3 | 4 | 5 | (check (and (= (f 1) 251) 6 | (= (f 2) 252))) 7 | -------------------------------------------------------------------------------- /motor/motor.mk: -------------------------------------------------------------------------------- 1 | CSRC += \ 2 | motor/foc_math.c \ 3 | motor/mc_interface.c \ 4 | motor/mcpwm.c \ 5 | motor/mcpwm_foc.c \ 6 | motor/virtual_motor.c 7 | 8 | INCDIR += motor 9 | 10 | -------------------------------------------------------------------------------- /ChibiOS_3.0.5/os/nil/nil.mk: -------------------------------------------------------------------------------- 1 | # List of all the ChibiOS/NIL kernel files. 2 | KERNSRC = ${CHIBIOS}/os/nil/src/nil.c 3 | 4 | # Required include directories 5 | KERNINC = ${CHIBIOS}/os/nil/include 6 | -------------------------------------------------------------------------------- /comm/comm.mk: -------------------------------------------------------------------------------- 1 | CSRC += \ 2 | comm/commands.c \ 3 | comm/comm_usb_serial.c \ 4 | comm/comm_usb.c \ 5 | comm/comm_can.c \ 6 | comm/packet.c \ 7 | comm/log.c 8 | 9 | INCDIR += comm 10 | 11 | -------------------------------------------------------------------------------- /hwconf/teamtriforceuk/a100s_v4/hw_a100s_v4.h: -------------------------------------------------------------------------------- 1 | #ifndef HW_A100S_V4_H_ 2 | #define HW_A100S_V4_H_ 3 | 4 | #define HW_A100S_V4 5 | 6 | #include "hw_a100s_v4_core.h" 7 | 8 | #endif /* HW_A100S_V4_H_ */ 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_gc_8.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define arr1 [1 2 3 4]) 3 | (define arr2 [5 6 7 8]) 4 | (define tree (cons arr1 arr2)) 5 | 6 | (gc) 7 | 8 | (check (eq tree '([1 2 3 4] . [5 6 7 8]))) 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_if_3.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define test (lambda (x) 3 | (if x 4 | 'something))) 5 | 6 | (check (and (eq (test 't) 'something) 7 | (eq (test 'nil) 'nil))) 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_match_8.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define f (lambda (x) (+ x 2))) 3 | 4 | (check (eq (match (f 1) 5 | ( 3 't) 6 | ( _ 'nil)) 7 | 't)) 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_mutual_rec_0.lisp: -------------------------------------------------------------------------------- 1 | (check (let ((f (lambda (x) (if (= x 0) 0 (g (- x 1))))) 2 | (g (lambda (x) (if (= x 0) 1 (f (- x 1)))))) 3 | (= (f 11) 1))) 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_mutual_rec_1.lisp: -------------------------------------------------------------------------------- 1 | (check (let ((f (lambda (x) (if (= x 0) 0 (g (- x 1))))) 2 | (g (lambda (x) (if (= x 0) 1 (f (- x 1)))))) 3 | (= (f 10) 0))) 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_progn_var_0.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (defun t1 () 4 | (progn 5 | 1 6 | (var x 10) 7 | 2 8 | (var y 5) 9 | (+ x y))) 10 | 11 | (check (= (t1) 15)) 12 | -------------------------------------------------------------------------------- /stm32-bv_openocd.cfg: -------------------------------------------------------------------------------- 1 | source [find interface/stlink-v2.cfg] 2 | source [find target/stm32f4x_stlink.cfg] 3 | 4 | # use hardware reset, connect under reset 5 | reset_config srst_only srst_nogate 6 | 7 | -------------------------------------------------------------------------------- /lispBM/c_libs/examples/config/Makefile: -------------------------------------------------------------------------------- 1 | TARGET = config 2 | 3 | SOURCES = code.c conf/buffer.c conf/confparser.c conf/confxml.c 4 | 5 | VESC_C_LIB_PATH=../../ 6 | include $(VESC_C_LIB_PATH)rules.mk 7 | 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_callcc_6.lisp: -------------------------------------------------------------------------------- 1 | 2 | (let ((r '(1 2 3 4))) 3 | (def result (eq r (call-cc (fn (k) (define cc k)))))) 4 | 5 | (gc) 6 | 7 | (cc '(1 2 3 4)) 8 | 9 | (check result) 10 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_let_3.lisp: -------------------------------------------------------------------------------- 1 | (check (let ((x 0) 2 | (f (lambda (y) (+ y x))) 3 | (g (lambda (x) (+ x 1)))) 4 | (eq (list (f 10) (g 10)) '(10 11)))) 5 | 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_range_5.lisp: -------------------------------------------------------------------------------- 1 | (range 100) 2 | (range 100) 3 | (range 100) 4 | (range 100) 5 | (range 100) 6 | (range 100) 7 | (range 100) 8 | (check (eq (range 10) '(0 1 2 3 4 5 6 7 8 9))) 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_eval_program_4.lisp: -------------------------------------------------------------------------------- 1 | (define prg (list (eval-program (list (+ 1 2) (+ 2 3) (+ 10 5))))) 2 | (define r (+ 100 (eval-program prg))) 3 | 4 | 5 | (check (= (eval-program prg) 15)) 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_macro_0.lisp: -------------------------------------------------------------------------------- 1 | (define defun (macro (name args body) 2 | `(define ,name (lambda ,args ,body)))) 3 | 4 | (defun f (x y) (+ x y)) 5 | 6 | (check (= (f 1 2) 3)) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_trap_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (define a (match (trap (/ 1 0)) 4 | ( (exit-error (? err)) 10) 5 | ( (exit-ok (? v )) v))) 6 | 7 | (check (= a 10)) 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_trap_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (define a (match (trap (+ 1 0)) 4 | ( (exit-error (? err)) 10) 5 | ( (exit-ok (? v )) v))) 6 | 7 | (check (= a 1)) 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_append_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (eq (append '(1) 3 | '(2 3) 4 | '(4 5 6) 5 | '(7 8 9 10)) 6 | '(1 2 3 4 5 6 7 8 9 10))) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_gc_4.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (define a (cons 1 2)) 4 | (define b (cons 3 4)) 5 | 6 | (define tree (cons a b)) 7 | 8 | (gc) 9 | 10 | (check (eq tree '( (1 . 2) . (3 . 4) ))) 11 | 12 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_let_11.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (check (let ((a (lambda (x) (if (= x 0) 1 (a (- x 1)))))) 4 | (let ((a (lambda (x) (if (= x 0) 2 (a ( - x 1)))))) 5 | (= (a 1) 2)))) 6 | 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_partial_5.lisp: -------------------------------------------------------------------------------- 1 | ;;Partial applciation has been removed 2 | 3 | ;;(let ((apa 2)) 4 | ;; (defun f (x y z w) (+ apa x y z w))) 5 | 6 | ;;(check (= ((f 1) 2 3 4) 12)) 7 | 8 | (check t) 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_progn_var_5.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x) { 3 | (var a 10) 4 | (var b 20) 5 | (var a 100) 6 | (+ a b x) 7 | }) 8 | 9 | (check (= (f 1) 121)) 10 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_qq_11.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (a) 3 | `(+ b ,a)) 4 | 5 | 6 | (check (let ((b 101)) 7 | (and (= (eval (f 1)) 102) 8 | (= (eval (f 100)) 201)))) 9 | 10 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_receive_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | (send (self) '(apa 129)) 5 | 6 | (check (= (recv 7 | ( (bepa (? x)) 'bepa) 8 | ( (apa (? x)) x)) 9 | 129)) 10 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_setvar_let_1.lisp: -------------------------------------------------------------------------------- 1 | (define q 10) 2 | 3 | (define b (let ((a 2)) 4 | (progn 5 | (setvar 'a q) 6 | a))) 7 | 8 | 9 | (check (= b 10)) 10 | -------------------------------------------------------------------------------- /hwconf/stormcore/60D/hw_stormcore_60d.h: -------------------------------------------------------------------------------- 1 | #ifndef HW_STORMCORE_60D_H_ 2 | #define HW_STORMCORE_60D_H_ 3 | 4 | #define HW_VER_IS_60D 5 | 6 | #include "hw_stormcore_60d_core.h" 7 | 8 | #endif /* HW_STORMCORE_60D_H_ */ 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_event_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | (event-register-handler (self)) 5 | 6 | 7 | (spawn (fn () 8 | (event-sym 'apa))) 9 | 10 | 11 | 12 | (check (recv ((? x) (eq x 'apa)))) 13 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_list_7.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define f (lambda () (list '(a . 1) '(b . 2) '(c . 3) '(d . 4)))) 3 | 4 | (setassoc (f) 'b 77) 5 | 6 | (check (eq (f) (list '(a . 1) '(b . 2) '(c . 3) '(d . 4)))) 7 | 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_map_0.lisp: -------------------------------------------------------------------------------- 1 | ;;(define map (lambda (f xs) (if (eq xs nil) nil (cons (f (car xs)) (map f (cdr xs)))))) 2 | 3 | (check (eq (map (lambda (x) (+ x 1)) (list 1 2 3 4 5)) (list 2 3 4 5 6))) 4 | 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_match_5.lisp: -------------------------------------------------------------------------------- 1 | (define f (lambda (ls) 2 | (match ls 3 | ( nil 0 ) 4 | ( (?cons c) (+ (car c) (f (cdr c)))) 5 | ( ? 'error-not-a-list)))) 6 | 7 | (check (= (f '()) 0)) 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_progn_var_7.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x) (cons x (+ x 1))) 3 | 4 | 5 | (defun g (x) 6 | { 7 | (var (a . b) (f x)) 8 | (+ a b) 9 | } 10 | ) 11 | 12 | (check (= (g 3) 7)) 13 | -------------------------------------------------------------------------------- /ChibiOS_3.0.5/os/hal/osal/os-less/ARMCMx/osal.mk: -------------------------------------------------------------------------------- 1 | # OSAL files. 2 | OSALSRC += ${CHIBIOS}/os/hal/osal/os-less/ARMCMx/osal.c 3 | 4 | # Required include directories 5 | OSALINC += ${CHIBIOS}/os/hal/osal/os-less/ARMCMx 6 | -------------------------------------------------------------------------------- /hwconf/stormcore/100D/hw_stormcore_100d.h: -------------------------------------------------------------------------------- 1 | #ifndef HW_STORMCORE_100D_H_ 2 | #define HW_STORMCORE_100D_H_ 3 | 4 | #define HW_VER_IS_100D 5 | 6 | #include "hw_stormcore_100d_core.h" 7 | 8 | #endif /* HW_STORMCORE_100D_H_ */ 9 | -------------------------------------------------------------------------------- /hwconf/stormcore/60D/hw_stormcore_60dxs.h: -------------------------------------------------------------------------------- 1 | #ifndef HW_STORMCORE_60DX_H_ 2 | #define HW_STORMCORE_60DX_H_ 3 | 4 | #define HW_VER_IS_60D_XS 5 | 6 | #include "hw_stormcore_60d_core.h" 7 | 8 | #endif /* HW_STORMCORE_60DX_H_ */ 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/doc/manual/ch3_examples/hello_repeater.lisp: -------------------------------------------------------------------------------- 1 | (defun sleep (x) 2 | (yield (* x 1000000))) 3 | 4 | (defun hello () 5 | (progn 6 | (sleep 10) 7 | (print "hello") 8 | (hello))) 9 | 10 | 11 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_array_syntax_0.lisp: -------------------------------------------------------------------------------- 1 | (define arr [0 1 2 3 4 5 6 7 8 9 10 11]) 2 | 3 | (check (and (= (bufget-u8 arr 0) 0) 4 | (= (bufget-u8 arr 7) 7) 5 | (= (bufget-u8 arr 11) 11))) 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_cossa_3.lisp: -------------------------------------------------------------------------------- 1 | (define alist (list '(1 . a) '(2 . b) '(3 . c) '(4 . d))) 2 | 3 | (setassoc 'alist 3 'e) 4 | 5 | (check (and (eq (cossa alist 'c) 3) 6 | (eq (cossa alist 'a) 1))) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_ix_3.lisp: -------------------------------------------------------------------------------- 1 | (define apa '(1 2 3 4 5 6 7 8 9 10)) 2 | 3 | 4 | (check (and (= (ix apa -10) 1) 5 | (= (ix apa 0) 1) 6 | (= (ix apa -9) 2) 7 | (= (ix apa 1) 2))) 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_ix_4.lisp: -------------------------------------------------------------------------------- 1 | (define apa '(1 2 3 4 5 6 7 8 9 10)) 2 | 3 | 4 | (check (and (= (ix apa -6) 5) 5 | (= (ix apa 4) 5) 6 | (= (ix apa -4) 7) 7 | (= (ix apa 6) 7))) 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_lambda_8.lisp: -------------------------------------------------------------------------------- 1 | (define f (lambda () 2 | (let ((a 1)) 3 | (lambda (x) 4 | (let ((b a)) 5 | (+ x b)))))) 6 | 7 | (check (= ((f) 1) 2)) 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_progn_7.lisp: -------------------------------------------------------------------------------- 1 | (check (progn 2 | (define f (lambda (x) 3 | (if (= x 0) 4 | 't 5 | (f (- x 1))))) 6 | (f 1))) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_progn_var_8.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | { 5 | (var (a b . cs) (list 1 2 3 4 5 6 7 8)) 6 | 7 | (check (and (= a 1) 8 | (= b 2) 9 | (eq cs (list 3 4 5 6 7 8)))) 10 | } 11 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_setvar_let_0.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun q () 10) 3 | 4 | (define b (let ((a 2)) 5 | (progn 6 | (setvar 'a (q)) 7 | a))) 8 | 9 | 10 | (check (= b 10)) 11 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_str_find_1.lisp: -------------------------------------------------------------------------------- 1 | (check (= 2 | (str-find "ab ab" "ab" 0 1) 3 | (str-find "ab ab" "ab" -1 'left) 4 | (str-find "ab ab" "ab" -4) 5 | (str-find [1 1 1 2 3] [2 3 0] 3) 6 | 3 7 | )) -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_symbol_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | (check (eq (type-of 'abcdefghabcdefghabcdefghabcdefghabcdefghabcdefghabcdefghabcdefghabcdefghabcdefghabcdefghabcdefghabcdefghabcdefghabcdefghabcdefgh) type-symbol)) 5 | -------------------------------------------------------------------------------- /hwconf/stormcore/100D/hw_stormcore_100dx.h: -------------------------------------------------------------------------------- 1 | #ifndef HW_STORMCORE_100DX_H_ 2 | #define HW_STORMCORE_100DX_H_ 3 | 4 | #define HW_VER_IS_100DX 5 | 6 | #include "hw_stormcore_100d_core.h" 7 | 8 | #endif /* HW_STORMCORE_100DX_H_ */ 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/benchmarks/tak.lisp: -------------------------------------------------------------------------------- 1 | (define tak (lambda (x y z) 2 | (if (not (< y x)) 3 | z 4 | (tak 5 | (tak (- x 1) y z) 6 | (tak (- y 1) z x) 7 | (tak (- z 1) x y))))) 8 | 9 | (tak 18 12 6) 10 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_array_syntax_10.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (define arr [0xDE 0xAD 0xBE 0xEF 0xFF 0x00 0xFF 0x00]) 4 | 5 | (check (and (= (bufget-u32 arr 0) 0xDEADBEEFu32) 6 | (= (bufget-u32 arr 4) 0xFF00FF00u32))) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_assoc_3.lisp: -------------------------------------------------------------------------------- 1 | (define alist (list '(1 . a) '(2 . b) '(3 . c) '(4 . d))) 2 | 3 | (setassoc 'alist 3 'e) 4 | 5 | (check (and (eq (assoc alist 3) 'c) 6 | (eq (assoc alist 1) 'a))) 7 | 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_gc_11.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define v (list 1 2 3 4)) 3 | (define fv (flatten v)) 4 | 5 | (gc) 6 | 7 | (check (and 8 | (eq (unflatten fv) (list 1 2 3 4)) 9 | (eq v (list 1 2 3 4)))) 10 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_map_13.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (defun f (y) 4 | (let ( (x 100)) 5 | (+ y x))) 6 | 7 | 8 | (def f1 (lambda (ls) (map f ls))) 9 | 10 | 11 | (check (eq (f1 (list 1 2 3)) (list 101 102 103))) 12 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_match_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define f (lambda (ls) 3 | (match ls 4 | ( nil 0 ) 5 | ( ((? x) . (? xs)) (+ x (f xs))) 6 | ( _ 'error-not-a-list)))) 7 | 8 | (check (= (f '(1 2 3 4)) 10)) 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_partial_3.lisp: -------------------------------------------------------------------------------- 1 | ;; Partial application has been removed 2 | 3 | ;(define f (lambda (x y z w) (+ x y z w))) 4 | 5 | ;(define g (f 1 2)) 6 | 7 | ;(check (= (g 3 4) 10)) 8 | 9 | (check t) 10 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_map_5.lisp: -------------------------------------------------------------------------------- 1 | (define ls (list (list 1 2 3) (list 2 3 4) (list 3 4 5))) 2 | (define rs (list (list 3 2 1) (list 4 3 2) (list 5 4 3))) 3 | 4 | (defun f (x) (+ x 1)) 5 | 6 | (check (eq (map reverse ls) rs)) 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_partial_4.lisp: -------------------------------------------------------------------------------- 1 | ;; Partial application has been removed 2 | 3 | ;;(define f (lambda (x y z w) (+ x y z w))) 4 | 5 | ;;(define g (f 1 2)) 6 | 7 | ;;(check (= ((g 3) 4) 10)) 8 | 9 | (check t) 10 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_progn_var_11.lisp: -------------------------------------------------------------------------------- 1 | 2 | (progn 3 | (var f (lambda (x) 4 | (if (= 0 x) 0 5 | (+ x (f (- x 1)))))) 6 | 7 | (var a 10) 8 | (check ( = (f a) 55)) 9 | ) 10 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_rest_args_3.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (defun f (x) 4 | (lambda (y) (rest-args))) 5 | 6 | 7 | (define g (f 1 2 3 4 5)) 8 | 9 | (check (and (eq (g 1) '(2 3 4 5)) 10 | (eq (g 1 2) '(2)))) 11 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_spawn_wait_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define t1 (lambda (x) 3 | (+ x 1))) 4 | 5 | 6 | 7 | (check (let ((id (spawn t1 0))) 8 | (progn 9 | (wait id) 10 | 'true))) 11 | -------------------------------------------------------------------------------- /ChibiOS_3.0.5/os/rt/ports/ARMCMx/cmsis_os/cmsis_os.mk: -------------------------------------------------------------------------------- 1 | # List of the ChibiOS/RT CMSIS RTOS wrapper. 2 | CMSISRTOSSRC = ${CHIBIOS}/os/rt/ports/ARMCMx/cmsis_os/cmsis_os.c 3 | 4 | CMSISRTOSINC = ${CHIBIOS}/os/rt/ports/ARMCMx/cmsis_os 5 | -------------------------------------------------------------------------------- /hwconf/example/README.md: -------------------------------------------------------------------------------- 1 | # Example Hardware File 2 | 3 | This hardware-file is similar to the later VESC6 and can be adapted for your custom hardware. Some information on how to do that will hopefully be added to this README later. 4 | 5 | -------------------------------------------------------------------------------- /hwconf/stormcore/100D/hw_stormcore_100d_v2.h: -------------------------------------------------------------------------------- 1 | #ifndef HW_STORMCORE_100D_V2_H_ 2 | #define HW_STORMCORE_100D_V2_H_ 3 | 4 | #define HW_VER_IS_100D_V2 5 | 6 | #include "hw_stormcore_100d_core.h" 7 | 8 | #endif /* HW_STORMCORE_100D_V2_H_ */ 9 | -------------------------------------------------------------------------------- /hwconf/stormcore/60D/hw_stormcore_60d+.h: -------------------------------------------------------------------------------- 1 | #ifndef HW_STORMCORE_60D_PLUS_H_ 2 | #define HW_STORMCORE_60D_PLUS_H_ 3 | 4 | #define HW_VER_IS_60D_PLUS 5 | 6 | #include "hw_stormcore_60d_core.h" 7 | 8 | #endif /* HW_STORMCORE_60D_PLUS_H_ */ 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_gc_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define a (list 1 2 3 4)) 3 | (define b (list a 'x 'y 'z)) 4 | 5 | (gc) 6 | 7 | (check (and 8 | (eq a (list 1 2 3 4)) 9 | (eq b (list (list 1 2 3 4) 'x 'y 'z)))) 10 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_if_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define test (lambda (f x) 3 | (if (f x) 4 | x 5 | (test f (- x 1))))) 6 | 7 | (check (= (test (lambda (x) (< x 0)) 2) -1)) 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_mail_4.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define f (lambda () 3 | (progn 4 | (recv (_ nil)) 5 | (f)))) 6 | 7 | 8 | (spawn f) 9 | 10 | 11 | (yield 10000) 12 | (check (= 1 1)) 13 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_map_7.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x) (+ x 1)) 3 | 4 | 5 | 6 | (define ls (list (list 1 2 3) (range 2 5))) 7 | (define rs '((2 3 4) (3 4 5))) 8 | 9 | (check (eq (map (lambda (xs) (map f xs)) ls) rs)) 10 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_match_3.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define f (lambda (ls) 3 | (match ls 4 | ( nil 0 ) 5 | ( ( (? c) . (? cd)) (+ c (f c))) 6 | ( _ 'error-not-a-list)))) 7 | 8 | (check (eq (f 'kurt) 'error-not-a-list)) 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_print_value_3.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (and 3 | (eq (read (to-str 'hello)) 'hello) 4 | (eq (read (to-str '(+ 1 2))) '(+ 1 2)) 5 | (eq (read (to-str '(1 2 3 (4 5 6)))) '(1 2 3 (4 5 6))))) 6 | 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/test_reports/version_0.24.0/scan-build/2024-04-28-134646-49849-1/sorttable.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/lispBM/lispBM/test_reports/version_0.24.0/scan-build/2024-04-28-134646-49849-1/sorttable.js -------------------------------------------------------------------------------- /lispBM/lispBM/test_reports/version_0.25.0/scan-build/2024-07-23-152344-239046-1/sorttable.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/lispBM/lispBM/test_reports/version_0.25.0/scan-build/2024-07-23-152344-239046-1/sorttable.js -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_built_in_loop_0.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define a 0) 3 | 4 | (loop ( (i 0) ) 5 | ( <= i 10 ) 6 | { 7 | (setq a (+ a i) ) 8 | (setq i (+ i 1) ) 9 | }) 10 | 11 | 12 | (check (= a 55)) 13 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_deconstruct_let_6.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (defun sum (ls) 4 | (if (eq ls nil) 0 5 | (let (( (a . as) ls)) 6 | (+ a (sum as))))) 7 | 8 | 9 | (check (= (sum (list 1 2 3 4 5 6 7 8 9 10)) 55)) 10 | 11 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_move_to_flash_6.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x) 3 | (match x 4 | ( apa 1 ) 5 | ( bepa 2 ))) 6 | 7 | (move-to-flash f) 8 | 9 | (check (and (= (f 'apa) 1) 10 | (= (f 'bepa) 2))) 11 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_nil_1.lisp: -------------------------------------------------------------------------------- 1 | (check (and (eq nil 'nil) 2 | (eq nil '()) 3 | (eq nil ()) 4 | (eq 'nil '()) 5 | (eq 'nil ()) 6 | (eq 'nil nil) 7 | (eq '() ()))) 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_progn_var_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (defun tail-rec (n acc) 4 | (if (= n 0) acc 5 | (progn 6 | (var sum (+ acc n)) 7 | (tail-rec (- n 1) sum)))) 8 | 9 | (check (= (tail-rec 10000 0) 50005000)) 10 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_vector_3.lisp: -------------------------------------------------------------------------------- 1 | 2 | (def v (list-to-vector '(1.0 2.0 3.0 4.0))) 3 | 4 | (check (and (= (vproj v 0) 1.0) 5 | (= (vproj v 1) 2.0) 6 | (= (vproj v 2) 3.0) 7 | (= (vproj v 3) 4.0))) 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/test_reports/version_0.23.0/scan-build/2024-03-09-191247-1858527-1/sorttable.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ClemensElflein/xesc_firmware/HEAD/lispBM/lispBM/test_reports/version_0.23.0/scan-build/2024-03-09-191247-1858527-1/sorttable.js -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_atomic_2.lisp: -------------------------------------------------------------------------------- 1 | (define foo (lambda () 2 | (atomic (+ 1 2 3) 3 | (+ 1 2 4) 4 | (+ 2 4 8) 5 | (+ 3 6 12)))) 6 | 7 | (check (= (foo) 21)) 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_cond_3.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x) 3 | (cond ( (> x 0) 'positive) 4 | ( (< x 0) 'negative))) 5 | 6 | (check (and (eq (f 0) nil) 7 | (eq (f 1) 'positive) 8 | (eq (f -1) 'negative))) 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_map_8.lisp: -------------------------------------------------------------------------------- 1 | (defun f (x) (+ x 1)) 2 | 3 | 4 | (define ls (list (list (list 1 2 3) (range 2 5)))) 5 | (define rs '(((2 3 4) (3 4 5)))) 6 | 7 | (check (eq (map (lambda (ys) (map (lambda (xs) (map f xs)) ys) ls) rs))) 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_read_program_6.lisp: -------------------------------------------------------------------------------- 1 | (check (let ((r (eval-program (read-program "(+ 50 50)"))) 2 | (a (eval-program (read-program "(+ 20 20) (+ 100 150)")))) 3 | (and ( = r 100) 4 | ( = a 250)))) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_read_program_7.lisp: -------------------------------------------------------------------------------- 1 | (check (let ((r 100) 2 | (a 250)) 3 | (and ( = r (eval-program (read-program "(+ 50 50)"))) 4 | ( = a (eval-program (read-program "(+ 20 20) (+ 100 150)")))))) 5 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_saxpy_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (define x (vector 1.0 2.0 3.0)) 4 | (define y (vector 0.1 0.2 0.3)) 5 | (define alpha 2) 6 | 7 | (define r (axpy alpha x y)) 8 | 9 | (check (eq (vector-to-list r) (list 2.1 4.2 6.3))) 10 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_str_find_2.lisp: -------------------------------------------------------------------------------- 1 | (check (= 2 | (str-find "ab ab" "ab" 100) 3 | (str-find "ab ab" "ab" -100 'left) 4 | (str-find "ab" "abab") 5 | (str-find "ab" "abab" 'left) 6 | (str-find "ab ab" '()) 7 | -1 8 | )) -------------------------------------------------------------------------------- /ChibiOS_3.0.5/os/various/cpp_wrappers/chcpp.mk: -------------------------------------------------------------------------------- 1 | # C++ wrapper files. 2 | CHCPPSRC = ${CHIBIOS}/os/various/cpp_wrappers/ch.cpp \ 3 | ${CHIBIOS}/os/various/cpp_wrappers/syscalls_cpp.cpp 4 | 5 | CHCPPINC = ${CHIBIOS}/os/various/cpp_wrappers 6 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_curly_syntax_3.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (defun f (n) 4 | (if (= n 0) 'yay 5 | { 6 | 1 7 | 2 8 | 3 9 | 4 10 | 5 11 | (f (- n 1)) 12 | } 13 | )) 14 | 15 | 16 | (check (eq (f 100) 'yay)) 17 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_event_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | (event-register-handler (self)) 3 | 4 | 5 | (spawn (fn () 6 | (event-array 'apa))) 7 | 8 | 9 | 10 | (check (recv (((? x) . (? arr)) (and (eq x 'apa) (eq arr "hello world"))))) 11 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_map_4.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define ls (list (list 1 2 3) (list 2 3 4) (list 3 4 5))) 3 | (define rs (list (list 2 3 4) (list 3 4 5) (list 4 5 6))) 4 | 5 | (defun f (x) (+ x 1)) 6 | 7 | (check (eq (map (lambda (x) (map f x)) ls) rs)) 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_range_8.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (n) (if (= n 0) 3 | 0 4 | (progn (range 100) (f (- n 1))))) 5 | 6 | ;; Trigger gc lots of times. 7 | (f 100000) 8 | (check (eq (range 10) '(0 1 2 3 4 5 6 7 8 9))) 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_range_9.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (n) (if (= n 0) 3 | 0 4 | (progn (range 5) (f (- n 1))))) 5 | 6 | ;; Trigger gc lots of times. 7 | (f 100000) 8 | (check (eq (range 10) '(0 1 2 3 4 5 6 7 8 9))) 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_rest_args_4.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x) 3 | (let ( (g (lambda (y) (rest-args))) ) 4 | (g 1 2 3 4 5 6) 5 | )) 6 | 7 | 8 | 9 | (check (and (eq (f 1) '(2 3 4 5 6)) 10 | (eq (f 1 2) '(2 3 4 5 6)))) 11 | -------------------------------------------------------------------------------- /lispBM/lispBM/vesc_express_tests/Makefile: -------------------------------------------------------------------------------- 1 | 2 | 3 | IN=$(wildcard *.lisp) 4 | 5 | OUT=$(IN:.lisp=.plisp) 6 | 7 | all: $(OUT) 8 | 9 | %.plisp : %.lisp test_utils.kit 10 | cat test_utils.kit "$<" > $@ 11 | 12 | 13 | clean: 14 | rm *.plisp 15 | -------------------------------------------------------------------------------- /hwconf/stormcore/60D/hw_stormcore_60d_no_limits.h: -------------------------------------------------------------------------------- 1 | #ifndef HW_STORMCORE_60D_NO_LIMITS_H_ 2 | #define HW_STORMCORE_60D_NO_LIMITS_H_ 3 | 4 | #define DISABLE_HW_LIMITS 5 | 6 | #include "hw_stormcore_60d.h" 7 | 8 | #endif /* HW_STORMCORE_60D_NO_LIMITS_H_ */ 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/.travis.yml: -------------------------------------------------------------------------------- 1 | language: c 2 | 3 | addons: 4 | apt: 5 | sources: 6 | - ubuntu-toolchain-r-test 7 | packages: 8 | - gcc-5 9 | - gcc-multilib 10 | 11 | script: 12 | - make 13 | - cd tests; ./run_tests.sh 14 | -------------------------------------------------------------------------------- /lispBM/lispBM/benchmarks/fibonacci_tail.lisp: -------------------------------------------------------------------------------- 1 | (define fib (lambda (n) 2 | (let ((fib0 (lambda (n a b) 3 | (if (= n 0) a 4 | (if (= n 1) b 5 | (fib0 (- n 1) b (+ a b))))))) 6 | (fib0 n 0 1)))) 7 | 8 | 9 | (fib 23) 10 | -------------------------------------------------------------------------------- /lispBM/lispBM/repl/examples/fibonacci_tail.lisp: -------------------------------------------------------------------------------- 1 | (define fib (lambda (n) 2 | (let ((fib0 (lambda (n a b) 3 | (if (= n 0) a 4 | (if (= n 1) b 5 | (fib0 (- n 1) b (+ a b))))))) 6 | (fib0 n 0 1)))) 7 | 8 | 9 | (fib 23) 10 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_assoc_4.lisp: -------------------------------------------------------------------------------- 1 | (def a '( 2 | (test1 . 1) 3 | (test2 . 2) 4 | (test3 . 3) 5 | )) 6 | 7 | (move-to-flash a) 8 | 9 | (check (and (eq (assoc a 'test2) 2) 10 | (eq (cossa a 3) 'test3))) 11 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_built_in_loop_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define a 0) 3 | 4 | 5 | (loop ( (i 10) ) 6 | (> i 0) 7 | { 8 | (var b (+ a i)) 9 | (setq a b) 10 | (setq i (- i 1)) 11 | }) 12 | 13 | (check (= a 55)) 14 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_built_in_loop_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define a 0) 3 | 4 | (loop ( (v '(1 2 3 4 5 6 7 8 9 10)) ) 5 | v 6 | { 7 | (setq a (+ (car v) a)) 8 | (setq v (cdr v)) 9 | }) 10 | 11 | 12 | (check (= a 55)) 13 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_map_6.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x) (+ x 1)) 3 | 4 | (define myfun (lambda (ls) (map f ls))) 5 | 6 | (define ls (list (list 1 2 3) (range 2 5))) 7 | (define rs '((2 3 4) (3 4 5))) 8 | 9 | (check (eq (map myfun ls) rs)) 10 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_match_9.lisp: -------------------------------------------------------------------------------- 1 | (defun test (x) x) 2 | 3 | (check ( = (let ((a 1)) 4 | (match (test 75) 5 | (75 a))) 6 | 1)) 7 | 8 | ;; (= (let ( (a 1) ) 9 | ;; (test a)) 10 | ;; 1) 11 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_progn_var_12.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (define i1 4 | (let ( (apa 5) 5 | (bepa (progn (var apa 10) 6 | (setq apa 7) 7 | apa))) 8 | apa)) 9 | 10 | 11 | (check (= i1 5)) 12 | -------------------------------------------------------------------------------- /ChibiOS_3.0.5/os/ext/CMSIS/readme.txt: -------------------------------------------------------------------------------- 1 | CMSIS is Copyright (C) 2011-2013 ARM Limited. All rights reserved. 2 | 3 | This directory contains only part of the CMSIS package. If you need the whole 4 | package please download it from: 5 | 6 | http://www.arm.com 7 | -------------------------------------------------------------------------------- /hwconf/stormcore/60D/hw_stormcore_60dxs_no_limits.h: -------------------------------------------------------------------------------- 1 | #ifndef HW_STORMCORE_60DX_NO_LIMITS_H_ 2 | #define HW_STORMCORE_60DX_NO_LIMITS_H_ 3 | 4 | #define DISABLE_HW_LIMITS 5 | 6 | #include "hw_stormcore_60dxs.h" 7 | 8 | #endif /* HW_STORMCORE_60DX_NO_LIMITS_H_ */ 9 | -------------------------------------------------------------------------------- /hwconf/teamtriforceuk/a50s_v23/hw_a50s_v23_6s.h: -------------------------------------------------------------------------------- 1 | #ifndef HW_A50S_V23_6S_H_ 2 | #define HW_A50S_V23_6S_H_ 3 | 4 | #define HW_A50S_6S 5 | 6 | #define HW_NAME "a50s_v23_6s" 7 | 8 | #include "hw_a50s_v23_core.h" 9 | 10 | #endif /* HW_A50S_V23_6S_H_ */ 11 | -------------------------------------------------------------------------------- /hwconf/teamtriforceuk/a50s_v23/hw_a50s_v23_8s.h: -------------------------------------------------------------------------------- 1 | #ifndef HW_A50S_V23_8S_H_ 2 | #define HW_A50S_V23_8S_H_ 3 | 4 | #define HW_A50S_8S 5 | 6 | #define HW_NAME "a50s_v23_8s" 7 | 8 | #include "hw_a50s_v23_core.h" 9 | 10 | #endif /* HW_A50S_V23_8S_H_ */ 11 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_block_unblock_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (defun proc1 (pid) 4 | (progn 5 | (block) 6 | (send pid 'im-done))) 7 | 8 | 9 | (def id (spawn proc1 (self))) 10 | (unblock id) 11 | 12 | (check (recv 13 | (im-done 't))) 14 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_let_7.lisp: -------------------------------------------------------------------------------- 1 | (define f (lambda (x) 2 | (let ((a 4)) 3 | (let ((b 5)) 4 | (let ((c 6)) 5 | (if (= x 0) (+ a b c) (f (- x 1)))))))) 6 | 7 | (check (= (f 1000000) 15)) 8 | 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_sort_8.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define r-list '(3 7 12 19 25 8 14 30 5 22 17 11)) 3 | 4 | 5 | (defun f (x) 6 | (if (= x 0) 7 | t 8 | { 9 | (sort > r-list) 10 | (f (- x 1)) 11 | })) 12 | 13 | (check (f 10000)) 14 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_array_9.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define a [ 1 2 3 4 5 6 7 8 9]) 3 | 4 | (defun extract (arr s e) 5 | (let ((f (lambda (arr x) (bufget-u8 arr x)))) 6 | ( map (lambda (x) (f arr x)) (range s e)))) 7 | 8 | (check (eq (extract a 0 4) '(1 2 3 4))) 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_fold_0.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define fold (lambda (f i xs) 3 | (if (eq xs nil) 4 | i 5 | (fold f (f i (car xs)) (cdr xs))))) 6 | 7 | (check (= (fold '+ 0 (list 1 2 3 4 5 6 7 8 9 10)) 55)) 8 | 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_lambda_10.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define f (lambda () 3 | (lambda (n) 4 | (if (= n 0) 5 | 42 6 | ((f) (- n 1)) 7 | )))) 8 | 9 | 10 | (check (= ((f) 1) 42)) 11 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_match_4.lisp: -------------------------------------------------------------------------------- 1 | (define f (lambda (ls) 2 | (match ls 3 | ( nil 0 ) 4 | ( (?cons c) (+ (car c) (f (cdr c)))) 5 | ( _ 'error-not-a-list)))) 6 | 7 | (check (= (f '()) 0)) 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_variable_1.lisp: -------------------------------------------------------------------------------- 1 | (define #apa 10) 2 | (define #bepa 20) 3 | (define #cepa 30) 4 | 5 | (setvar '#apa 1) 6 | (setvar '#bepa 2) 7 | (setvar '#cepa 3) 8 | 9 | (check (and (= #bepa 2) 10 | (= (+ #apa #bepa #cepa) 6))) 11 | -------------------------------------------------------------------------------- /hwconf/stormcore/60D/hw_stormcore_60d+_no_limits.h: -------------------------------------------------------------------------------- 1 | #ifndef HW_STORMCORE_60D_PLUS_NO_LIMITS_H_ 2 | #define HW_STORMCORE_60D_PLUS_NO_LIMITS_H_ 3 | 4 | #define DISABLE_HW_LIMITS 5 | 6 | #include "hw_stormcore_60d+.h" 7 | 8 | #endif /* HW_STORMCORE_60D_PLUS_NO_LIMITS_H_ */ 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_atomic_3.lisp: -------------------------------------------------------------------------------- 1 | (define foo (lambda () 2 | (atomic (progn (+ 1 2 3) 3 | (+ 1 2 4) 4 | (+ 2 4 8) 5 | (+ 3 6 12))))) 6 | 7 | (check (= (foo) 21)) 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_match_10.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (check (= (match "apa" 4 | ("bepa" 0) 5 | ("eepa" 1) 6 | ("kurt" 2) 7 | ("apa" 3) 8 | ("hej" 4)) 9 | 3)) 10 | 11 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_match_guard_0.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x) 3 | (match x 4 | ( _ (<= x 10) (+ x 1)) 5 | ( _ (> x 10) (+ x 100)))) 6 | 7 | 8 | 9 | (check (and (= (f 0) 1) 10 | (= (f 2) 3) 11 | (= (f 11) 111))) 12 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_match_guard_5.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x) 3 | (match x 4 | ( (? x) (eq (type-of x) type-i) 'an-integer) 5 | ( (? x) 'something-else))) 6 | 7 | (check (and (eq (f 23) 'an-integer) 8 | (eq (f 0.3) 'something-else))) 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_progn_var_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun nestled () 3 | (progn 4 | (var a 10) 5 | (var b (progn 6 | (var b 20) 7 | (var a 100) 8 | (+ b a))) 9 | (+ a b))) 10 | 11 | (check (= (nestled) 130)) 12 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_saxpy_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (define x (vector 1.0 2.0 3.0 4.0 5.0)) 4 | (define y (vector 0.1 0.2 0.3 0.4 0.5)) 5 | (define alpha 2) 6 | 7 | (define r (axpy alpha x y)) 8 | 9 | (check (eq (vector-to-list r) (list 2.1 4.2 6.3 8.4 10.5))) 10 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_sort_9.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define r-list '(3 7 12 19 25 8 14 30 5 22 17 11)) 3 | 4 | 5 | (defun f (x) 6 | (if (= x 0) 7 | t 8 | { 9 | (sort > r-list) 10 | (gc) 11 | (f (- x 1)) 12 | })) 13 | 14 | (check (f 100)) 15 | -------------------------------------------------------------------------------- /ChibiOS_3.0.5/os/rt/ports/AVR/compilers/GCC/mk/port.mk: -------------------------------------------------------------------------------- 1 | # List of the ChibiOS/RT AVR port files. 2 | PORTSRC = ${CHIBIOS}/os/rt/ports/AVR/chcore.c 3 | 4 | PORTASM = 5 | 6 | PORTINC = ${CHIBIOS}/os/rt/ports/AVR \ 7 | ${CHIBIOS}/os/rt/ports/AVR/compilers/GCC 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_assoc_2.lisp: -------------------------------------------------------------------------------- 1 | (define alist (list '(p . a) '(q . b) '(r . c) '(s . d))) 2 | 3 | (setvar 'alist (acons 't 'e alist)) 4 | 5 | (check (and (eq (assoc alist 'q) 'b) 6 | (eq (assoc alist 's) 'd) 7 | (eq (assoc alist 't) 'e))) 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_atomic_4.lisp: -------------------------------------------------------------------------------- 1 | (define foo (lambda () 2 | (atomic (progn (+ 1 2 3) 3 | (+ 1 2 4)) 4 | (progn (+ 2 4 8) 5 | (+ 3 6 12))))) 6 | 7 | (check (= (foo) 21)) 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_bitwise_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (check (and (= (bitwise-or 0xF0 0x0F) 0xFF) 4 | (= (bitwise-and 0xF0 0x0F) 0x00) 5 | (= (bitwise-xor 0xF0 0x0F) 0xFF) 6 | (= (shl 0x0F 4) 0xF0) 7 | (= (shr 0xF0 4) 0x0F))) 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_cossa_2.lisp: -------------------------------------------------------------------------------- 1 | (define alist (list '(p . a) '(q . b) '(r . c) '(s . d))) 2 | 3 | (setvar 'alist (acons 't 'e alist)) 4 | 5 | (check (and (eq (cossa alist 'b) 'q) 6 | (eq (cossa alist 'd) 's) 7 | (eq (cossa alist 'e) 't))) 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_match_guard_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x) 3 | (match nil 4 | ( _ (<= x 10) (+ x 1)) 5 | ( _ (> x 10) (+ x 100)))) 6 | 7 | 8 | 9 | (check (and (= (f 0) 1) 10 | (= (f 2) 3) 11 | (= (f 11) 111))) 12 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_matrix_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (def d '(1.0 0.0 0.0 4 | 0.0 1.0 0.0 5 | 0.0 0.0 1.0)) 6 | 7 | (def m (list-to-matrix 3 d)) 8 | 9 | 10 | (def d-new (matrix-to-list m)) 11 | 12 | (check (eq d-new d)) 13 | -------------------------------------------------------------------------------- /util/util.mk: -------------------------------------------------------------------------------- 1 | CSRC += \ 2 | util/buffer.c \ 3 | util/crc.c \ 4 | util/digital_filter.c \ 5 | util/mempools.c \ 6 | util/utils_math.c \ 7 | util/utils_sys.c \ 8 | util/worker.c \ 9 | util/lzo/minilzo.c 10 | 11 | INCDIR += \ 12 | util \ 13 | util/lzo 14 | 15 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: cpp 2 | compiler: gcc 3 | cache: apt 4 | sudo: required 5 | dist: trusty 6 | addons: 7 | apt: 8 | packages: 9 | - gcc-arm-none-eabi 10 | - libnewlib-arm-none-eabi 11 | env: 12 | 13 | script: 14 | - cd build_all && ./rebuild_all 15 | -------------------------------------------------------------------------------- /ChibiOS_3.0.5/os/nil/ports/AVR/compilers/GCC/mk/port.mk: -------------------------------------------------------------------------------- 1 | # List of the ChibiOS/RT AVR port files. 2 | PORTSRC = ${CHIBIOS}/os/nil/ports/AVR/nilcore.c 3 | 4 | PORTASM = 5 | 6 | PORTINC = ${CHIBIOS}/os/nil/ports/AVR \ 7 | ${CHIBIOS}/os/nil/ports/AVR/compilers/GCC 8 | -------------------------------------------------------------------------------- /hwconf/teamtriforceuk/a50s_v23/hw_a50s_v23_12s.h: -------------------------------------------------------------------------------- 1 | #ifndef HW_A50S_V23_12S_H_ 2 | #define HW_A50S_V23_12S_H_ 3 | 4 | #define HW_A50S_12S 5 | 6 | #define HW_NAME "a50s_v23_12s" 7 | 8 | 9 | 10 | #include "hw_a50s_v23_core.h" 11 | 12 | #endif /* HW_A50S_V23_12S_H_ */ 13 | -------------------------------------------------------------------------------- /hwconf/teamtriforceuk/a50s_v23/hw_a50s_v23_20s.h: -------------------------------------------------------------------------------- 1 | #ifndef HW_A50S_V23_20S_H_ 2 | #define HW_A50S_V23_20S_H_ 3 | 4 | #define HW_A50S_20S 5 | 6 | #define HW_NAME "a50s_v23_20s" 7 | 8 | 9 | 10 | #include "hw_a50s_v23_core.h" 11 | 12 | #endif /* HW_A50S_V23_20S_H_ */ 13 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_cond.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (defun f (x) 4 | (cond ( (> x 100) 'lots) 5 | ( (> x 50) 'ok) 6 | ( (> x 0) 'meh))) 7 | 8 | 9 | (check (and (eq (f 101) 'lots) 10 | (eq (f 100) 'ok) 11 | (eq (f 10) 'meh))) 12 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_match_17.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (defun f (x y z) 4 | ( match x 5 | ( apa { (+ y z) (gc) y } ) 6 | ( bepa { (+ y z) (gc) z } ) 7 | )) 8 | 9 | (check (and ( = (f 'apa 10 20) 10) 10 | ( = (f 'bepa 10 20) 20))) 11 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_match_19.lisp: -------------------------------------------------------------------------------- 1 | (defun f (x z) 2 | ( match x 3 | ( (apa (? y)) { (+ y z) (gc) y } ) 4 | ( (bepa (? y)) { (+ y z) (gc) z } ) 5 | )) 6 | 7 | (check (and ( = (f '(apa 10) 20) 10) 8 | ( = (f '(bepa 10) 20) 20))) 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_match_guard_6.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x) 3 | (match x 4 | ( (? x) (< x 5) 'smaller) 5 | ( (? x) (> x 5) 'larger) 6 | ( _ 'whatever))) 7 | 8 | (check (and (eq (f 23) 'larger) 9 | (eq (f 0.3) 'smaller))) 10 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_setq_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (defun f () 4 | (let (( a 0 ) 5 | ( b 2 ) 6 | ( c 3 )) 7 | (progn 8 | (setq a 100) 9 | (setq b 200) 10 | (setq c 300) 11 | (+ a b c)))) 12 | 13 | 14 | (check (= (f) 600)) 15 | -------------------------------------------------------------------------------- /hwconf/teamtriforceuk/a50s_v23c/hw_a50s_v23c_12s.h: -------------------------------------------------------------------------------- 1 | #ifndef HW_A50S_V23C_12S_H_ 2 | #define HW_A50S_V23C_12S_H_ 3 | 4 | #define HW_A50S_12S 5 | 6 | #define HW_NAME "a50s_v23c_12s" 7 | 8 | 9 | 10 | #include "hw_a50s_v23c_core.h" 11 | 12 | #endif /* HW_A50S_V23C_12S_H_ */ 13 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_explicit_gc_0.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define f (lambda (x) 3 | (if (= x 0) 4 | 'done 5 | (progn 6 | (gc) 7 | (f (- x 1)))))) 8 | 9 | 10 | (check (eq (f 100) 'done)) 11 | 12 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_if_4.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define test (lambda () 3 | (if (ext-numbers 1) 4 | (progn 5 | (define a (+ 1 2)) 6 | (define b (+ 2 3)) 7 | (define c (+ 3 4)) 8 | (+ a b c) 9 | )))) 10 | 11 | (check (= (test) 15)) 12 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_match_12.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x) "kurt") 3 | 4 | (check (= (match (f 0) 5 | ("bepa" 0) 6 | ("eepa" 1) 7 | ("kurt" 2) 8 | ("apa" 3) 9 | ("hej" 4)) 10 | 2)) 11 | -------------------------------------------------------------------------------- /ChibiOS_3.0.5/os/rt/ports/SIMIA32/compilers/GCC/port.mk: -------------------------------------------------------------------------------- 1 | # List of the ChibiOS/RT SIMIA32 port files. 2 | PORTSRC = ${CHIBIOS}/os/rt/ports/SIMIA32/chcore.c 3 | 4 | PORTASM = 5 | 6 | PORTINC = ${CHIBIOS}/os/rt/ports/SIMIA32/compilers/GCC \ 7 | ${CHIBIOS}/os/rt/ports/SIMIA32 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_cond_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x) 3 | (cond ( (> x 0) 'positive) 4 | ( (< x 0) 'negative) 5 | ( 't 'zero))) 6 | 7 | (check (and (eq (f 0) 'zero) 8 | (eq (f 1) 'positive) 9 | (eq (f -1) 'negative))) 10 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_spawn_trap_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (define t1 (lambda (x) 4 | (+ x 100))) 5 | 6 | 7 | 8 | (spawn-trap t1 50) 9 | 10 | (check (= (recv ((exit-error (? tid) (? e)) 'error) 11 | ((exit-ok (? tid) (? r)) r)) 12 | 150)) 13 | -------------------------------------------------------------------------------- /hwconf/stormcore/100D/hw_stormcore_100d_no_limits.h: -------------------------------------------------------------------------------- 1 | #ifndef HW_STORMCORE_100D_NO_LIMITS_H_ 2 | #define HW_STORMCORE_100D_NO_LIMITS_H_ 3 | 4 | #define HW_VER_IS_100D 5 | #define DISABLE_HW_LIMITS 6 | 7 | #include "hw_stormcore_100d.h" 8 | 9 | #endif /* HW_STORMCORE_100D_NO_LIMITS_H_ */ 10 | -------------------------------------------------------------------------------- /hwconf/teamtriforceuk/a50s_v22/hw_a50s_v22_6s.h: -------------------------------------------------------------------------------- 1 | #ifndef HW_A50S_V22_6S_H_ 2 | #define HW_A50S_V22_6S_H_ 3 | 4 | #define HW_A50S_6S 5 | 6 | #define HW_NAME "a50s_6s" 7 | #define CURRENT_AMP_GAIN 20.0 8 | 9 | #include "hw_a50s_v22_core.h" 10 | 11 | #endif /* HW_A50S_V22_6S_H_ */ 12 | -------------------------------------------------------------------------------- /lispBM/lispBM/doc/manual/ch3_examples/recv_message.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (defun f () 4 | (progn 5 | (recv 6 | ( monkey (print "That's an ape!")) 7 | ( cat (print "What a cute cat!")) 8 | ( _ (print "I dont know what that is!"))) 9 | (f))) 10 | 11 | (spawn f) 12 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_match_11.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x) "apa") 3 | 4 | (check (= (match (f 0) 5 | ("bepa" 0) 6 | ("eepa" 1) 7 | ("kurt" 2) 8 | ("apa" 3) 9 | ("hej" 4)) 10 | 3)) 11 | 12 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_memory_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (defun repeat (n c) 4 | (if (= n 0) nil 5 | (progn 6 | (c) 7 | (repeat (- n 1) c) 8 | ))) 9 | 10 | 11 | (def n (* 4 (mem-longest-free))) 12 | (repeat 100 (fn () (bufcreate (- n 100)))) 13 | 14 | (check t) 15 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_move_to_flash_0.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (define a 1u32) 4 | (define b 2u64) 5 | (define c 1.0f32) 6 | (define d 2.0f64) 7 | 8 | (move-to-flash a b c d) 9 | 10 | (check (and (= a 1) 11 | (= a 1) 12 | (= c 1.0) 13 | (= d 2.0))) 14 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_spawn_trap_3.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define t1 (lambda (x) 3 | (apa))) 4 | 5 | 6 | 7 | (spawn-trap t1 50) 8 | 9 | (check (eq (recv ((exit-error (? tid) (? e)) e) 10 | ((exit-ok (? tid) (? r)) r)) 11 | variable_not_bound)) 12 | -------------------------------------------------------------------------------- /hwconf/stormcore/100D/hw_stormcore_100d_parallel.h: -------------------------------------------------------------------------------- 1 | #ifndef HW_STORMCORE_100D_PARALLEL_H_ 2 | #define HW_STORMCORE_100D_PARALLEL_H_ 3 | 4 | #define HW_VER_IS_100D 5 | #define HW_HAS_DUAL_PARALLEL 6 | 7 | #include "hw_stormcore_100d_core.h" 8 | 9 | #endif /* HW_STORMCORE_100D_PARALLEL_H_ */ 10 | -------------------------------------------------------------------------------- /hwconf/stormcore/100D/hw_stormcore_100dx_no_limits.h: -------------------------------------------------------------------------------- 1 | #ifndef HW_STORMCORE_100DX_NO_LIMITS_H_ 2 | #define HW_STORMCORE_100DX_NO_LIMITS_H_ 3 | 4 | #define HW_VER_IS_100DX 5 | #define DISABLE_HW_LIMITS 6 | 7 | #include "hw_stormcore_100dx.h" 8 | 9 | #endif /* HW_STORMCORE_100DX_NO_LIMITS_H_ */ 10 | -------------------------------------------------------------------------------- /hwconf/stormcore/100D/hw_stormcore_100dx_parallel.h: -------------------------------------------------------------------------------- 1 | #ifndef HW_STORMCORE_100D_PARALLEL_H_ 2 | #define HW_STORMCORE_100D_PARALLEL_H_ 3 | 4 | #define HW_VER_IS_100DX 5 | #define HW_HAS_DUAL_PARALLEL 6 | 7 | #include "hw_stormcore_100d_core.h" 8 | 9 | #endif /* HW_STORMCORE_100D_PARALLEL_H_ */ 10 | -------------------------------------------------------------------------------- /hwconf/teamtriforceuk/a50s_v22/hw_a50s_v22_12s.h: -------------------------------------------------------------------------------- 1 | #ifndef HW_A50S_V22_12S_H_ 2 | #define HW_A50S_V22_12S_H_ 3 | 4 | #define HW_A50S_12S 5 | 6 | #define HW_NAME "a50s_12s" 7 | #define CURRENT_AMP_GAIN 20.0 8 | 9 | #include "hw_a50s_v22_core.h" 10 | 11 | #endif /* HW_A50S_V22_12S_H_ */ 12 | -------------------------------------------------------------------------------- /hwconf/teamtriforceuk/a50s_v22/hw_a50s_v22_6s_hg.h: -------------------------------------------------------------------------------- 1 | #ifndef HW_A50S_V22_6S_H_ 2 | #define HW_A50S_V22_6S_H_ 3 | 4 | #define HW_A50S_6S 5 | 6 | #define HW_NAME "a50s_6s_hg" 7 | #define CURRENT_AMP_GAIN 50.0 8 | 9 | #include "hw_a50s_v22_core.h" 10 | 11 | #endif /* HW_A50S_V22_6S_HG_H_ */ 12 | -------------------------------------------------------------------------------- /lispBM/lispBM/repl/convmp4.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | 4 | for f in *.raw 5 | do 6 | res=${f%.raw}.png 7 | convert -depth 8 -size 512x512+0 rgb:$f -scale 512x512 $res 8 | done 9 | 10 | 11 | ffmpeg -framerate 200 -pattern_type glob -i '*.png' -c:v libx264 -r 30 -pix_fmt yuv420p out.mp4 12 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_if_5.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (define test (lambda (x) 4 | (progn 5 | (define a (+ 1 2 3 4 5)) 6 | (if x 7 | (progn 8 | (define b 10) 9 | (+ a b)))))) 10 | 11 | (check (and (eq (test 't) 25) 12 | (eq (test 'nil) 'nil))) 13 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_spawn_trap_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (define t1 (lambda (x) 4 | (+ x 100 'apa))) 5 | 6 | 7 | 8 | (spawn-trap t1 50) 9 | 10 | (check (eq (recv ((exit-error (? tid) (? e)) e) 11 | ((exit-ok (? tid) (? r)) r)) 12 | type_error)) 13 | -------------------------------------------------------------------------------- /driver/lora/lora.h: -------------------------------------------------------------------------------- 1 | /* 2 | */ 3 | 4 | #ifndef HWCONF_RFM95W_H_ 5 | #define HWCONF_RFM95W_H_ 6 | 7 | #include "datatypes.h" 8 | #include "SX1278.h" 9 | #include "SX1278_hw.h" 10 | 11 | // Functions 12 | void lora_init(void); 13 | void lora_stop(void); 14 | 15 | #endif /* HWCONF_DRV8301_H_ */ 16 | -------------------------------------------------------------------------------- /hwconf/teamtriforceuk/a50s_v22/hw_a50s_v22_12s_hg.h: -------------------------------------------------------------------------------- 1 | #ifndef HW_A50S_V22_12S_H_ 2 | #define HW_A50S_V22_12S_H_ 3 | 4 | #define HW_A50S_12S 5 | 6 | #define HW_NAME "a50s_12s_hg" 7 | #define CURRENT_AMP_GAIN 50.0 8 | 9 | #include "hw_a50s_v22_core.h" 10 | 11 | #endif /* HW_A50S_V22_12S_HG_H_ */ 12 | -------------------------------------------------------------------------------- /lispBM/lispBM/repl/profile.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | src=$1 4 | 5 | valgrind --toggle-collect=lbm_run_eval --tool=callgrind --callgrind-out-file=cg.out ./repl --terminate -s $src 6 | 7 | gprof2dot -f callgrind cg.out -o cg.dot 8 | 9 | dot -Tpdf cg.dot -o cg.pdf 10 | 11 | rm cg.out 12 | rm cg.dot 13 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_append_5.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (define t1 (lambda () 4 | (append 1))) 5 | 6 | 7 | (spawn-trap t1 50) 8 | 9 | (check (eq (recv ((exit-error (? tid) (? e)) e) 10 | ((exit-ok (? tid) (? r)) r)) 11 | type_error)) 12 | 13 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_match_18.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x) 3 | ( match x 4 | ( (apa (? y) (? z)) { (+ y z) (gc) y } ) 5 | ( (bepa (? y) (? z)) { (+ y z) (gc) z } ) 6 | )) 7 | 8 | (check (and ( = (f '(apa 10 20)) 10) 9 | ( = (f '(bepa 10 20)) 20))) 10 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_move_to_flash_8.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define a 1u32) 3 | (define b 1.0f32) 4 | (define c 1u64) 5 | (define d 1.0f64) 6 | 7 | 8 | 9 | (move-to-flash a) 10 | (move-to-flash b) 11 | 12 | (check (and (= 1u32 a) 13 | (= 1.0f32 b) 14 | (= 1u64 c) 15 | (= 1.0f64 d))) 16 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_trap_5.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x) 3 | (match (trap (/ 1 0)) 4 | ( (exit-error (? err)) 1000) 5 | ( (exit-ok (? v)) v))) 6 | 7 | 8 | (defun g (y) 9 | (+ (f 0) (f y))) 10 | 11 | 12 | (define res (g 100)) 13 | 14 | 15 | (check (= res 2000)) 16 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_trap_6.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x) 3 | (match (trap (+ 1 0)) 4 | ( (exit-error (? err)) 1000) 5 | ( (exit-ok (? v)) v))) 6 | 7 | 8 | (defun g (y) 9 | (+ (f 0) (f y))) 10 | 11 | 12 | (define res (g 100)) 13 | 14 | 15 | (check (= res 2)) 16 | -------------------------------------------------------------------------------- /hwconf/teamtriforceuk/a50s_v23c/hw_a50s_v23c_8s.h: -------------------------------------------------------------------------------- 1 | #ifndef HW_A50S_V23C_8S_H_ 2 | #define HW_A50S_V23C_8S_H_ 3 | 4 | #define HW_A50S_8S 5 | 6 | #define HW_NAME "a50s_v23c_8s" 7 | #define CURRENT_AMP_GAIN 50.0 8 | 9 | 10 | #include "hw_a50s_v23c_core.h" 11 | 12 | #endif /* HW_A50S_V23C_8S_H_ */ 13 | -------------------------------------------------------------------------------- /lispBM/lispBM/doc/manual/ch3_examples/recv_message2.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (defun f () 4 | (progn 5 | (recv 6 | ( monkey (print "That's an ape!")) 7 | ( cat (print "What a cute cat!")) 8 | ( (? x) (print "I dont know kind of animal a " x " is!"))) 9 | (f))) 10 | 11 | (spawn f) 12 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_lambda_9.lisp: -------------------------------------------------------------------------------- 1 | (define f (lambda () 2 | (let ((a 1)) 3 | (let ((b 2)) 4 | (lambda (x) 5 | (let ((b a)) 6 | (let ((c 3)) 7 | (+ x b)))))))) 8 | 9 | (check (= ((f) 1) 2)) 10 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_match_guard_7.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x) 3 | (match x 4 | ( (? x) (< x 5) (list x 'smaller)) 5 | ( (? x) (> x 5) (list x 'larger)) 6 | ( _ 'whatever))) 7 | 8 | (check (and (eq (f 23) '(23 larger)) 9 | (eq (f 0.3) '(0.3 smaller)))) 10 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_progn_4.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define f 3 | (lambda (x) 4 | (if (= x 0) 5 | 0 6 | (+ x (f (- x 1)))))) 7 | 8 | (check (= (progn 9 | (define a 5) 10 | (f a) 11 | (define a 4) 12 | (f a) 13 | ) 14 | 10)) 15 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_spawn_trap_4.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define t1 (lambda (x) 3 | (read-program))) 4 | 5 | 6 | 7 | (spawn-trap t1 50) 8 | 9 | (check (eq (recv ((exit-error (? tid) (? e)) e) 10 | ((exit-ok (? tid) (? r)) r)) 11 | eval_error)) 12 | 13 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_str_find_3.lisp: -------------------------------------------------------------------------------- 1 | (check (= 2 | (str-find "ab ab" "ab") 3 | (str-find "ab ab" "ab" 'right) 4 | (str-find "ab ab" "ab" -100) 5 | (str-find "ab ab" "ab" -5) 6 | (str-find "" "") 7 | (str-find "ab" "") 8 | (str-find "ab ab" '("ba" "ab")) 9 | 0 10 | )) -------------------------------------------------------------------------------- /hwconf/stormcore/100D/hw_stormcore_100d_v2_no_limits.h: -------------------------------------------------------------------------------- 1 | #ifndef HW_STORMCORE_100D_V2_NO_LIMITS_H_ 2 | #define HW_STORMCORE_100D_V2_NO_LIMITS_H_ 3 | 4 | #define HW_VER_IS_100D_V2 5 | #define DISABLE_HW_LIMITS 6 | 7 | #include "hw_stormcore_100d_v2.h" 8 | 9 | #endif /* HW_STORMCORE_100D_V2_NO_LIMITS_H_ */ 10 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_append_6.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | (define t1 (lambda () 5 | (append '(1 2 3) 'hej '(4 5 6)))) 6 | 7 | 8 | (spawn-trap t1 50) 9 | 10 | (check (eq (recv ((exit-error (? tid) (? e)) e) 11 | ((exit-ok (? tid) (? r)) r)) 12 | type_error)) 13 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_gc_13.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define a (list 1 2 3 4)) 3 | (define b (cons [1 2 3 4] [5 6 7 8])) 4 | (define c "hello world") 5 | (define d (flatten (cons c b))) 6 | 7 | (defun f () { 8 | (looprange i 0 25 9 | (gc)) 10 | 'ok}) 11 | 12 | 13 | (check (eq (f) 'ok)) 14 | 15 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_match_16.lisp: -------------------------------------------------------------------------------- 1 | 2 | @const-start 3 | (define f (lambda (ls) 4 | (match ls 5 | ( nil 0 ) 6 | ( ( (? c) . (? cd)) (+ c (f c))) 7 | ( _ 'error-not-a-list)))) 8 | @const-end 9 | 10 | (check (and (eq (f 'kurt) 'error-not-a-list) 11 | (eq (f nil) 0))) 12 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_match_guard_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x) 3 | (match x 4 | ( (apa (? x)) (<= x 10) (+ x 1)) 5 | ( (apa (? x)) (> x 10) (+ x 100)))) 6 | 7 | 8 | 9 | (check (and (= (f '(apa 0)) 1) 10 | (= (f '(apa 2)) 3) 11 | (= (f '(apa 11)) 111))) 12 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_print_value_4.lisp: -------------------------------------------------------------------------------- 1 | 2 | (check (and 3 | (eq (read (to-str [1])) [1]) 4 | (eq (read (to-str [1 2])) [1 2]) 5 | (eq (read (to-str [1 2 3])) [1 2 3]) 6 | (eq (read (to-str [1 2 3 4])) [1 2 3 4]) 7 | (eq (read (to-str [1 2 3 4 5])) [1 2 3 4 5]))) 8 | 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_trap_3.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x) 3 | (/ 1 x)) 4 | 5 | (defun g (y) 6 | (+ (f 0) (f y))) 7 | 8 | 9 | (define res 10 | (match (trap (g 100)) 11 | ( (exit-error (? err)) 1000) 12 | ( (exit-ok (? v)) v) 13 | )) 14 | 15 | (check (= res 1000)) 16 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_trap_4.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x) 3 | (+ 1 x)) 4 | 5 | (defun g (y) 6 | (+ (f 0) (f y))) 7 | 8 | 9 | (define res 10 | (match (trap (g 100)) 11 | ( (exit-error (? err)) 1000) 12 | ( (exit-ok (? v)) v) 13 | )) 14 | 15 | (check (= res 102)) 16 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *~ 2 | .idea 3 | build 4 | tools 5 | downloads 6 | package/ 7 | 8 | .dep 9 | .project 10 | .cproject 11 | .settings/language.settings.xml 12 | .DS_Store 13 | workspace.code-workspace 14 | 15 | # Qt project settings 16 | *.pro.user 17 | *.pro.shared 18 | 19 | # CLion 20 | .idea/ 21 | .vscode 22 | 23 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_callcc_3.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define f (lambda (x) 3 | (if (= x 0) 4 | x 5 | (check ( = 10 6 | (call-cc (lambda (k) (progn (define cc k) (f (- x 1)))))) 7 | 't)))) 8 | 9 | (f 1) 10 | (cc 10) 11 | 12 | 13 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_array_extensions_7.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define arr (bufcreate 19)) 3 | 4 | (bufset-u8 arr 0 255) 5 | (bufset-u8 arr 1 127) 6 | (bufset-u8 arr 18 1100) 7 | 8 | (check (and (= (bufget-u8 arr 0) 255) 9 | (= (bufget-u8 arr 1) 127) 10 | (= (bufget-u8 arr 18) (mod 1100 256)))) 11 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_cond_0.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (defun b (x) (> x 100)) 4 | 5 | (defun f (x) 6 | (cond ( (b x) 'lots) 7 | ( (> x 50) 'ok) 8 | ( (> x 0) 'meh))) 9 | 10 | 11 | (check (and (eq (f 101) 'lots) 12 | (eq (f 100) 'ok) 13 | (eq (f 10) 'meh))) 14 | 15 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_merge_12.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define a '( (1 . 'apa) (3 . 'cepa))) 3 | (define b '( (2 . 'kurt) (4 . 'russel))) 4 | 5 | 6 | (define cmp 7 | (lambda (a b) (< (car a) (car b)))) 8 | 9 | (check (eq (merge cmp a b) '( (1 . 'apa) (2 . 'kurt) (3 . 'cepa) (4 . 'russel)))) 10 | 11 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_numbers_0.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (check (and (ext-numbers) 4 | (ext-numbers 1) 5 | (ext-numbers 1 2 3 4 5) 6 | (ext-numbers 1u) 7 | (ext-numbers 1u 2) 8 | (ext-numbers 0.0) 9 | (ext-numbers 0.0 1.0 0.5))) 10 | 11 | 12 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_sort_10.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define r-list '(3 7 12 19 25 8 14 30 5 22 17 11)) 3 | 4 | (defun cmp (x y) 5 | { 6 | (gc) 7 | (> x y) 8 | }) 9 | 10 | (defun f (x) 11 | (if (= x 0) 12 | t 13 | { 14 | (sort cmp r-list) 15 | (f (- x 1)) 16 | })) 17 | 18 | (check (f 5)) 19 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_array_extensions_8.lisp: -------------------------------------------------------------------------------- 1 | (define arr (bufcreate 10)) 2 | 3 | (bufset-u16 arr 0 65535) 4 | (bufset-u16 arr 2 10) 5 | (bufset-u16 arr 4 11700) 6 | 7 | (check (and (= (bufget-u16 arr 0) 65535) 8 | (= (bufget-u16 arr 2) 10) 9 | (= (bufget-u16 arr 4) (mod 11700 65536)))) 10 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_cond_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (defun f (x) 4 | (let ( (a (+ x 5))) 5 | (cond ( (= a 0) 'zero) 6 | ( (> a 0) 'positive) 7 | ( (< a 0) 'negative)))) 8 | 9 | (check (and (eq (f -5) 'zero) 10 | (eq (f 0) 'positive) 11 | (eq (f -100) 'negative))) 12 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_fib_2.lisp: -------------------------------------------------------------------------------- 1 | (define fib 2 | (lambda (n) 3 | (let ((fib0 (lambda (n a b) 4 | (if (= n 0) a 5 | (if (= n 1) b 6 | (fib0 (- n 1) b (+ a b))))))) 7 | (fib0 n 0 1)))) 8 | 9 | 10 | (check (= (fib 10) 55)) 11 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_fib_3.lisp: -------------------------------------------------------------------------------- 1 | (define fib 2 | (lambda (n) 3 | (let ((fib0 (lambda (n a b) 4 | (match n (0 a) 5 | (1 b) 6 | (_ (fib0 (- n 1) b (+ a b))))))) 7 | (fib0 n 0 1)))) 8 | 9 | 10 | (check (= (fib 10) 55)) 11 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_map_3.lisp: -------------------------------------------------------------------------------- 1 | ;; (let ((accmap (lambda (f acc xs) 2 | ;; (if (eq xs nil) 3 | ;; acc 4 | ;; (accmap f (cons (f (car xs)) acc) (cdr xs)))))) 5 | ;; (define map (lambda (f xs) (reverse (accmap f nil xs))))) 6 | 7 | (check (eq (map (lambda (x) (+ x 1)) (list 1 2 3 4 5 6)) (list 2 3 4 5 6 7))) 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_to_str_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun repeatq (f n) 3 | (if ( = n 0) 4 | () 5 | (progn 6 | f 7 | (repeatq f (- n 1))))) 8 | 9 | (gc) 10 | 11 | (define n (mem-num-free)) 12 | 13 | (repeatq '(to-str 1 2 3 4 5 6 7 8 9) 1000) 14 | 15 | (gc) 16 | 17 | (check (= n (mem-num-free))) 18 | -------------------------------------------------------------------------------- /applications/applications.mk: -------------------------------------------------------------------------------- 1 | APPSRC = applications/app.c \ 2 | applications/app_ppm.c \ 3 | applications/app_adc.c \ 4 | applications/app_sten.c \ 5 | applications/app_uartcomm.c \ 6 | applications/app_nunchuk.c \ 7 | applications/app_pas.c \ 8 | applications/app_custom.c 9 | 10 | APPINC = applications 11 | -------------------------------------------------------------------------------- /comm/comm_usb_serial.h: -------------------------------------------------------------------------------- 1 | #ifndef COMM_USB_SERIAL_H_ 2 | #define COMM_USB_SERIAL_H_ 3 | 4 | // Variables 5 | extern SerialUSBDriver SDU1; 6 | 7 | // Functions 8 | void comm_usb_serial_init(void); 9 | int comm_usb_serial_is_active(void); 10 | int comm_usb_serial_configured_cnt(void); 11 | 12 | #endif /* COMM_USB_SERIAL_H_ */ 13 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/qc/src/SExpGen.hs: -------------------------------------------------------------------------------- 1 | module SExpGen 2 | ( module Syntax, 3 | module Driver, 4 | module Property, 5 | module Oracles, 6 | ) 7 | where 8 | 9 | import Driver 10 | import Property hiding (Define, Lambda, Closure, Let) 11 | import Syntax hiding (u28, i28, u32, i32, u64, i64, f32, f64) 12 | import Oracles -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_undefine_3.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define a 10) 3 | 4 | (defun f (n) 5 | (if (= n 0) 0 6 | (progn 7 | (define b 100) 8 | (undefine 'b) 9 | (f (- n 1))))) 10 | 11 | (f 10000) 12 | 13 | (define b 75) 14 | 15 | (check (and (= a 10) 16 | (= b 75))) 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /ChibiOS_3.0.5/os/rt/ports/ARM/compilers/GCC/mk/port_generic.mk: -------------------------------------------------------------------------------- 1 | # List of the ChibiOS/RT ARM generic port files. 2 | PORTSRC = ${CHIBIOS}/os/rt/ports/ARM/chcore.c 3 | 4 | PORTASM = $(CHIBIOS)/os/rt/ports/ARM/compilers/GCC/chcoreasm.s 5 | 6 | PORTINC = ${CHIBIOS}/os/rt/ports/ARM \ 7 | ${CHIBIOS}/os/rt/ports/ARM/compilers/GCC 8 | -------------------------------------------------------------------------------- /ChibiOS_3.0.5/os/various/fatfs_bindings/readme.txt: -------------------------------------------------------------------------------- 1 | This directory contains the ChibiOS/RT "official" bindings with the FatFS 2 | library by ChaN: http://elm-chan.org 3 | 4 | In order to use FatFS within ChibiOS/RT project, unzip FatFS under 5 | ./ext/fatfs then include $(CHIBIOS)/os/various/fatfs_bindings/fatfs.mk 6 | in your makefile. 7 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_deconstruct_let_4.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (defun punisher (n arg) 4 | (if (= n 0) arg 5 | (progn 6 | (let (( (a (b0 _ b2) . c) '(1 (100 200 300) . 77) )) 7 | (punisher (- n 1) (+ a b0 b2 c)) 8 | ) 9 | ) 10 | ) 11 | ) 12 | 13 | 14 | (check (= (punisher 100000 0) 478)) 15 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_gc_3.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define a (list 1 2 3 4)) 3 | (define b (list a 'x 'y 'z)) 4 | (define c (list b 'x1 'y1 'z1)) 5 | 6 | (gc) 7 | 8 | (check (and 9 | (eq a (list 1 2 3 4)) 10 | (eq b (list (list 1 2 3 4) 'x 'y 'z)) 11 | (eq c (list (list (list 1 2 3 4) 'x 'y 'z) 'x1 'y1 'z1)))) 12 | -------------------------------------------------------------------------------- /lispBM/lispBM/doc/manual/ch3_examples/hello_bye.lisp: -------------------------------------------------------------------------------- 1 | (defun sleep (x) 2 | (yield (* x 1000000))) 3 | 4 | (defun hello () 5 | (progn 6 | (sleep 10) 7 | (print "hello") 8 | (hello))) 9 | 10 | 11 | (defun bye () 12 | (progn 13 | (sleep 5) 14 | (print "bye") 15 | (bye))) 16 | 17 | (spawn hello) 18 | (bye) 19 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_comments_4.lisp: -------------------------------------------------------------------------------- 1 | ;; A pretty long comment aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 2 | 3 | (check (= 1 1)) 4 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_encode_64_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define a 1i64) 3 | 4 | (defun f () 5 | (loop ((i 0)) 6 | (< i 10000) 7 | { 8 | (setq a (+ a 1)) 9 | (setq i (+ i 1)) 10 | })) 11 | 12 | (gc) 13 | (define n (mem-num-free)) 14 | 15 | (f) 16 | 17 | (gc) 18 | (check (= n (mem-num-free))) 19 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_encode_64_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define a 1u64) 3 | 4 | (defun f () 5 | (loop ((i 0)) 6 | (< i 10000) 7 | { 8 | (setq a (+ a 1)) 9 | (setq i (+ i 1)) 10 | })) 11 | 12 | (gc) 13 | (define n (mem-num-free)) 14 | 15 | (f) 16 | 17 | (gc) 18 | (check (= n (mem-num-free))) 19 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_encode_64_3.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define a 1.0f64) 3 | 4 | (defun f () 5 | (loop ((i 0)) 6 | (< i 10000) 7 | { 8 | (setq a (+ a 1)) 9 | (setq i (+ i 1)) 10 | })) 11 | 12 | (gc) 13 | (define n (mem-num-free)) 14 | 15 | (f) 16 | 17 | (gc) 18 | (check (= n (mem-num-free))) 19 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_match_6.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x) 3 | (match (type-of x) 4 | (type-i64 (+ 1 x)) 5 | (type-u64 (+ 2 x)) 6 | (type-double (+ 3 x)))) 7 | 8 | 9 | (check (and (= (f 1i64) 2i64) 10 | (= (f 2u64) 4u64) 11 | (> (f 3.14f64) 6.13f64) 12 | (< (f 3.14f64) 6.15f64))) 13 | 14 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_setq_3.lisp: -------------------------------------------------------------------------------- 1 | 2 | (def x 1) 3 | (def y 2) 4 | (def z 3) 5 | 6 | (defun f (x y z) { 7 | (setq x 10) 8 | (setq y 20) 9 | (setq z 30) 10 | (+ x y z) 11 | }) 12 | 13 | (check (and (= (f 0 0 0) 60) 14 | (= x 1) 15 | (= y 2) 16 | (= z 3))) 17 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_block_unblock_3.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (defun proc1 (pid) 4 | (progn 5 | (define apa (block-rmbr)) 6 | (send pid apa))) 7 | 8 | (def id (spawn proc1 (self))) 9 | 10 | (sleep 1) 11 | 12 | (gc) 13 | 14 | (unblock-rmbr id) 15 | 16 | (recv ( (? x) (def res x))) 17 | 18 | (check (eq res [1 2 3 4] )) 19 | 20 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_comments_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | ;; This is a comment 3 | ;; This is another comment 4 | ;; A third comment? 5 | ;; and a fourth as well? 6 | ;; woa.. 7 | 8 | (check (= 1 1)) ; a commented piece of code 9 | ;; a comment after code with no empty line between 10 | ;; a comment at the end of the file followed by no newline 11 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_fib_4.lisp: -------------------------------------------------------------------------------- 1 | (define fib0 2 | (lambda (n a b) 3 | (match n (0 a) 4 | (1 b) 5 | (_ (fib0 (- n 1) 6 | b 7 | (+ a b)))))) 8 | 9 | (define fib (lambda (n) 10 | (fib0 n 0 1))) 11 | 12 | 13 | (check (= (fib 10) 55)) 14 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_high_level_array_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (def arr (mkarray 3)) 3 | 4 | (setix arr 0 (list 1 2 3)) 5 | (setix arr 1 (list 4 5 6)) 6 | (setix arr 2 (list 7 8 9)) 7 | 8 | (gc) 9 | 10 | (check (and (eq (ix arr 0) (list 1 2 3)) 11 | (eq (ix arr 1) (list 4 5 6)) 12 | (eq (ix arr 2) (list 7 8 9)))) 13 | 14 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_trap_8.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define a (match (trap (/ 4 (match (trap (+ 1 1)) 3 | ( (exit-error (? err)) 0) 4 | ( (exit-ok (? v)) v)))) 5 | ( (exit-error (? err)) 100) 6 | ( (exit-ok (? v)) v))) 7 | 8 | (check (= a 2)) 9 | -------------------------------------------------------------------------------- /ChibiOS_3.0.5/os/various/fatfs_bindings/fatfs.mk: -------------------------------------------------------------------------------- 1 | # FATFS files. 2 | FATFSSRC = ${CHIBIOS}/os/various/fatfs_bindings/fatfs_diskio.c \ 3 | ${CHIBIOS}/os/various/fatfs_bindings/fatfs_syscall.c \ 4 | ${CHIBIOS}/ext/fatfs/src/ff.c \ 5 | ${CHIBIOS}/ext/fatfs/src/option/unicode.c 6 | 7 | FATFSINC = ${CHIBIOS}/ext/fatfs/src 8 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_match_guard_8.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun f (x) 3 | (match x 4 | ( ((? x) . ((? y) . _)) (< x 10) (list y 'smaller)) 5 | ( ((? x) . ((? y) . _)) (> x 10) (list y 'larger)) 6 | ( _ 'whatever))) 7 | 8 | (check (and (eq (f '(0 1 2 3)) '(1 smaller)) 9 | (eq (f '(11 9 8 7)) '(9 larger)))) 10 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_str_to_i_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun repeatq (f n) 3 | (if ( = n 0) 4 | () 5 | (progn 6 | f 7 | (repeatq f (- n 1))))) 8 | 9 | 10 | (define apa "124") 11 | 12 | (gc) 13 | 14 | (define n (mem-num-free)) 15 | 16 | (repeatq '(str-to-i apa) 1000) 17 | 18 | (gc) 19 | 20 | (check (= n (mem-num-free))) 21 | -------------------------------------------------------------------------------- /ChibiOS_3.0.5/os/various/lwip_bindings/readme.txt: -------------------------------------------------------------------------------- 1 | This directory contains the ChibiOS/RT "official" bindings with the lwIP 2 | TCP/IP stack: http://savannah.nongnu.org/projects/lwip 3 | 4 | In order to use lwIP within ChibiOS/RT project, unzip lwIP under 5 | ./ext/lwip-1.4.0 then include $(CHIBIOS)/os/various/lwip_bindings/lwip.mk 6 | in your makefile. 7 | -------------------------------------------------------------------------------- /applications/er/er_qml.h: -------------------------------------------------------------------------------- 1 | // This file is autogenerated by VESC Tool 2 | 3 | #ifndef ER_QML_H_ 4 | #define ER_QML_H_ 5 | 6 | #include "datatypes.h" 7 | #include 8 | #include 9 | 10 | // Constants 11 | #define DATA_QML_APP_SIZE 4394 12 | 13 | // Variables 14 | extern uint8_t data_qml_app[]; 15 | 16 | // ER_QML_H_ 17 | #endif 18 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_gc_12.lisp: -------------------------------------------------------------------------------- 1 | (define v1 (list 1 2 3 4)) 2 | (define v2 (list 5 6 7 8)) 3 | 4 | (define fv1 (flatten v1)) 5 | (define fv2 (flatten v2)) 6 | 7 | (define tree (cons fv1 fv2)) 8 | 9 | (gc) 10 | 11 | (check (and 12 | (eq (unflatten (car tree)) (list 1 2 3 4)) 13 | (eq (unflatten (cdr tree)) (list 5 6 7 8)))) 14 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_let_8.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (define f (let ((x 200)) 4 | (let ((y 100)) 5 | (lambda (n) 6 | (let ((a 4)) 7 | (let ((b 5)) 8 | (let ((c 6)) 9 | (if (= n 0) (+ x y a b c) (f (- n 1)))))))))) 10 | 11 | (check (= (f 100000) 315)) 12 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_progn_var_9.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define i0 (let ( (a 10) 3 | (b 20) 4 | (c (lambda (x y) (+ x y)))) 5 | (c a b))) 6 | 7 | (define i1 8 | (progn 9 | (var a 10) 10 | (var b 20) 11 | (var c (lambda (x y) (+ x y))) 12 | (c a b) 13 | )) 14 | 15 | (check (= i0 i1)) 16 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_str_from_n_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun repeat (f n) 3 | (if ( = n 0) 4 | () 5 | (progn 6 | (f n) 7 | (repeat f (- n 1))))) 8 | 9 | 10 | (gc) 11 | 12 | (define n (mem-num-free)) 13 | 14 | (repeat (lambda (n) (str-from-n n)) 1000) 15 | 16 | (gc) 17 | 18 | (check (= n (mem-num-free))) 19 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_str_to_f_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun repeatq (f n) 3 | (if ( = n 0) 4 | () 5 | (progn 6 | f 7 | (repeatq f (- n 1))))) 8 | 9 | 10 | (define apa "124.321") 11 | 12 | (gc) 13 | 14 | (define n (mem-num-free)) 15 | 16 | (repeatq '(str-to-f apa) 1000) 17 | 18 | (gc) 19 | 20 | (check (= n (mem-num-free))) 21 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_sumtree_0.lisp: -------------------------------------------------------------------------------- 1 | (define sumtree 2 | (lambda (x) 3 | (if (eq (type-of x) type-i) 4 | x 5 | (if (eq x 'nil) 6 | 0 7 | (let ((a (sumtree (car x))) 8 | (b (sumtree (cdr x)))) 9 | (+ a b) 10 | ))))) 11 | 12 | 13 | (check (= (sumtree (list (list 1 1 1 1 1 1 1 1 1 1) (list 1 2) (list 3 4))) 20)) 14 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_undefine_5.lisp: -------------------------------------------------------------------------------- 1 | (define a 10) 2 | 3 | (defun f (n) 4 | (if (= n 0) 0 5 | (progn 6 | (define b 100) 7 | (undefine 'b) 8 | (f (- n 1))))) 9 | 10 | (f 10000) 11 | (define c 5) 12 | (f 10000) 13 | 14 | (define b 75) 15 | 16 | (check (and (= a 10) 17 | (= b 75) 18 | (= c 5))) 19 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_comments_3.lisp: -------------------------------------------------------------------------------- 1 | 2 | ;; This is a comment 3 | ;; This is another comment 4 | ;; A third comment? 5 | ;; and a fourth as well? 6 | ;; woa.. 7 | 8 | (check (= 1 1)) ; a commented piece of code 9 | ;; a comment after code with no empty line between 10 | ;; a comment at the end of the file followed by newlines 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_match_20.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun tailfun (x) 3 | (+ x 1000)) 4 | 5 | (defun f (x z) 6 | ( match x 7 | ( (apa (? y)) { (+ y z) (gc) (tailfun y) } ) 8 | ( (bepa (? y)) { (+ y z) (gc) (tailfun z) } ) 9 | )) 10 | 11 | (check (and ( = (f '(apa 10) 20) 1010) 12 | ( = (f '(bepa 10) 20) 1020))) 13 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_str_len_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun repeatq (f n) 3 | (if ( = n 0) 4 | () 5 | (progn 6 | f 7 | (repeatq f (- n 1))))) 8 | 9 | (define my-string "anjovis") 10 | 11 | (gc) 12 | 13 | (define n (mem-num-free)) 14 | 15 | (repeatq '(str-len my-string) 1000) 16 | 17 | (gc) 18 | 19 | (check (= n (mem-num-free))) 20 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_str_part_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun repeatq (f n) 3 | (if ( = n 0) 4 | () 5 | (progn 6 | f 7 | (repeatq f (- n 1))))) 8 | 9 | 10 | (define apa "Hello world") 11 | 12 | (gc) 13 | 14 | (define n (mem-num-free)) 15 | 16 | (repeatq '(str-part apa 4) 1000) 17 | 18 | (gc) 19 | 20 | (check (= n (mem-num-free))) 21 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_trap_7.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (define a (match (trap (/ 1 (match (trap (/ 1 0)) 4 | ( (exit-error (? err)) 0) 5 | ( (exit-ok (? v))) 1))) 6 | ( (exit-error (? err)) 100) 7 | ( (exit-ok (? v)) 0))) 8 | 9 | (check (= a 100)) 10 | -------------------------------------------------------------------------------- /applications/finn/finn_qml.h: -------------------------------------------------------------------------------- 1 | // This file is autogenerated by VESC Tool 2 | 3 | #ifndef FINN_QML_H_ 4 | #define FINN_QML_H_ 5 | 6 | #include "datatypes.h" 7 | #include 8 | #include 9 | 10 | // Constants 11 | #define DATA_QML_APP_SIZE 3103 12 | 13 | // Variables 14 | extern uint8_t data_qml_app[]; 15 | 16 | // FINN_QML_H_ 17 | #endif 18 | -------------------------------------------------------------------------------- /imu/imu.mk: -------------------------------------------------------------------------------- 1 | IMUSRC = imu/mpu9150.c \ 2 | imu/icm20948.c \ 3 | imu/ahrs.c \ 4 | imu/imu.c \ 5 | imu/BMI160_driver/bmi160.c \ 6 | imu/bmi160_wrapper.c \ 7 | imu/lsm6ds3.c \ 8 | imu/Fusion/FusionAhrs.c \ 9 | imu/Fusion/FusionBias.c \ 10 | imu/Fusion/FusionCompass.c 11 | 12 | IMUINC = imu \ 13 | imu/BMI160_driver \ 14 | imu/Fusion 15 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_event_3.lisp: -------------------------------------------------------------------------------- 1 | (event-register-handler (self)) 2 | 3 | 4 | (spawn (fn () 5 | (progn 6 | (event-sym 'apa) 7 | (event-sym 'bepa) 8 | (event-array 'cepa)))) 9 | 10 | 11 | 12 | (recv ( apa 1)) 13 | (recv ( bepa 2)) 14 | (recv (( cepa . (? arr)) 3)) 15 | 16 | 17 | 18 | (check 't) 19 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_map_1.lisp: -------------------------------------------------------------------------------- 1 | ;; (define map (lambda (f xs) 2 | ;; (let ((accmap (lambda (acc xs) 3 | ;; (if (eq xs nil) 4 | ;; acc 5 | ;; (accmap (cons (f (car xs)) acc) (cdr xs)))))) 6 | ;; (reverse (accmap nil xs))))) 7 | 8 | (check (eq (map (lambda (x) (+ x 1)) (list 1 2 3 4 5 6)) (list 2 3 4 5 6 7))) 9 | 10 | 11 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_progn_var_13.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (define i1 4 | (let ( (apa 5) ) 5 | (progn 6 | (progn 7 | (setq apa 20) 8 | ) 9 | (progn 10 | (var apa 10) 11 | (setq apa 30) 12 | ) 13 | (progn 14 | apa 15 | ) 16 | ) 17 | ) 18 | ) 19 | 20 | (check (= i1 20)) 21 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_range_6.lisp: -------------------------------------------------------------------------------- 1 | ;; Force gc about twice in 512 element heap 2 | ;; and once in 1024 3 | (range 100) 4 | (range 100) 5 | (range 100) 6 | (range 100) 7 | (range 100) 8 | (range 100) 9 | (range 100) 10 | (range 100) 11 | (range 100) 12 | (range 100) 13 | (range 100) 14 | (range 100) 15 | (check (eq (range 10) '(0 1 2 3 4 5 6 7 8 9))) 16 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_block_unblock_2.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun proc1 (pid) 3 | (progn 4 | (block) 5 | (send pid 'im-done))) 6 | 7 | 8 | (def id (spawn-trap proc1 (self))) 9 | (unblock-error id) 10 | 11 | (check (recv ((exit-error (? tid) (? e)) 't) 12 | ((exit-ok (? tid) (? r)) 'nil) 13 | (im-done 'this-can-not-happen))) 14 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_concurrent_0.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define compute (lambda () 3 | (progn 4 | (recv (((? pid) (? x) (? y)) (send pid (+ x y)))) 5 | (compute)))) 6 | 7 | 8 | (define cpid (spawn compute)) 9 | 10 | (send cpid (list (self) 1 2)) 11 | 12 | (check (recv ((? x) (= x 3)))) 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_let_10.lisp: -------------------------------------------------------------------------------- 1 | (define ok 2 | (lambda () 3 | (let ((b (+ 12 15))) 4 | (let ((c 25)) 5 | (+ b c))))) 6 | 7 | (define f (lambda (x) 8 | (progn 9 | (ok) 10 | (yield 10) 11 | (if (= x 0) (ok) (f (- x 1)))))) 12 | 13 | (check (= (f 1000) 52)) 14 | 15 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_str_join_gc_3.lisp: -------------------------------------------------------------------------------- 1 | (defun repeatq (expr n) 2 | (loop ((i 0)) (< i n) { 3 | (eval expr) 4 | (setq i (+ i 1)) 5 | }) 6 | ) 7 | 8 | (def expr '(str-join '() "-")) 9 | 10 | (gc) 11 | 12 | (def mem-left (mem-num-free)) 13 | 14 | (repeatq expr 1000) 15 | 16 | (gc) 17 | 18 | (check (<= mem-left (mem-num-free))) 19 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_callcc_0.lisp: -------------------------------------------------------------------------------- 1 | 2 | 3 | (define f (lambda (cc x) 4 | (if (= x 0) 5 | (cc 1000) 6 | x))) 7 | 8 | (define g (lambda (x y) 9 | (+ x (call-cc (lambda (cc) 10 | (f cc y)))))) 11 | 12 | 13 | (check (and (= (g 1 0) 1001) 14 | (= (g 1 1) 2))) 15 | 16 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_gc_9.lisp: -------------------------------------------------------------------------------- 1 | (define arr1 [1 2 3 4]) 2 | (define arr2 [5 6 7 8]) 3 | (define tree (cons arr1 arr2)) 4 | (define tree1 (cons tree tree)) 5 | 6 | (gc) 7 | 8 | (check (and 9 | (eq tree '([1 2 3 4] . [5 6 7 8])) 10 | (eq (car tree1) '([1 2 3 4] . [5 6 7 8])) 11 | (eq (cdr tree1) '([1 2 3 4] . [5 6 7 8])))) 12 | 13 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_str_to_lower_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun repeatq (f n) 3 | (if ( = n 0) 4 | () 5 | (progn 6 | f 7 | (repeatq f (- n 1))))) 8 | 9 | 10 | (define apa "A VERY LOUD STRING") 11 | 12 | (gc) 13 | 14 | (define n (mem-num-free)) 15 | 16 | (repeatq '(str-to-lower apa) 1000) 17 | 18 | (gc) 19 | 20 | (check (= n (mem-num-free))) 21 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_str_to_upper_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun repeatq (f n) 3 | (if ( = n 0) 4 | () 5 | (progn 6 | f 7 | (repeatq f (- n 1))))) 8 | 9 | 10 | (define apa "a very gentle string") 11 | 12 | (gc) 13 | 14 | (define n (mem-num-free)) 15 | 16 | (repeatq '(str-to-upper apa) 1000) 17 | 18 | (gc) 19 | 20 | (check (= n (mem-num-free))) 21 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_undefine_6.lisp: -------------------------------------------------------------------------------- 1 | (define a 10) 2 | 3 | (defun f (n) 4 | (if (= n 0) 0 5 | (progn 6 | (define a 10) 7 | (define b 100) 8 | (undefine 'b) 9 | (f (- n 1))))) 10 | 11 | (f 10000) 12 | (undefine 'a) 13 | (define c 5) 14 | (f 10000) 15 | 16 | (define b 75) 17 | 18 | (check (and (= b 75) 19 | (= c 5))) 20 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_match_guard_4.lisp: -------------------------------------------------------------------------------- 1 | (defun f (x i) 2 | (match x 3 | ( (apa (? x)) (> x i) 'bigger) 4 | ( (apa (? x)) (< x i) 'smaller))) 5 | 6 | 7 | 8 | (check (and (eq (f '(apa 0) 1) 'smaller) 9 | (eq (f '(apa 1) 0) 'bigger) 10 | (eq (f '(apa 1000) 900) 'bigger) 11 | (eq (f '(apa 900) 1000) 'smaller))) 12 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_to_str_delim_1.lisp: -------------------------------------------------------------------------------- 1 | 2 | (defun repeatq (f n) 3 | (if ( = n 0) 4 | () 5 | (progn 6 | f 7 | (repeatq f (- n 1))))) 8 | 9 | (define delim "anjovis") 10 | 11 | (gc) 12 | 13 | (define n (mem-num-free)) 14 | 15 | (repeatq '(to-str-delim delim 1 2 3 4 5 6 7 8 9) 1000) 16 | 17 | (gc) 18 | 19 | (check (= n (mem-num-free))) 20 | -------------------------------------------------------------------------------- /ChibiOS_3.0.5/ext/readme.txt: -------------------------------------------------------------------------------- 1 | All the code contained under ./ext is not part of the ChibiOS project and 2 | supplied as-is without any additional warranty by ChibiOS. For ownership and 3 | copyright statements see the license details inside the code. 4 | 5 | Some modules may contain changes from the ChibiOS team in order to increase 6 | compatibility or usability with ChibiOS itself. 7 | -------------------------------------------------------------------------------- /encoder/encoder.mk: -------------------------------------------------------------------------------- 1 | ENCSRC = encoder/encoder.c \ 2 | encoder/encoder_cfg.c \ 3 | encoder/enc_abi.c \ 4 | encoder/enc_ad2s1205.c \ 5 | encoder/enc_as5x47u.c \ 6 | encoder/enc_as504x.c \ 7 | encoder/enc_bissc.c \ 8 | encoder/enc_mt6816.c \ 9 | encoder/enc_sincos.c \ 10 | encoder/enc_tle5012.c \ 11 | encoder/enc_ts5700n8501.c 12 | 13 | ENCINC = encoder 14 | -------------------------------------------------------------------------------- /lispBM/lispBM/repl/examples/simple.lisp: -------------------------------------------------------------------------------- 1 | 2 | (define fred (lambda () 3 | (progn (print "fred iteration\n" ) 4 | (yield 25000) 5 | (fred)))) 6 | 7 | (define bella (lambda (x) 8 | (progn (print "bella iteration" x "\n") 9 | (yield 50000) 10 | (bella (+ x 1))))) 11 | 12 | 13 | (spawn fred) 14 | (spawn bella 0) 15 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_str_join_gc_1.lisp: -------------------------------------------------------------------------------- 1 | (defun repeatq (expr n) 2 | (loop ((i 0)) (< i n) { 3 | (eval expr) 4 | (setq i (+ i 1)) 5 | }) 6 | ) 7 | 8 | (def expr '(str-join '("ab" "cde" "f") "-")) 9 | 10 | (gc) 11 | 12 | (def mem-left (mem-num-free)) 13 | 14 | (repeatq expr 1000) 15 | 16 | (gc) 17 | 18 | (check (<= mem-left (mem-num-free))) 19 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_str_join_gc_2.lisp: -------------------------------------------------------------------------------- 1 | (defun repeatq (expr n) 2 | (loop ((i 0)) (< i n) { 3 | (eval expr) 4 | (setq i (+ i 1)) 5 | }) 6 | ) 7 | 8 | (def expr '(str-join '("ab" "cde" "f") "")) 9 | 10 | (gc) 11 | 12 | (def mem-left (mem-num-free)) 13 | 14 | (repeatq expr 1000) 15 | 16 | (gc) 17 | 18 | (check (<= mem-left (mem-num-free))) 19 | -------------------------------------------------------------------------------- /qmlui/hw/qmlui_example_hw.h: -------------------------------------------------------------------------------- 1 | // This file is autogenerated by VESC Tool 2 | 3 | #ifndef QMLUI_EXAMPLE_HW_H_ 4 | #define QMLUI_EXAMPLE_HW_H_ 5 | 6 | #include "datatypes.h" 7 | #include 8 | #include 9 | 10 | // Constants 11 | #define DATA_QML_HW_SIZE 1045 12 | 13 | // Variables 14 | extern uint8_t data_qml_hw[]; 15 | 16 | // QMLUI_EXAMPLE_HW_H_ 17 | #endif 18 | -------------------------------------------------------------------------------- /ChibiOS_3.0.5/os/ext/readme.txt: -------------------------------------------------------------------------------- 1 | All the code contained under ./os/ext is not part of the ChibiOS project and 2 | supplied as-is without any additional warranty by ChibiOS. For ownership and 3 | copyright statements see the license details inside the code. 4 | 5 | Some modules may contain changes from the ChibiOS team in order to increase 6 | compatibility or usability with ChibiOS itself. 7 | -------------------------------------------------------------------------------- /hwconf/luna/m600/qmlui_luna_m600.h: -------------------------------------------------------------------------------- 1 | // This file is autogenerated by VESC Tool 2 | 3 | #ifndef QMLUI_LUNA_M600_H_ 4 | #define QMLUI_LUNA_M600_H_ 5 | 6 | #include "datatypes.h" 7 | #include 8 | #include 9 | 10 | // Constants 11 | #define DATA_QML_HW_SIZE 7167 12 | 13 | // Variables 14 | extern uint8_t data_qml_hw[]; 15 | 16 | // QMLUI_LUNA_M600_H_ 17 | #endif 18 | -------------------------------------------------------------------------------- /lispBM/lispBM/benchmarks/stored_results/benchresult22_01_22_10_11_07: -------------------------------------------------------------------------------- 1 | File, Load_time, Eval_time 2 | q2.lisp, 0.001799999, 1.861400008 3 | dec_cnt2.lisp, 0.001300000, 3.529799938 4 | dec_cnt1.lisp, 0.001300000, 4.334400177 5 | fibonacci.lisp, 0.001300000, 4.466700077 6 | dec_cnt3.lisp, 0.001300000, 1.519600033 7 | tak.lisp, 0.001700000, 4.285699844 8 | fibonacci_tail.lisp, 0.001700000, 0.004999999 9 | -------------------------------------------------------------------------------- /lispBM/lispBM/tests/tests/test_callcc_4.lisp: -------------------------------------------------------------------------------- 1 | 2 | (progn 3 | (define f (lambda (x) 4 | (if (= x 0) 5 | x 6 | (check (= 10 (call-cc (lambda (k) (progn 7 | (define cc k) 8 | (f (- x 1)))))) 9 | 't))))) 10 | (f 1) 11 | (cc 10) 12 | -------------------------------------------------------------------------------- /hwconf/luna/bbshd/qmlui_luna_bbshd.h: -------------------------------------------------------------------------------- 1 | // This file is autogenerated by VESC Tool 2 | 3 | #ifndef QMLUI_LUNA_BBSHD_H_ 4 | #define QMLUI_LUNA_BBSHD_H_ 5 | 6 | #include "datatypes.h" 7 | #include 8 | #include 9 | 10 | // Constants 11 | #define DATA_QML_HW_SIZE 5911 12 | 13 | // Variables 14 | extern uint8_t data_qml_hw[]; 15 | 16 | // QMLUI_LUNA_BBSHD_H_ 17 | #endif 18 | --------------------------------------------------------------------------------