Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
b70ea89
Rename 'Call' to 'StackExpand` in IR, Raw, and Stack
ssoelvsten Sep 25, 2025
e2de25d
Improve lib record export syntax
ssoelvsten Sep 25, 2025
4cbdaee
Manifest design of the Standard Library in its README
ssoelvsten Sep 26, 2025
a426bb8
Set up Dependabot to keep an eye on Action dependencies
ssoelvsten Sep 29, 2025
f86177b
Fix 'Data.ByteString.getLine' is deprecated
ssoelvsten Sep 29, 2025
fa4c250
Rename 'make all' to 'make build' to match conventions
ssoelvsten Sep 29, 2025
fe29c80
Remove verbosity if not otherwise requested
ssoelvsten Sep 29, 2025
98195c1
Separate build step from installation (readding 'all' target)
ssoelvsten Sep 29, 2025
9c4c3fa
Move 'ghci' targets to the end and differentiate with '/' rather than…
ssoelvsten Sep 30, 2025
c86866d
Some clean up in Stack2JS
ssoelvsten Oct 1, 2025
a33a6e9
Fix misalignment
ssoelvsten Oct 1, 2025
61230b6
Fix whitespace and some comments
ssoelvsten Oct 1, 2025
2f1fb2b
Fix typo 'GENARTING'
ssoelvsten Oct 1, 2025
09ea1fe
Comments, formatting, and clean up of Main.hs pipeline
ssoelvsten Oct 1, 2025
91dc8e3
Move compilation of 'trp-rt/' into the subfolder
ssoelvsten Oct 2, 2025
168d7d3
Remove 'troupec -l' option short-hand
ssoelvsten Oct 2, 2025
4935692
Remove '-i' and '-j' as short-hand options
ssoelvsten Oct 2, 2025
6c456b8
Clean up in .gitignore
ssoelvsten Oct 2, 2025
e73f1eb
Move ppDeps from IR to Stack2JS
ssoelvsten Oct 2, 2025
705d407
Remove/Clean up some dead code
ssoelvsten Oct 2, 2025
23674e9
Simplify 'irProg2JSString'
ssoelvsten Oct 2, 2025
f9a0455
Rename 'debugOut' to 'debugMode' to better convey its meaning
ssoelvsten Oct 2, 2025
8ce865b
Remove outdated and empty project files for compiler
ssoelvsten Oct 3, 2025
3b320c3
Output parsed syntax when verbose
ssoelvsten Oct 4, 2025
3d36cbb
Remove generation of dead code 'this.loadLibs' preamble of JS output
ssoelvsten Oct 6, 2025
db4f7be
Remove magic (dependant) constant
ssoelvsten Oct 6, 2025
7aecf4b
Inline 'App.hs/fromFile' to improve code clarity
ssoelvsten Oct 6, 2025
c2dbc95
Move print helpers up to the function that uses it
ssoelvsten Oct 6, 2025
3ecdd7f
Clean up and simplify main interface for Stack2JS.hs
ssoelvsten Oct 14, 2025
f29f96d
Extend usage of 'CompileMode' to also accomodate 'Interactive Mode'
ssoelvsten Oct 14, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"
4 changes: 2 additions & 2 deletions .github/workflows/run_tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -108,8 +108,8 @@ jobs:
echo "Runtime built successfully, troupe.mjs found"
- name: compile lib
run: make lib
- name: compile service
run: make service
- name: compile trp-rt
run: make trp-rt
- name: run basic test
run: ./local.sh tests/rt/pos/core/fib10.trp
- name: run ci network test
Expand Down
74 changes: 50 additions & 24 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,35 +1,61 @@
dist
dist-*
cabal-dev
*.o
*.hi
*.chi
*.chs.h
*.DS_Store
*.dyn_o
*.dyn_hi
.hpc
.hsenv
TAGS

##################################################
# NPM
node_modules

##################################################
# Haskell

## Cabal Sandbox
.cabal-sandbox/
cabal.sandbox.config
cabal.project.local

