Projects tagged ‘clr’


[56 total ]

99 Users
   

#develop (short for SharpDevelop) is a free IDE for C#, VB.NET and Boo projects on Microsoft's .NET platform.
Created over 3 years ago.

42 Users
   

A wrist-friendly language targeting the Common Language Runtime (.NET / Mono) with an extensible compiler pipeline, a syntax reminiscent of Python, and many other features (like type inference, syntactic macros, etc.)
Created over 3 years ago.

8 Users

A port of JTS to .Net, rewritten to take advantage of CLR constructs, as well as remove some of the legacy issues in JTS.
Created about 1 year ago.

7 Users
 

The Managed Operating System Alliance (MOSA) Framework is a set of operating system components, compiler tools and libraries for managed operating systems based on the Common Intermediate Language and ... [More] .NET technology. We provide the foundation for other projects, such as SharpOS and Ensemble OS. [Less]
Created about 1 year ago.

6 Users
   

IronPython is a new implementation of the Python programming language running on .NET. It supports an interactive console with fully dynamic compilation. It is well integrated with the rest of the ... [More] .NET Framework and makes all .NET libraries easily available to Python programmers, while maintaining full compatibility with the Python language. [Less]
Created about 1 year ago.

4 Users
 

MsSqlSpatial - Spatial Extensions for SQL Server 2005. This project conforms to OGC Simple Features Specification for SQL Revision 1.1 and provides many useful features to power GIS applications.
Created over 3 years ago.

4 Users
   

Qt4 bindings for Mono/.NET Based on the SMOKE library
Created over 2 years ago.

4 Users

