# HG changeset patch # User ellis # Date 1683594663 14400 # Node ID b9720ba9c4a0a7cccb8519735cdf7ed23c79e171 # Parent bebb76da449c9b428e94fe2acb3b4f72ed84d37f readme, removed redundant script diff -r bebb76da449c -r b9720ba9c4a0 makefile --- a/makefile Sun May 07 20:42:26 2023 -0400 +++ b/makefile Mon May 08 21:11:03 2023 -0400 @@ -2,7 +2,7 @@ O ?= /tmp/demo .PHONY:build $(O):;mkdir -p $@ -clean:;rm -rf out *.fasl;cargo clean +clean:;rm -rf *.fasl;scriipts/clean.ros fmt:;scripts/fmt.ros build:;scripts/build.ros docs:;scripts/docs.ros diff -r bebb76da449c -r b9720ba9c4a0 readme.org --- a/readme.org Sun May 07 20:42:26 2023 -0400 +++ b/readme.org Mon May 08 21:11:03 2023 -0400 @@ -1,5 +1,4 @@ #+TITTLE: cl-demo - This is a demo software suite which showcases the power of Common Lisp and Rust. * Make * Run @@ -7,6 +6,24 @@ * Config * tasks ** TODO ros scripts -** TODO rs-macroexpand -- rs-gen-file rs-defmacro rs-macros +** TODO DSLs +- consider tree-sitter parsing layout, use as a guide for developing a + single syntax which expands to Rust or C. +- with-rs +- with-c +- with-rs/c +- with-cargo +- compile-rs/c + +*** TODO rs-macroexpand +- rs-gen-file +- rs-defmacro +- rs-macros +- rs-macroexpand - rs-macroexpand-1 +*** TODO c-macroexpand +- c-gen-file h/c +- c-defmacro +- c-macros +- c-macroexpand +- c-macroexpand-1 diff -r bebb76da449c -r b9720ba9c4a0 scripts/compile.ros --- a/scripts/compile.ros Sun May 07 20:42:26 2023 -0400 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,13 +0,0 @@ -#!/bin/sh -#|-*- mode:lisp -*-|# -#| -exec ros -Q -- $0 "$@" -|# -(progn ;;init forms - (in-package :cl-user) - (ros:ensure-asdf) - #+quicklisp(ql:quickload '(demo) :silent t)) - -;; TODO 2023-02-25: opts (system, config, user input) -(defun main (&rest argv) - (declare (ignorable argv))) diff -r bebb76da449c -r b9720ba9c4a0 scripts/docs.ros --- a/scripts/docs.ros Sun May 07 20:42:26 2023 -0400 +++ b/scripts/docs.ros Mon May 08 21:11:03 2023 -0400 @@ -9,4 +9,6 @@ (defun main (&rest argv) (declare (ignorable argv)) - (format t "hello world")) + (write-line "> cargo doc") + (uiop:run-program "cargo doc") + (write-line " generated rust documentation"))