Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
130 commits
Select commit Hold shift + click to select a range
ae1d059
WOW IT CREATES A CBA
atom-dispencer Feb 25, 2023
c5857dd
Added Notepad++ formatters to all 3 langauges
atom-dispencer Feb 27, 2023
15b5153
Fixed arbitrary Statements
atom-dispencer Feb 27, 2023
ed30e9a
Replaced Register and StackBStatements
atom-dispencer Feb 27, 2023
64cec3c
Stack and crimson notes and things
atom-dispencer Mar 1, 2023
871bc8d
Created ScopeCToken
atom-dispencer Mar 2, 2023
f1e7d58
Push/PopSf responsibility moved to Scope from Function
atom-dispencer Mar 2, 2023
8a7489c
Implementing scopes. Now compiles, does not run.
atom-dispencer Mar 2, 2023
a84d5b9
Documented the compiler (probably done idk)
atom-dispencer Mar 6, 2023
e70fdae
Merge pull request #6 from GenElectrovise/crimson
atom-dispencer Mar 6, 2023
9a99254
Trying to get linking scopes to work
atom-dispencer Mar 15, 2023
3f51a62
O - M - Goodness!
atom-dispencer Mar 16, 2023
d90e846
Improved Crimson/Basic Notepad++ for dark mode
atom-dispencer Mar 16, 2023
8c9b94d
Updated Crimson Flattener copyright date
atom-dispencer Mar 16, 2023
03437a6
Update copyright notice again (semantic change)
atom-dispencer Mar 16, 2023
a52be89
Create fraction.crm
atom-dispencer Mar 18, 2023
bd0c09e
Updates to Crimson Notepad++ formatter
atom-dispencer Mar 18, 2023
55996c9
Crimson now parses nested scopes at parse-time
atom-dispencer Mar 19, 2023
4e09597
Much typing...
atom-dispencer Mar 19, 2023
ff6561d
AssemblyBStatement ~A -> A~
atom-dispencer Mar 19, 2023
ed49b43
Added JumpSubBStatement
atom-dispencer Mar 20, 2023
3cd8a63
Removed types.
atom-dispencer Mar 20, 2023
2b1995b
Converted .CRM test code to new syntax
atom-dispencer Mar 20, 2023
cbc0a4d
Alright, state reset. Let's get going!
atom-dispencer Mar 20, 2023
b0a0e22
im tired
atom-dispencer Mar 21, 2023
4bb72b2
grammar innit
atom-dispencer Mar 21, 2023
c96d24c
< and > are making me sad
atom-dispencer Mar 21, 2023
7f97a8b
Implemented ScopeVariableCStatement
atom-dispencer Mar 21, 2023
a98005f
Removed CrimsonBasic as Crimson dependency
atom-dispencer Mar 22, 2023
72ffa70
Update Crimson.csproj
atom-dispencer Mar 22, 2023
57b2bd1
With the replacement of CrimsonBasic comes a lot of refactoring...
atom-dispencer Mar 23, 2023
07afedc
Now there are just loads of undefined classes
atom-dispencer Mar 23, 2023
ac47cd4
It compiles once again...
atom-dispencer Mar 24, 2023
0da6a68
ToStrings for debugging
atom-dispencer Mar 24, 2023
3e50574
Improved program dumping/writing
atom-dispencer Mar 24, 2023
9fe9325
GeneralisationContext memory management
atom-dispencer Mar 24, 2023
015d657
Scope/GlobalVariableCStatement TODOs
atom-dispencer Mar 24, 2023
4cf4879
Update IData.cs
atom-dispencer Mar 24, 2023
69db61b
Merge branch 'gamesmaster3000x:master' into master
atom-dispencer Mar 24, 2023
9d5df82
Merge branch 'gamesmaster3000x:master' into crimson
atom-dispencer Mar 24, 2023
2609468
Changing name-fixing and some linking responsibilities
atom-dispencer Mar 25, 2023
b821d83
Implement Scope.GetScopeVariable()
atom-dispencer Mar 28, 2023
905be6f
Trying desperately to make VSCode work
atom-dispencer Mar 28, 2023
e77fb97
Async things
atom-dispencer Mar 30, 2023
d417a84
Async part 2
atom-dispencer Mar 30, 2023
4e6865e
Async part 3
atom-dispencer Mar 30, 2023
3959cc7
Transitioning from string paths to URIs
atom-dispencer Mar 31, 2023
f487df5
Async with logging changes
atom-dispencer Apr 1, 2023
d6a8060
maybe async works
atom-dispencer Apr 2, 2023
0f00c5b
YAY
atom-dispencer Apr 2, 2023
17eb99b
Alright now the issue is with parsing URIs...
atom-dispencer Apr 2, 2023
d0b5997
Quotes are now trimmed off of URIs
atom-dispencer Apr 2, 2023
3d3d7dd
yay now tasks just aren't completing...
atom-dispencer Apr 2, 2023
49de58e
Tidied up responsibilities within Library
atom-dispencer Apr 2, 2023
bb82745
Improving error handling
atom-dispencer Apr 3, 2023
a34d7ad
More error handling (now the logs are really messy)
atom-dispencer Apr 3, 2023
0bf6d48
Crimson.Panic now locks
atom-dispencer Apr 3, 2023
9a12852
Failing to get streams from URIs
atom-dispencer Apr 4, 2023
fde0c36
Failing to use HTTP to get scopes from URIs
atom-dispencer Apr 4, 2023
4110f93
LoadScope for Root now waits for others to finish
atom-dispencer Apr 4, 2023
a2a98fc
Panic remarks ;-)
atom-dispencer Apr 4, 2023
7982a87
Panic now shows name of PanicCode
atom-dispencer Apr 4, 2023
a4dcddd
URI error handling
atom-dispencer Apr 6, 2023
266be81
Panic fixes
atom-dispencer Apr 6, 2023
1c62f2b
Streams and remarks
atom-dispencer Apr 7, 2023
36cee9e
Loads of remarks!
atom-dispencer Apr 7, 2023
ef534ca
URIs and things
atom-dispencer Apr 7, 2023
36254db
Non-compiling Uri/URI weirdness
atom-dispencer Apr 8, 2023
63b686b
AbstractCURI and ICURIFactory
atom-dispencer Apr 8, 2023
1934d00
WOAH IT COMPILES AGAIN
atom-dispencer Apr 8, 2023
76744fa
OMFG OMFG OMFG OMFG OMFG OMFG OMFG OMFG OMFG
atom-dispencer Apr 10, 2023
b829e34
Logging updates for asynchronous work
atom-dispencer Apr 10, 2023
9e7b673
Starting caching
atom-dispencer Apr 11, 2023
7af6007
Caching things
atom-dispencer Apr 11, 2023
4a4fe1e
Settings!
atom-dispencer Apr 11, 2023
a7bd616
No more settings :)
atom-dispencer Apr 11, 2023
5701cc6
Caching updates
atom-dispencer Apr 12, 2023
852b3c4
Caching things! Again!
atom-dispencer Apr 12, 2023
e420fe0
How do I manage relative imports from remote imports?
atom-dispencer Apr 13, 2023
2008723
WOAH BIG RENAMING
atom-dispencer Apr 16, 2023
832ca30
Berry README
atom-dispencer Apr 16, 2023
dd7b148
Can now deploy/publish Berry locally
atom-dispencer Apr 16, 2023
1338fb4
Generated palettes for Berry UI
atom-dispencer Apr 17, 2023
b3956b9
Start Berry CSS
atom-dispencer Apr 17, 2023
ca9df18
Merge branch 'crimson' of github.com:GenElectrovise/RF_ASM into crimson
atom-dispencer Apr 17, 2023
ec1200d
Created Berry initial logo and favicons
atom-dispencer Apr 18, 2023
24af4e0
New logo!
atom-dispencer Apr 18, 2023
0c1828a
Added Berry colour palettes to tailwind
atom-dispencer Apr 19, 2023
6a587f0
Colour -> Color :/ because Americanisms
atom-dispencer Apr 19, 2023
1ac2ba6
Messing around with Stack Overflow and Dilithium
atom-dispencer Apr 20, 2023
668fa8e
Dilithium signing works
atom-dispencer Apr 20, 2023
4b88270
Added Runtime Compilation for Razor
atom-dispencer Apr 22, 2023
c330141
Sass is cool
atom-dispencer Apr 22, 2023
d49a347
CSS things
atom-dispencer Apr 22, 2023
b855e55
Sweet sweet looking home page
atom-dispencer Apr 22, 2023
1cc43e4
SQLite and Browse page
atom-dispencer Apr 23, 2023
d9986f8
Browse page
atom-dispencer Apr 25, 2023
f3630de
Yay wooo more restructuring
atom-dispencer Apr 26, 2023
0e29ea4
Oh wow it compiles
atom-dispencer Apr 26, 2023
9d9d411
Fixed project configuration
atom-dispencer Apr 26, 2023
035255e
Fixed Migrations
atom-dispencer Apr 28, 2023
5711c74
Created Initialiser
atom-dispencer Apr 28, 2023
9162286
Made BerryMVC project
atom-dispencer Apr 29, 2023
c0feb82
Color mode improvements
atom-dispencer Apr 30, 2023
8723b8f
More themes plus auto dark mode via media queries
atom-dispencer Apr 30, 2023
ef8c596
HE BE STEALING MY BERRIES
atom-dispencer May 4, 2023
181f033
Create Network Architecture.png
atom-dispencer May 5, 2023
2c94d9f
Restructuring
atom-dispencer May 5, 2023
8110261
Merge branch 'crimson' of github.com:GenElectrovise/RF_ASM into crimson
atom-dispencer May 5, 2023
3724259
MORE RESTRUCTURING
atom-dispencer May 5, 2023
cff7524
Fixed project references
atom-dispencer May 5, 2023
01656ef
Broke all the namespaces :)
atom-dispencer May 5, 2023
b63ff4a
Yay it now compiles!
atom-dispencer May 5, 2023
f026b81
Tidied Crimson structure
atom-dispencer May 5, 2023
7b50615
Create readme.md
atom-dispencer May 5, 2023
c35d3db
Fixed table formatting in Crimson readme
atom-dispencer May 5, 2023
79df4b7
Moved subprojects to root
atom-dispencer May 5, 2023
48ebfdd
Compiler readme now has structure of a Berry
atom-dispencer May 6, 2023
8ed538d
Merge branch 'master' into crimson
atom-dispencer May 6, 2023
355349b
Merge pull request #7 from GenElectrovise/crimson
atom-dispencer May 6, 2023
e9d8186
Even more restructuring of Crimson
atom-dispencer May 7, 2023
7312d7e
Fixed name swap of Masks.md and Stack.md
atom-dispencer May 7, 2023
bc20663
Created Berry structures in compiler
atom-dispencer May 7, 2023
3e47981
Moved Compiler/API/Berry to Compiler/Berry
atom-dispencer May 8, 2023
c79fd80
Trying to migrate to a Host architecture
atom-dispencer May 8, 2023
580732c
Renaming AGAIN
atom-dispencer May 8, 2023
ecc79ce
Created the BIG BAD EXAMPLE
atom-dispencer May 10, 2023
3c12a78
Edited the purpose of a Berry
atom-dispencer May 11, 2023
c3852e8
Archival note
atom-dispencer May 22, 2023
1710109
Merge pull request #8 from GenElectrovise/crimson
atom-dispencer May 22, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
25 changes: 25 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
**/.classpath
**/.dockerignore
**/.env
**/.git
**/.gitignore
**/.project
**/.settings
**/.toolstarget
**/.vs
**/.vscode
**/*.*proj.user
**/*.dbmdl
**/*.jfm
**/azds.yaml
**/bin
**/charts
**/docker-compose*
**/Dockerfile*
**/node_modules
**/npm-debug.log
**/obj
**/secrets.dev.yaml
**/values.dev.yaml
LICENSE
README.md
4 changes: 4 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
[*.cs]