Ensemble is an effort to write the next generation operating system using CIL compliant languages (currently only C#). The main focus of Ensemble is to write an consumer- and enterprise-level operating system that can be used in the real world.
Created about 1 year ago.

2 Users
 

IronRuby is an Open Source implementation of the Ruby programming language. It is built using the Dynamic Language Runtime, which makes it easier to build high-quality dynamic language implementations on top of Microsoft's .NET Framework.
Created about 1 year ago.

1 Users

Libjit is a library, which aims to be the best tool for advanced just-in-time compilation. Unlike its competitors like nanojit, GNU lightning, and LLVM, libjit is both open source, free, free ... [More] software, faster, more platform-independent, easier in use and easier in support. Libjit may be used on GNU/Linux, GNU, Hurd, Linux, Debian, Ubuntu, Suse, RedHat, Fedora Core, Windows, Windows Vista, Windows XP, and many other operating systems, hardware platforms, and software platforms. Our site contains an unofficial, experimental research branch of libjit library, which studies advanced just-in-time compilation and optimal dynamic compilation in general. Area of research includes generation of machine code, optimal register allocation algorithms, concentrating on ELS (extended linear scan) class register allocation algorithms, specialized implementations of CLI, ECMA-335, Microsoft Common Intermediate Language, virtual machine environments, embedded systems, and cloud computing. If you are looking for the official version please check the DotGNU site. Open source / free software for advanced just-in-time and dynamic compilationDesign of libjit and its source code have been started by Rhys Weatherley and Norbert Bollow. They are original creators of DotGNU and Portable.NET open source / free software implementation of Common Language Infrastructure for Free Software Foundation. Later Kirill Kononenko, Klaus Treichel, Aleksey Demakov continued development and design of libjit. To start with, they created missing parts and fixed already existing ones towards a release version suitable for software engineers developing just-in-time compilers. Secondly, they have originally created with libjit themselves from scratch a just-in-time compiler for Portable.NET with addition of another codec parser in Portable.NET source code. Why implement just-in-time and fast dynamic compilation with libjit library and its API?Libjit is in our opinion the best library for development of advanced just-in-time compilation in virtual machine implementations, domain-specific languages, dynamic programming languages, and scripting languages. Unlike its competitors, like nano JIT, GNU lightning, and LLVM, libjit has both all following properties: Compilation time with libjit with our project aims to be linear Libjit is suitable for just-in-time and fast dynamic compilation Machine code, which is generated by libjit is of a high quality for a fast compiler Libjit is platform independent. Compilation of its source code requires a C language GCC, IBM compatible compiler for platform, on which will be performed just-in-time compilation. Aggressive, support of specialized just-in-time compilation for target platforms include IA-32 (this support is of production quality), AMD64 (all regression tests in pnetlib regression tests do pass), ARM, Alpha DEC (implementation started by Thomas Cort in Google Summer of Code 2006). We think that support of any new hardware and software platforms may be added by software developers in a matter of 1-2 months. In a case that specializing just-in-time compilation is not supported for a target hardware platform, yet, and libjit itself runs on that target platform, libjit will always falls back to an interpretation mode, which is a byte code dispatching loop of handlers in C language Architecture of libjit has been well tested on Linux and Windows based real-time embedded systems, industrial software, production automation, and machinery industry Libjit has a remarkably easy API for software developers. A simple just-in-time compiler can be built in 5 minutes. A simple support of just-in-time compilation like in VMKit for MSIL, and Java byte code can be created with libjit in a matter of 2 weeks. A support for a high level industry production can be complete in 2 - 3 months We develop libJIT Linear Scan, which is a branch of libjit, which supports data-flow and control-flow analysis based optimizations for advanced just-in-time compilation Libjit is Free Software independent of any proprietary company interests Libjit is free, and can be used free of charge by any business. For instance, in commercial software, in research projects, in open source software, in Free Software, in compilers, and proprietary software Libjit allows to dynamically compile machine code parsing MSIL, Java bytecode, Ruby, Python, Perl, LLVM (LLVA) bytecode Libjit allows to add support of dynamically compilation in new software only once and for a long time. Software, which use libjit API adapts to new hardware features like multicores without extra changes to its own architecture It is possible to contribute new features and ideas into libjit, which later are used both in real-world industrial applications and research applications Engineers and researchers involved with development of libjit are hard-working, open-minded, and highly-cooperative Why is there this branch of libjit library? Should I use this branch of libjit library?Yes. When we made integration of a variant of linear scan register allocation algorithm in libjit we have found that a lot of research and development is needed to make this optimization really useful for current source code base in libjit. Shortly, there was created this branch of libjit that has support of various optimization algorithms, including efficient register allocation algorithms, data-flow and control-flow analysis. These algorithms are enabled with various optimization levels. A hope of this research is that it will help various software projects that already use or only consider implement advanced just-in-time compilation with libjit, and this branch will be integrated back with the main repository tree of libjit. See more information and downloads section for many answers of questions including this short review, how productivity of libjit design and its approach for just-in-time and fast dynamic compilation compares to use for this task of LLVM or GNU lightning Source code of libjit linear scan 0.1.2.5 have been released! See downloads for a package of source code of libjit linear scan 0.1.2.5, research papers, benchmarks, architecture of libjit linear scan, and other documentation. This release includes besides support of features of mainstream repository: Add optimization levels for IA-32 from 0 to 4 (jit_function_set_optimization_level) Add a new specializing Application Binary Interface (jit_abi_internal) Add a brand new optimizing generator of machine code (level 1, 2, 3, 4 of optimization) Various low-level machine dependent optimizations Aggressive optimization of division by integer constants with reciprocals as by Torbjorn Granlund and Peter L. Montgomery in "Division By Invariant Integers using Multiplication" divcnst-pldi94.pdf Add primitive code generators for MMX/Streaming SIMD Extensions/SSE/SSE2/SSE3 and others Use SIMD SSE/SSE2/SSE3 for floating point values and operations (level 1, 2, 3, 4 of optimization) Data-flow and control-flow based analysis and optimization (level 1, 2, 3, 4 of optimization) Fast static live variable analysis (level 2 of optimization) Dead-code elimination (level 4 of optimization) Static live variable analysis (level 3, 4 of optimization) Linear scan register allocation algorithm (level 2) based on algorithm proposed by Massimiliano Poletto and Vivek Sarkar Second-chance bin-packing register allocation algorithm (level 3, 4) Design of this extension has been well tested in regression tests and .NET applications running on top of GNU Portable.NET Where is libjit library used? For instance, do you use it yourself?Yes. Libjit has been used on industrial lasers produced by TRUMPF Laser division for embedded systems software. Those lasers use GNU Portable.NET, a GNU Portable.NET just-in-time compiler, and a GNU Portable.NET managed implementation of Windows.Forms class from Microsoft .NET Framework Libjit research is used as a research base for various other research projects like ILDJIT, which is developed by Simone Campanoni and Formal Languages And Compilers Group Politecnico di Milano. See ILDJIT, for documentation, and papers about how libjit is used in Intermediate Language Distributed Just In Time (ILDJIT) Another application of libjit library research is in HornetsEye by Jan Wedekind and Mobile Machines and Vision Laboratory (MMVL), a part of the Centre for Robotics and Automation (CENRA) at the Materials and Engineering Research Institute (MERI). See HornetsEye website for documentations, papers, and video about how libjit is used for real-time image and video processing with Ruby Documentation and tutorials in application of libjit library and its APIhttp://www.gnu.org/software/dotgnu/libjit-doc/libjit.html The primary interface is in C, for maximal reusability. Class interfaces are available for programmers who prefer C++. Designed for portability to all major 32-bit and 64-bit platforms. Simple three-address API for library users, but opaque enough that other representations can be used inside the library in future without affecting existing users. Up-front or on-demand compilation of any function. In-built support to re-compile functions with greater optimization, automatically redirecting previous callers to the new version. Fallback interpreter for running code on platforms that don’t have a native code generator yet. This reduces the need for programmers to write their own interpreters for such platforms. Arithmetic, bitwise, conversion, and comparison operators for 8-bit, 16-bit, 32-bit, or 64-bit integer types; and 32-bit, 64-bit, or longer floating point types. Includes overflow detecting arithmetic for integer types. Large set of mathematical and trigonometric operations (sqrt, sin, cos, min, abs, etc) for inlining floating-point library functions. Simplified type layout and exception handling mechanisms, upon which a variety of different object models can be built. Support for nested functions, able to access their parent’s local variables (for implementing Pascal-style languages). --Rhys Weatherley, author of libjit Please have a look to documentation of libjit on how you may use this tool for support of advanced just-in-time compilation in a commercial product, free software, or a research project. Mailing lists and google groupsQuestion or comment about use of GNU Portable.NET just-in-time compiler and libjit library? Email Dotgnu-pnet mailing list Question or comment about libjit library? Email the GNU libjit developers mailing list Question or comment about libjit linear scan? Email GNU libjit developers mailing list or libjit-linear-scan-register-allocator-dev google group If you want to ask about use of libjit with any other project you probably might be interested to contact mailing lists of those projects. We think the following projects might be interested to use libjit: Question or comment about use of Mono and libjit library? Email Mono-devel mailing list Question or comment about use of GCC and libjit library? Email GCC mailing list Question or comment about use of ILDJIT and libjit library? Email ILDJIT mailing list Question or comment about use of Ruby and libjit library? Use Ruby forum Question or comment about use of Parrot and libjit library? Email Parrot-dev mailing list Question or comment about use of Perl and libjit library? Email Perl5.porters mailing list Question or comment about use of Python and libjit library? Email Python-dev mailing list How contribute to development of libjit source code or get a special improvement in libjit, which your group requires for its software or hardware platform? Your job queries and monetary donations may help us to contribute more time and human resources to development of libjit. Please use savannah and libjit mailing list for submission of your patch or to report a bug you found. Please tell us your thoughts, share your idea on how you would like use libjit library. Please let us know your suggestions on how libjit community may improve libjit library even better for you, for your business needs or your cutting edge research project. If you are interested to submit your own source code or patch with a new algorithm to libjit, or you found that you require a repository access to cooperate with other researchers and software engineers then you probably may want an access to repository of libjit linear scan. Access to repository of libjit linear scan is given on first request by email. Related projects A project led by Novell (formerly by Ximian) to create an ECMA standard compliant, .NET-compatible set of tools, including among others a C# compiler and a CLR implementation. A software framework available with several Microsoft Windows operating systems. It includes a large library of coded solutions to prevent common programming problems and a virtual machine that manages the execution of programs written specifically for the framework. The .NET Framework is a key Microsoft offering and is intended to be used by most new applications created for the Windows platform. A .NET platform for extremely resource-constrained devices. An extensible embedded operating system written in C#. Cosmos also encompasses a compiler (IL2CPU) for converting CIL (.NET) bytecode into native instructions. The operating system is compiled together with a user program and associated libraries (written in any .NET language) using IL2CPU to create a bootable standalone native binary. The binary can be run off a floppy, usb key, or inside a VM. Cosmos is in early stages of development. The currently supported architecture is x86, with more planned. An open source .NET-C# based operating system currently under development by a group of volunteers and presided over by a team of six project administrators (Mircea-Cristian Racasan, Bruce Markham, Johann MacDonagh, Sander van Rossen, Jae Hyun and William Lahti). This operating system is only one of two C# based operating systems released under an open source license. SharpOS is still under major development with only one public version available and a basic command line interface A Ruby real-time computer vision extension running under GNU+Linux and Microsoft Windows The Ludicrous JIT Compiler Intermediate Language Distributed Just In Time (ILDJIT) is a dynamic compiler for the CIL bytecode developed by Politecnico di Milano and released under GPL license Our contact information: [Less]
Created 9 months ago.