All Projects → CozySynthesizer → Cozy

CozySynthesizer / Cozy

Licence: apache-2.0
The collection synthesizer

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Cozy

Leetcode
LeetCode solutions, written in python and cpp(LeetCode解题报告,记录自己的leetcode成长之路)
Stars: ✭ 179 (-8.67%)
Mutual labels:  data-structures
Interview Questions
List of all the Interview questions practiced from online resources and books
Stars: ✭ 187 (-4.59%)
Mutual labels:  data-structures
Supdate
Clojure's update with superpowers.
Stars: ✭ 190 (-3.06%)
Mutual labels:  data-structures
Emuto
manipulate JSON files
Stars: ✭ 180 (-8.16%)
Mutual labels:  data-structures
Cs61b sp19
Data Structures
Stars: ✭ 185 (-5.61%)
Mutual labels:  data-structures
Dailycodebase
2 month data structures and algorithmic scripting challenge starting from 20th December 2018 - Coding is Fun! 💯💯 Do it everyday!! Also, Do give us a ⭐ if you liked the repository
Stars: ✭ 186 (-5.1%)
Mutual labels:  data-structures
Atomix
A reactive Java framework for building fault-tolerant distributed systems
Stars: ✭ 2,182 (+1013.27%)
Mutual labels:  data-structures
C Macro Collections
Easy to use, header only, macro generated, generic and type-safe Data Structures in C
Stars: ✭ 192 (-2.04%)
Mutual labels:  data-structures
Data Structures And Algorithms Hacktoberfest18
List of data structures and algorithms. Feel free to contribute under Hacktoberfest '18!
Stars: ✭ 187 (-4.59%)
Mutual labels:  data-structures
Coursera
Source Code and Starter Code for Accelerated Computer Science Fundamentals Specialization on Coursera
Stars: ✭ 189 (-3.57%)
Mutual labels:  data-structures
Fun
操作系统,数据结构,网络,python,go,web
Stars: ✭ 181 (-7.65%)
Mutual labels:  data-structures
Library Checker Problems
The problem data (Test case generator, judge's solution, task, ...) of Library Checker
Stars: ✭ 183 (-6.63%)
Mutual labels:  data-structures
Programmers Community
This repository contains various solution of a problem in Ruby, C, C++, Python and Java.
Stars: ✭ 189 (-3.57%)
Mutual labels:  data-structures
Immutable
Thread-safe, persistent, immutable collections for the Crystal language
Stars: ✭ 179 (-8.67%)
Mutual labels:  data-structures
Data Structures And Algorithms
Data Structures and Algorithms implementation in Go
Stars: ✭ 2,272 (+1059.18%)
Mutual labels:  data-structures
Libchef
🍀 c++ standalone header-only basic library. || c++头文件实现无第三方依赖基础库
Stars: ✭ 178 (-9.18%)
Mutual labels:  data-structures
Leetcode Algorithm
分类整理leetcode算法题解,代码语言采用c++与python实现
Stars: ✭ 184 (-6.12%)
Mutual labels:  data-structures
Interviewguide
《大厂面试指北》——包括Java基础、JVM、数据库、mysql、redis、计算机网络、算法、数据结构、操作系统、设计模式、系统设计、框架原理。最佳阅读地址:http://notfound9.github.io/interviewGuide/
Stars: ✭ 3,117 (+1490.31%)
Mutual labels:  data-structures
Collections C
A library of generic data structures.
Stars: ✭ 2,297 (+1071.94%)
Mutual labels:  data-structures
Rust Algorithm Club
Learn algorithms and data structures with Rust
Stars: ✭ 184 (-6.12%)
Mutual labels:  data-structures

Cozy

Build Status

Cozy is a tool that synthesizes data structure implementations from simple high-level specifications. It automatically chooses a good representation of your data and efficient method implementations.

Cozy can greatly simplify the task of writing software modules with private state. In most cases, Cozy specifications are short and self-documenting, and are therefore much easier to maintain than handwritten implementations. Occasionally Cozy can discover deep optimizations that human developers shy away from.

Currently, Cozy can generate code for C++ and Java.

Quickstart

Dependencies:

  • Python >= 3.5
  • The Python modules listed in requirements.txt; install them with pip3 install -r requirements.txt.

If you run into trouble, consult the wiki page on troubleshooting setup and installation.

To list all command-line options (and ensure that everything is correctly installed):

$ git clone [email protected]:CozySynthesizer/cozy.git
$ cd cozy
$ pip3 install -r requirements.txt
$ python3 -m cozy --help

To synthesize an implementation (Basic.java) of the specification examples/basic.ds:

$ python3 -m cozy examples/basic.ds --java Basic.java

The cozy executable

If you want to install the global executable cozy on your system:

$ pip3 install .

Installation is optional; Cozy can run in this source directory as described in the "Quickstart" section. Running cozy [ARGS] behaves just like python3 -m cozy [ARGS] would.

More Information

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].