# IDE0058: Expression value is never used
dotnet_diagnostic.IDE0058.severity = silent
131 changes: 131 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,134 @@
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
lerna-debug.log*
.pnpm-debug.log*

# Diagnostic reports (https://nodejs.org/api/report.html)
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json

# Runtime data
pids
*.pid
*.seed
*.pid.lock

# Directory for instrumented libs generated by jscoverage/JSCover
lib-cov

# Coverage directory used by tools like istanbul
coverage
*.lcov

# nyc test coverage
.nyc_output

# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
.grunt

# Bower dependency directory (https://bower.io/)
bower_components

# node-waf configuration
.lock-wscript

# Compiled binary addons (https://nodejs.org/api/addons.html)
build/Release

# Dependency directories
node_modules/
jspm_packages/

# Snowpack dependency directory (https://snowpack.dev/)
web_modules/

# TypeScript cache
*.tsbuildinfo

# Optional npm cache directory
.npm

# Optional eslint cache
.eslintcache

# Optional stylelint cache
.stylelintcache

# Microbundle cache
.rpt2_cache/
.rts2_cache_cjs/
.rts2_cache_es/
.rts2_cache_umd/

# Optional REPL history
.node_repl_history

# Output of 'npm pack'
*.tgz

# Yarn Integrity file
.yarn-integrity