## Program Coverage
.hpc
*.prof
*.aux
*.hp
*.eventlog
.stack-work/
cabal.project.local
.HTF/
TAGS
*.vscode
/out

## Test Framework
.HTF

## Virtual Environment
.hsenv

## Build files
*.o
*.hi
*.chi
*.chs.h
*.dyn_o
*.dyn_hi

##################################################
# Binaries from `compiler`
bin/*
node_modules
yarn.lock
yarn-error.log

##################################################
# Troupe Compiler (`troupec`) output
out/*

##################################################
# Editors

## Visual Studio Code
*.vscode

## Vi
*.swp
bin/troupe
bin/understudy
trp-rt/out/

## Emacs
*.#*
*~

##################################################
# Operating Systems

## MacOS
*.DS_Store
14 changes: 7 additions & 7 deletions Makefile
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
.PHONY: rt compiler lib p2p-tools
.PHONY: rt trp-rt compiler lib p2p-tools

# TODO: Rename to 'build/*' ?
all: npm rt compiler p2p-tools lib service
all: npm compiler rt trp-rt p2p-tools lib

npm:
npm install
Expand All @@ -20,16 +20,16 @@ p2p-tools:
lib:
cd lib; $(MAKE) build

service:
mkdir -p ./trp-rt/out
$(COMPILER) ./trp-rt/service.trp -l
trp-rt:
cd trp-rt/; $(MAKE) build

# TODO: Rename to 'clean/*' ?
clean: clean/compiler clean/rt clean/lib
clean: clean/compiler clean/rt clean/trp-rt clean/p2p-tools clean/lib
clean/compiler:
cd compiler; $(MAKE) clean
clean/rt:
cd rt; $(MAKE) clean
clean/trp-rt:
cd lib; $(MAKE) clean
clean/p2p-tools:
cd p2p-tools; $(MAKE) clean
clean/lib:
Expand Down
15 changes: 12 additions & 3 deletions compiler/.gitignore
Original file line number Diff line number Diff line change
@@ -1,6 +1,15 @@
##################################################
# Stack artifacts
.stack-work/
stack.yaml.lock

##################################################
# Cabal artifacts
Troupe-compiler.cabal
dist
dist-*
cabal-dev

##################################################
# Local compilation output
ir2raw-out
stack.yaml.lock
*~
out
Empty file removed compiler/ChangeLog.md
Empty file.
30 changes: 0 additions & 30 deletions compiler/LICENSE

This file was deleted.

29 changes: 20 additions & 9 deletions compiler/Makefile
Original file line number Diff line number Diff line change
@@ -1,24 +1,35 @@
.PHONY: test

all:
stack -v build $(STACK_OPTS)
all: build install

build: VERBOSITY_FLAG =
build:
stack $(VERBOSITY_FLAG) build $(STACK_OPTS)
build/verbose:
$(MAKE) $(MAKE_FLAGS) build VERBOSITY_FLAG="-v"

install: VERBOSITY_FLAG =
install:
$(MAKE) $(MAKE_FLAGS) build
mkdir -p ./../bin
stack -v install $(STACK_OPTS) --local-bin-path ./../bin/
stack $(VERBOSITY_FLAG) install $(STACK_OPTS) --local-bin-path ./../bin/
install/verbose:
$(MAKE) $(MAKE_FLAGS) install VERBOSITY_FLAG="-v"

clean:
rm *.cabal
stack clean --full
rm -rf ../bin
# If problems still persist after this, remove all GHC compilers in ~/.stack/programs/**/

ghci-irtester:
stack ghci --main-is Troupe-compiler:exe:irtester --no-load

ghci-troupec:
stack ghci --main-is Troupe-compiler:exe:troupec --no-load

test:
stack test $(STACK_OPTS)

parser-info:
stack exec happy -- -i src/Parser.y

ghci/irtester:
stack ghci --main-is Troupe-compiler:exe:irtester --no-load

ghci/troupec:
stack ghci --main-is Troupe-compiler:exe:troupec --no-load
1 change: 0 additions & 1 deletion compiler/README.md

This file was deleted.

Loading
Loading