kaivan29 / bvandom-cs371p-allocator Goto Github PK
View Code? Open in Web Editor NEWAutomatically exported from code.google.com/p/bvandom-cs371p-allocator
Automatically exported from code.google.com/p/bvandom-cs371p-allocator
Documentation
1. Comment each function to explain what it does in a useful way.
2. Use Doxygen to document Allocator.h.
NOTE: "Use comments only if you need to explain the WHY of a particular implementation. Choose a coding convention and be consistent. Use good variable names. Write readable code with good indentation, blank lines, and blank spaces."
Original issue reported on code.google.com by [email protected]
on 22 Feb 2012 at 8:04
Google Form
1. Fill out the Alon Farchy's (?) Google form.
Original issue reported on code.google.com by [email protected]
on 22 Feb 2012 at 8:08
I can't tell how std::allocator uses exceptions from testing. It appears to
halt execution and report an error message for most types of errors (double
free, bad pointer, etc.). Also, the only exception documented with
std::allocator is std::bad_alloc, which doesn't apply to all cases. I need to
figure out how to mimic std:allocator's exception handling in my own.
Original issue reported on code.google.com by [email protected]
on 28 Feb 2012 at 12:24
Implementation
1. Use assert to check pre-conditions, post-conditions, argument validity, return-value validity, and invariants.
2. Your program should run as fast as possible and use as little memory as possible.
NOTE: Skipped #4 in issue tracker to be consistent with past rubrics as well as
the rubric for this project, which as of this posting does not change the
numbering after skipping acceptance tests.
Original issue reported on code.google.com by [email protected]
on 22 Feb 2012 at 8:03
Estimate the amount of time you will spend on this project: 20 hours
Record the number of hours you spend and compare the results.
Original issue reported on code.google.com by [email protected]
on 22 Feb 2012 at 8:26
i. Set up a public issue tracker and wiki at GPH:
http://code.google.com/p/bvandom-cs371p-allocator/
Issue Tracker
1. Track the 7 deliverables - each is numbered 1-7 in summary line.
2. Track bugs and features - close them as you complete them.
3. Track 5 issues - will not be numbered.
NOTE: "Categorize, prioritize, and describe each issue adequately".
Category = label for type-
Prioritize = label for priority-
Describe = written description and comments to follow up
Wiki
1. Describe the design of the algorithm at a high level - do not use pseudo-code.
2. Write at least 30 lines of description.
NOTE: Proofread the wiki and use bullets if necessary.
Original issue reported on code.google.com by [email protected]
on 22 Feb 2012 at 7:52
Turnin
1. Submit the project to the grader's Turnin account:
Alon Farchy (cs371ppj3 / afarchy)
2. Include a README.txt file that contains:
name
EID
Assembla URL
Google URL
NOTE: The files to turnin are
Allocator.h (5)
Allocator.log (2)
html/ (6)
README.txt (8)
TestAllocator.c++ (3)
TestAllocator.out (3)
Original issue reported on code.google.com by [email protected]
on 22 Feb 2012 at 8:16
I get the following output for testing doubles (not ints) with my Allocator in
TestAllocator.c++
TestAllocator.c++
TestAllocator.c++.app: Allocator.h:300: void Allocator<T, N>::deallocate(T*,
size_t) [with T = double, unsigned int N = 100u]: Assertion `value < 0' failed.
I have not figured out why this is happening for doubles and not ints.
Original issue reported on code.google.com by [email protected]
on 26 Feb 2012 at 8:37
i. Alon Farchy(?) will set up a public Git repository at Assembla:
https://www.assembla.com/code/afarchy-cs371p-allocator/git/nodes/
Unit Tests
1. Write unit tests before code (TestAllocator.c++).
2. When you encounter a bug, write a unit test that fails so that you can fix the bug and pass the unit test.
3. Write at least 3 unit tests for every function.
4. Tests corner cases and failure cases.
5. Name tests logically.
6. Push the unit tests as bvandom-TestAllocator.c++ to the grader's repository.
7. Pull other unit tests from the repo. Reach consensus on the unit tests.
NOTE: Use Valgrind when you run TestAllocator.c++.app
Original issue reported on code.google.com by [email protected]
on 22 Feb 2012 at 7:57
i. Set up a private Git repository at Assembla:
https://www.assembla.com/code/bvandom-cs371p-allocator/git/nodes/
ii. Invite the grader to your repository:
Alon Farchy (afarchy)
Oliver Jensen (ojensen5115)
Git
1. Commit at least 5 times.
2. Commit once for each bug or feature.
3. As you are committing, identify bugs or features involved.
4. Create a log of the commits (Allocator.log)
NOTE: Be able to write a meaningful commit message that describes your changes in one sentence. This implies that you should push frequently.
ALSO NOTE: "It is your responsibility to protect your code from the rest of the students in the class. If your code gets out,you are as guilty as the recipient of academic dishonesty."
Original issue reported on code.google.com by [email protected]
on 22 Feb 2012 at 7:54
When I run my_test_bad_alloc() on an Allocator<char, 100>, I get the following
output from valgrind:
==12409== Conditional jump or move depends on uninitialised value(s)
==12409== at 0x417F28: MyTestAllocator<char, 100ul>::my_test_bad_alloc() (in
/v/filer4b/v38q001/bvandom/cs371p/bvandom-cs371p-allocator/TestAllocator.c++.app
)
==12409== by 0x4494B9: CppUnit::TestCaller<MyTestAllocator<char, 100ul>
>::runTest() (in
/v/filer4b/v38q001/bvandom/cs371p/bvandom-cs371p-allocator/TestAllocator.c++.app
)
==12409== by 0x448C3B:
CppUnit::ExceptionTestCaseDecorator<std::bad_alloc>::runTest() (in
/v/filer4b/v38q001/bvandom/cs371p/bvandom-cs371p-allocator/TestAllocator.c++.app
)
==12409== by 0x4E528E9: CppUnit::TestCaseMethodFunctor::operator()() const
(in /usr/lib/libcppunit-1.12.so.1.0.0)
==12409== by 0x4E45E33: CppUnit::DefaultProtector::protect(CppUnit::Functor
const&, CppUnit::ProtectorContext const&) (in /usr/lib/libcppunit-1.12.so.1.0.0)
==12409== by 0x4E4EE66: CppUnit::ProtectorChain::protect(CppUnit::Functor
const&, CppUnit::ProtectorContext const&) (in /usr/lib/libcppunit-1.12.so.1.0.0)
==12409== by 0x4E59593: CppUnit::TestResult::protect(CppUnit::Functor
const&, CppUnit::Test*, std::string const&) (in
/usr/lib/libcppunit-1.12.so.1.0.0)
==12409== by 0x4E52687: CppUnit::TestCase::run(CppUnit::TestResult*) (in
/usr/lib/libcppunit-1.12.so.1.0.0)
==12409== by 0x4E52DC2:
CppUnit::TestComposite::doRunChildTests(CppUnit::TestResult*) (in
/usr/lib/libcppunit-1.12.so.1.0.0)
==12409== by 0x4E52CE5: CppUnit::TestComposite::run(CppUnit::TestResult*)
(in /usr/lib/libcppunit-1.12.so.1.0.0)
==12409== by 0x4E52DC2:
CppUnit::TestComposite::doRunChildTests(CppUnit::TestResult*) (in
/usr/lib/libcppunit-1.12.so.1.0.0)
==12409== by 0x4E52CE5: CppUnit::TestComposite::run(CppUnit::TestResult*)
(in /usr/lib/libcppunit-1.12.so.1.0.0)
I cannot figure out what has not been initialized.
Original issue reported on code.google.com by [email protected]
on 29 Feb 2012 at 1:09
I have a couple of issues in Allocator for chars and longs.
1. Chars - I keep getting invalid_argument exception thrown during dealloc()
2. Longs - In my_test_one, the assertion that the very first sentinel has been
set to -1*size_of(T) fails.
Original issue reported on code.google.com by [email protected]
on 28 Feb 2012 at 6:24
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.