# dotenv environment variable files
.env
.env.development.local
.env.test.local
.env.production.local
.env.local

# parcel-bundler cache (https://parceljs.org/)
.cache
.parcel-cache

# Next.js build output
.next
out

# Nuxt.js build / generate output
.nuxt
dist

# Gatsby files
.cache/
# Comment in the public line in if your project uses Gatsby and not Next.js
# https://nextjs.org/blog/next-9-1#public-directory-support
# public

# vuepress build output
.vuepress/dist

# vuepress v2.x temp and cache directory
.temp
.cache

# Docusaurus cache and generated files
.docusaurus

# Serverless directories
.serverless/

# FuseBox cache
.fusebox/

# DynamoDB Local files
.dynamodb/

# TernJS port file
.tern-port

# Stores VSCode versions used for testing VSCode extensions
.vscode-test

# yarn v2
.yarn/cache
.yarn/unplugged
.yarn/build-state.yml
.yarn/install-state.gz
.pnp.*

## Ignore Visual Studio temporary files, build results, and
## files generated by popular Visual Studio add-ons.
##
Expand Down
37 changes: 37 additions & 0 deletions Berry/BerryMVC/BerryMVC.csproj
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
<Project Sdk="Microsoft.NET.Sdk.Web">

<PropertyGroup>
<TargetFramework>net7.0</TargetFramework>
<Nullable>enable</Nullable>
<ImplicitUsings>enable</ImplicitUsings>
<UserSecretsId>cfc58a5e-2fd9-4f77-b2fc-a5874493760b</UserSecretsId>
<DockerDefaultTargetOS>Linux</DockerDefaultTargetOS>
</PropertyGroup>

