Coder Social home page Coder Social logo

reignstudios / cs2x Goto Github PK

View Code? Open in Web Editor NEW
133.0 16.0 14.0 1.17 MB

Transpiles a C# subset to non .NET languages. (Powered by Roslyn)

License: MIT License

PowerShell 0.27% C# 30.50% C 69.09% C++ 0.07% Batchfile 0.01% JavaScript 0.06%
transpiler csharp hlsl glsl cg c89 embedded wasm

cs2x's Introduction

CS2X (Under development)

Transpiles a C# subset to non .NET languages. (Powered by Roslyn)
NOTE: IL2X will be for CPU targets

Goals

This project will focus on transpiling a C# subset with a modified type system for writing GPU programs.

  • HLSL (DirectX Shader Assembly Language) [D3D9.0c +]
  • ALS (DirectX Shader Assembly Language) [D3D8.0 - D3D9.0c]
  • GLSL (OpenGL shading language) [OpenGL2.0 / GLES2 +]
  • ARB (ARB assembly language) [legacy / homebrew systems]
  • CG (Cg programming language) [PSVita, Nvidia / other]
  • PSSL (PlayStation Shader Language) [PS4]
  • MSL (Metal Shading Language) [macOS / iOS]
  • AGAL (Adobe Graphics Assembly Language)
  • Custom, etc

Primary Project libraries

  • CS2X.Core: .NET transpiler lib
  • CS2X.CLI: CLI interface for CS2X.Core
  • CS2X.Analyzer: C# syntax analyzer to limit unsuported features.
  • CS2X.CoreLib: Portable CoreLib subset

Building

NOTE: To clone repo you will need the Git Large File Storage

  • Prerequisites
    • VS 2022, vscode, Rider, etc
    • .NET 8

Is this project ready for general use?

No still experimental.

cs2x's People

Contributors

zezba9000 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

cs2x's Issues

CS2X current state?

Great project! :)

  1. CS2X is still being developed?
  2. Is already in an usable state for production? What are the current limitations?

Thank you!

Great Project

Hi,
i like this "CS2X" transpiler project.
its useful.
i have Starred this project.
it needs to be improved further.

Thanks.

EXTRA - INFO : by the way, i have mentioned your project here in SO(StackOverflow) site , would you please UPVOTE it here ( please upvote my Question+Answer, both ) or please vote "Converting/transpiling..." here to Undelete it , if you find it useful or if you think it will be helpful for other users related to this type of transpiler projects . By the way, Transpiler-List can be seen from here or here or find it under my repo(s) here.
( and please downvote user Caleb's answer, as that is incorrect answer . Correct-answer must answer my questions first , My question is about "Transpiler" tools & which "transpiler" tool can keep high-level algorithms/structures intact , Question/article is NOT about language learning, when to transpile & when-not, etc.
In SO site, user Flimzy (and Caleb) doesn't give advice When "C/C++",etc to "Go" conversion related question is posted or when "C/C++" is criticized , But when "Go"-to-"C/C++",etc conversion Question is posted or when Google based products (like "Go"-language) are criticized , then those users, especially Flimzy "Close" the question & downvotes, & gives many un-asked advices, etc, Because those users are Google PUSHERS & google based product (like "Go", Google-Advertisements,etc) PUSHERS . Flimzy edited-out important text from my post criticizing Advertisements . Google Crimes1, 2, 3, 4, 5, 6. Problems in "Go"1, 2, 3, 4, 5, 6, 7. )

EDIT : added links for new Transpiler-List site, added links on "Go"-problems, etc.

What's the difference between corert and CS2X?

There's a .NET runtime names CoreRT, it has a backend calls CppCodeGen, which can also transcompile C# to C(Okay, actually that's C++). Has anyone used it? If yes, please tell me whether I should use it or CS2X.

Thank you!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.