<ItemGroup>
<None Remove="Migrations\Scripts\00000 %28initialcreate%29.sql" />
</ItemGroup>

<ItemGroup>
<EmbeddedResource Include="Migrations\Scripts\00000 (initialcreate).sql" />
</ItemGroup>

<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation" Version="7.0.5" />
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="7.0.5" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="7.0.5">
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
<PrivateAssets>all</PrivateAssets>
</PackageReference>
<PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite" Version="7.0.5" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="7.0.5">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
<PackageReference Include="Microsoft.jQuery.Unobtrusive.Ajax" Version="3.2.6" />
<PackageReference Include="Microsoft.VisualStudio.Azure.Containers.Tools.Targets" Version="1.18.1" />
<PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="7.0.6" />
<PackageReference Include="NLog" Version="5.1.4" />
</ItemGroup>

</Project>
71 changes: 71 additions & 0 deletions Berry/BerryMVC/Common/DbInitialiser.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
using BerryMVC.Data;
using BerryMVC.Models;
using Microsoft.EntityFrameworkCore;
using NLog;
using System.Reflection;

namespace BerryMVC.Common
{
public class DbInitialiser
{
private static readonly Logger LOGGER = LogManager.GetCurrentClassLogger();

public static void Initialise (BerryMVCContext context)
{
LOGGER.Info("Initialising database...");
context.Database.Migrate();
context.SaveChanges();

//ExecuteMigrationScripts(context);

// Users
if (!context.UserModels.Any())
{
var students = new UserModel[]
{
new UserModel{ Name="Admin" },
};
context.UserModels.AddRange(students);
context.SaveChanges();
LOGGER.Info("Initialised Users");
}


// Berries
if (!context.BerryModel.Any())
{
var berries = new BerryModel[]
{
};
context.BerryModel.AddRange(berries);
context.SaveChanges();
LOGGER.Info("Initialised Berries");
}
}

private static void ExecuteMigrationScripts (BerryMVCContext context)
{
LOGGER.Info("Finding migration scripts...");

Assembly a = Assembly.GetExecutingAssembly();
string[] resources = a.GetManifestResourceNames();
string[] names = resources
.Where(name => name.StartsWith("BerryMVC.Migrations.Scripts"))
.ToArray();

int i = 0;
foreach (string name in names)
{
LOGGER.Info($"Applying database migration {i++}/{names.Length} - {name}...");
using (var stream = a.GetManifestResourceStream(name))
using (var reader = new StreamReader(stream!))
{
string script = reader.ReadToEnd();
FormattableString exec = $"exec ({script})";
int rows = context.Database.ExecuteSql(exec);
LOGGER.Debug($"{rows} rows affected.");
}
}
}
}
}
29 changes: 29 additions & 0 deletions Berry/BerryMVC/Controllers/ApiController.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
using BerryMVC.Data;
using Microsoft.AspNetCore.Mvc;

namespace BerryMVC.Controllers
{
public class ApiController : Controller
{
private readonly ILogger<HomeController> LOGGER;
private readonly BerryMVCContext _berryMVCContext;

public ApiController (ILogger<HomeController> logger, BerryMVCContext berryMVCContext)
{
LOGGER = logger;
_berryMVCContext = berryMVCContext;
}

[AcceptVerbs("Get")]
public IActionResult GetBerry (string path)
{
return Ok("Lol get got");
}

[AcceptVerbs("Post")]
public IActionResult Post ([FromBody] string body)
{
return Ok("Lol get posted");
}
}
}
Loading