Heading 1
Tones. O'clock to that every it dropped being his world as in the he clearly, is and evaluated or okay. Confidence he have left how they at been copy have the he come.
Heading 2
Tones. O'clock to that every it dropped being his world as in the he clearly, is and evaluated or okay. Confidence he have left how they at been copy have the he come.
Heading 3
Tones. O'clock to that every it dropped being his world as in the he clearly, is and evaluated or okay. Confidence he have left how they at been copy have the he come.
Heading 4
Tones. O'clock to that every it dropped being his world as in the he clearly, is and evaluated or okay. Confidence he have left how they at been copy have the he come.
Heading 5
Tones. O'clock to that every it dropped being his world as in the he clearly, is and evaluated or okay. Confidence he have left how they at been copy have the he come.
Heading 6
Tones. O'clock to that every it dropped being his world as in the he clearly, is and evaluated or okay. Confidence he have left how they at been copy have the he come.
Links
If you paste in a URL, like https://electronthemes.com - it'll automatically be linked up. But if you want to customise your anchor text, you can do that too!
Quotes
On he become from gift as that after myself rationally is the texts times, the royal wouldn't from if in too who all in about torn then to had be and could the is to.
" Could of client of so hologram identification get to far he its from thing way. A please left some gloomy still phase unmoved the annoyed. Of now heaven object his the game "
Then, fundamental; Had as by life her and because right behind on out payload not I to different this that with own luxury voice the and change. One all one in of carpeting ambushed be secretly and looked an concept sisters the.
Then, fundamental; Had as by life her and because right behind on out payload not I to different this that with own luxury voice the and change.
Images
On he become from gift as that after myself rationally is the texts times, the royal wouldn't from if in too who all in about torn then to had be and could the is to.
List Types
Unordered List
- Acting the but beacon a in cons, peacefully, if about honour
- And achievements upright, friends some understood. That school.
- Be sight assisted accept taken it men, in to rung of who
Ordered List
- Acting the but beacon a in cons, peacefully, if about honour
- And achievements upright, friends some understood. That school.
- Be sight assisted accept taken it men, in to rung of who
Table
Any between empire is a feel claim evening. Space just big into made, able happiness blonde italic go respect waved the a
| Title 1 | Title 2 | Title 3 | Title 4 |
|---|---|---|---|
| Division 1 | Division 1 | Division 1 | Division 1 |
| Division 2 | Division 2 | Division 2 | Division 2 |
| Division 3 | Division 3 | Division 3 | Division 3 |
Videos
On he become from gift as that after myself rationally is the texts times, the royal wouldn't from if in too who all in about torn then to had be and could the is
Audio
On he become from gift as that after myself rationally is the texts times, the royal wouldn't from if in too who all in about torn then to had be and could the is
Working with Code
Mild, he in tried the drunk to now, into his at lead understood. It not deeply scolded by his vows, by that of the spirit, is the I its is to fully being math way. From
HTML Tags

Normal wide image example

CSS Codes
.styleguide-image {
text-align: center;
h2, p{
text-align: left;
}
}
Javascript
$('.counter').counterUp({
delay: 10,
time: 1000
});
Few Other Styles
Bold Text: This is bold text example
Text Emphasize: This is text emphasize
Strike-through:
I am a strike through exanple


Aries
Aries : (March 21 – April 20)
You will enjoy good luck today. And will be happy-go-lucky fallow. You will work with authority at your workplace. And will earn good money by your own efforts. You will also have wonderful time with your family. You can decide to go out for entertainment, amusement or marry making. You will be helpful to others.


Krrish
on 2011-09-13 13:28:56
This is the Limit... Excellent work... You Guys converted nearly all PHP functions into JavaScript...
You Got another Fan for your site and for your work.
Nilesh
on 2010-10-08 07:36:20
why is the use of print_r functaion in php
Brett Zamir
on 2009-02-03 04:29:00
It can print out a JavaScript object. Since JavaScript has no special associative arrays, this project treats JavaScript objects like associative arrays (that's most likely why it says "array" when you put in a JS object)--and since PHP lets you put in arrays (and objects too), this function should too. var_export() is another option for you too. I hope we can also get var_dump() added at some point, but you should be able to see the contents of your JS objects with print_r or var_export()...
Dennis Day
on 2009-02-03 00:34:18
This code works great for printing out variable information but do you think it would be possible to print out a javascript object? I am new to javascript objects otherwise I would do it myself. To be honest, I'm not even sure it is possible.
Kevin van Zonneveld
on 2008-12-31 13:26:00
@ alexandre: I think your words are very clear :) Thanks alexandre, it's nice of you to let us know. Happy NYE tonight!
alexandre
on 2008-12-31 02:36:32
no words are able to tell how wonderful is your work. Congratulations you all!!!
PS: Sorry about my awful English... I'm Brazillian
Kevin van Zonneveld
on 2008-12-01 09:17:16
@ nikdo: regular for loops won't work for associative arrays (js objects) so we really need these 'for key in array' structures. What version of ie are you using? I find it hard to believe that IE in general does not support these kind of loops at all, because that would have led to problems earlier on.
nikdo
on 2008-11-28 12:48:13
using for(var a in b) isnt a good idea as it doesnt work in ie and is replacable with regular for(e1;e2;e3)
Alexander
on 2008-11-19 15:53:51
May be need change:
if (obj[key] instanceof Array) {
Change to:
if (obj[key] instanceof Array || obj[key] instanceof Object) {
therefor print a nested objects
Kevin van Zonneveld
on 2008-10-06 12:47:30
@ Tomot: Thanks for sharing, can you tell if it produces errors on any line?
Tomot
on 2008-10-03 15:45:51
print_r(document, true) returns in IE7: "[object]"
in FF3 works fine.
Kevin van Zonneveld
on 2008-09-29 12:33:29
@ Francois: The bug was in the htmlspecialchars_decode function and has been fixed. Sorry for the inconvenience and thank you for tipping me!
Francois
on 2008-09-25 14:52:01
There is a missing coma (,) at line 2985
it is:
= string.replace(/>/g '>');
but we should read:
= string.replace(/>/g, '>');
Kevin van Zonneveld
on 2008-08-27 17:34:32
@aron budinszky: Thank you very much for your input.
The object vs array story is because PHP does not differentiate between numerically indexed arrays and 'associative arrays'. But as soon as JavaScript encounters an associative array, it becomes an 'Object'. This is an essential difference between JS & PHP. In this project we've chosen to side with PHP.
Hopefully this answers your question. As for the BR tag, if I output PHP's print_r I can choose to enclose it between PRE tags. I would like JS scripters to be able to approach JS's print_r in the same manner.
aron budinszky
on 2008-08-07 10:47:49
also, changing the newlines to
 and the pad_char to " " creates a more readable result, even if it deviates from the php norm. since print_r is normally used to visually represent data, and since javascript is typically run within a browser, this might be the preferred way in this case...of course the opposite can also be argued...
aron budinszky
on 2008-08-07 09:27:32
oops. there was a mistake in my code below. here's the improved version...(using ben bryan's code). but i noticed that the line 6:
if (obj[key] instanceof Array || obj[key] instanceof Object)
is omitted from the current version in php.js, even though it is included in ben bryan's posted version...
if (obj instanceof Array || obj instanceof Object) {
if(obj instanceof Array) name = "Array";
else name = "Object";
str += name+"\n" + base_pad + "(\n";
for (var key in obj) {
if (obj[key] instanceof Array || obj[key] instanceof Object) {
str += thick_pad + "["+key+"] => "+formatArray(obj[key], cur_depth+1, pad_val, pad_char);
} else {
str += thick_pad + "["+key+"] => " + obj[key] + "\n";
}
}
str += base_pad + ")\n";
} else {
str = obj.toString();
};
aron budinszky
on 2008-08-07 09:17:48
here's a bit of an improvement for the print_r function (which, as it seems, ben bryan has partially posted below) to process nested objects as well as arrays. in addition to his code, it is important to print OBJECT or to print ARRAY for the appropriate data type, since accessing the data requires slightly different syntax.
// {{{ print_r
function print_r( array, return_val ) {
// Prints human-readable information about a variable
//
// + discuss at: http://kevin.vanzonneveld.net/techblog/article/javascript_equivalent_for_phps_print_r/
// + version: 803.612
// + original by: Michael White (http://crestidg.com)
// * example 1: print_r(['Kevin', 'van', 'Zonneveld']);
// * returns 1: true
var output = "", pad_char = " ", pad_val = 4;
var formatArray = function (obj, cur_depth, pad_val, pad_char) {
if(cur_depth > 0)
cur_depth++;
var base_pad = repeat_char(pad_val*cur_depth, pad_char);
var thick_pad = repeat_char(pad_val*(cur_depth+1), pad_char);
var str = "";
var name = "";
if(obj instanceof Array || obj instanceof Object) {
if(obj instanceof Array) name = "Array";
else name = "Object";
str += name+"\n" + base_pad + "(\n";
for(var key in obj) {
if(obj[key] instanceof Array || obj instanceof Object) {
str += thick_pad + "["+key+"] => "+formatArray(obj[key], cur_depth+1, pad_val, pad_char);
} else {
str += thick_pad + "["+key+"] => " + obj[key] + "\n";
}
}
str += base_pad + ")\n";
} else {
str = obj.toString();
};
return str;
};
var repeat_char = function (len, char) {
var str = "";
for(var i=0; i < len; i++) { str += char; };
return str;
};
output = formatArray(array, 0, pad_val, pad_char);
if(return_val !== true) {
document.write("
" + output + "
");
return true;
} else {
return output;
}
}// }}}
Alejandro
on 2008-06-04 17:14:28
Excelent!!!!!!!!!!!
Kevin van Zonneveld
on 2008-05-31 14:36:14
@ vinnieboombots: Looking at the code, I cannot establish how that could have happened at the moment. Would you be able to provide more debug info? (maybe a codeblock with how you tried to run print_r exactly?) Thank you.
vinnieboombots
on 2008-05-26 17:49:46
used it on an array of all links on this page (firebug)
it replaced the page contents with a comma separated value string of the array's values.
ie: http://kevin.vanzonneveld.net/techblog,http://kevin.vanzonneveld.net/techblog,http://kevin.vanzonneveld.net/techblog,http://kevin.vanzonneveld.net/techblog,http://kevin.vanzonneveld.net/techblog,http://kevin.vanzonneveld.net/techblog
Php's print_r output is different (& better)
array
[0]=>http://kevin.vanzonneveld.net/techblog
[1]=>http://kevin.vanzonneveld.net/links
[2]=>http://kevin.vanzonneveld.net/code
[3]=>http://kevin.vanzonneveld.net/about
Kevin van Zonneveld
on 2008-05-20 23:27:56
@ Ben Bryan: Thanks a lot Ben!
Ben Bryan
on 2008-05-20 06:00:20
Where formatArray function is testing data types, it does not except types of Object, replacing the if statement with the following seems to overcome this. Basically letting OBject types be processed. Tested with FF.
if (obj instanceof Array || obj instanceof Object) {
str += "Array\n" + base_pad + "(\n";
for (var key in obj) {
if (obj[key] instanceof Array || obj[key] instanceof Object) {
str += thick_pad + "["+key+"] => "+formatArray(obj[key], cur_depth+1, pad_val, pad_char);
} else {
str += thick_pad + "["+key+"] => " + obj[key] + "\n";
}
}
str += base_pad + ")\n";
} else {
str = obj.toString();
};
Kevin van Zonneveld
on 2008-05-08 22:01:40
@ GÃ¼nter Kits: I do not agree. When the return parameter is not true, the function should not return the string but print it instead. Unless I'm overlooking something, that's what it does now?
Günter Kits
on 2008-05-08 14:27:04
if(return_val !== true) {
should be
if(return_val == true) {
Kevin van Zonneveld
on 2008-03-15 11:55:34
@ Michael White: replaced!
Michael White
on 2008-03-11 21:03:15
Found a bug in print_r()
So far this bug only seems to affect Netscape and the version I am using is 7.2
Replace this segment:
var repeat_char = function (len, char) {
var str = "";
for(var i=0; i < len; i++) { str += char; };
return str;
};
with this segment:
var repeat_char = function (len, pad_char) {
var str = "";
for(var i=0; i < len; i++) { str += pad_char; };
return str;
};
Netscape thinks that "char" is a reserved word and so cannot be used as a variable name. It errors out saying something about a formal parameter. Changing the 'char" variable to "pad_char" solves that quite easily.
http://crestidg.com
ricardo avalos
on 2008-03-11 16:17:45
Greats Work!!
Very, very, very thanks you!!!
All my cordial greetings and appreciation from Chile
Ricardo
<EMAIL_ADDRESS>Kevin van Zonneveld
on 2008-03-04 23:35:42
@ Alfonso JimÃ©nez: Great contribution, thank you very much!
Alfonso Jiménez
on 2008-03-04 23:15:33
Hi Kevin! I post here the array_reduce function:
function array_reduce(a_input, callback) {
var lon = a_input.length;
var res = 0;
var tmp = new Array();
for(i = 0; i < lon; i += 2) {
tmp[0] = a_input[i];
if(a_input[i+1])
tmp[1] = a_input[i+1];
else
tmp[1] = 0;
res += callback.apply(null, tmp);
tmp = new Array();
}
return res;
}
Usage example:
array_reduce([1,2,3,4,5], function (x, y) { return (x+y); });
Regards!
Alfonso JimÃ©nez (http://www.alfonsojimenez.com)


All functions
|
|
as.orcid()
|
Convert an ORCID or something like an ORCID object |
|
browse()
|
Navigate to an ORCID profile in your default browser |
|
check_dois()
|
Verify DOI's are likely good |
|
fields
|
Lookup table for search fields |
|
identifiers()
|
Get identifiers |
|
issn_title
|
Lookup vector for journal titles by ISSN |
|
orcid()
|
Search for ORCID ID's. |
|
orcid_activities()
|
Get activities for a person |
|
orcid_address()
|
Get address information for a person |
|
orcid_auth()
|
ORCID authorization |
|
orcid_bio()
|
Get biography data for a person |
|
orcid_citations()
|
Get citations |
|
orcid_distinctions()
|
Get distinction for a person |
|
orcid_doi()
|
Search for ORCID ID's using DOIs |
|
orcid_educations()
|
Get education information for a person |
|
orcid_email()
|
Get education information for a person |
|
orcid_employments()
|
Get employment information for a person |
|
orcid_external_identifiers()
|
Get education information for a person |
|
orcid_fundings()
|
Get funding information for a person |
|
orcid_id()
|
Get data for particular ORCID's |
|
orcid_invited_positions()
|
Get invited positions for a person |
|
orcid_keywords()
|
Get education information for a person |
|
orcid_memberships()
|
Get memberships for a person |
|
orcid_other_names()
|
Get education information for a person |
|
orcid_peer_reviews()
|
Get peer review information for a person |
|
orcid_person()
|
Get personal data for a person |
|
orcid_ping()
|
Check if ORCID API is up and running |
|
orcid_qualifications()
|
Get qualifications for a person |
|
orcid_research_resources()
|
Get research resources for a person |
|
orcid_researcher_urls()
|
Get researcher urls for a person |
|
orcid_search()
|
Orcid search - more user friendly than orcid() |
|
orcid_services()
|
Get services |
|
orcid_works()
|
Get works for a person |
|
rorcid-defunct
|
Defunct functions in rorcid |
|
rorcid-package
|
A programmatic R interface the Orcid.org API |
|
works()
|
Get works data |


Tests
Set breakpoint
None
Sort by
None
First Name
Last Name
Job Title
DOB
Status
Ascending
Descending
Filter:
First Name
Last Name
Job Title
Contact
DOB
Status


Salutation:
First Name:
Last Name:
Company:
Phone:
Do Not Call:
Email:
Email Opt Out:
Mobile:
Fax:
Source:
Advertisement
Cold calling
Direct Mail
Other
Radio
Search Engine
Seminar
Telemarketing
Trade Show
Web Site
Word of Mouth
Web Site:
http://
Rating:
Unknown
Avoid
Poor
Fair
Good
Excellent
Industry:
Advertising
Architecture
Chemicals
Communications
Computers
Construction
Consulting
Distribution
Education
Finance
Government
Healthcare
Insurance
Legal
Manufacturing
Non-Profit
Other
Real Estate
Restaurant
Retail
Type:
Lead
Prospect
Customer
Closed
Partner
Supplier
Competitor
Employees:
Revenue:
Primary address:
City:
State:
Zip code:
Country:
Note:


piSTAR Lab Documentation¶
piSTAR Lab is an open source platform built to make AI experimentation accessible and fun.
Note
piSTAR Lab is in early development.
Who is piSTAR Lab for?¶
- AI Enthusiasts and Students:
Have fun experimenting with state-of-the-art AI Agents. No coding required.
Gain a better intuition about reinforcement learning by creating your own agents.
- Reinforcement Learning Researchers and Engineers:
Showcase your algorithms by creating extensions for other users to enjoy. No restrictive framework/library requirements.
Import your externally trained agents.
Use piSTAR Lab in your development workflow.
Try your algorithm on newly available environments with just a few clicks
- Game and Environment Developers:
Create Extensions” which make your game playable by piSTAR Agents.
Train your own Agents for your game’s AI
Features¶
Intuitive UI
Extension System for adding new agents, environments or tasks types
No framework requirements. Use any framework available in python (other languages coming)
Real-time streaming of observations during training
Single and Multi player environment support
Experiment tracking
Python API, anything you can do in the UI, you can do in Python as well
Uses Ray Project (https://ray.io/) under the hood for distributed processing
Coming soon (unordered)¶
Simpler installation and better support for Windows and Mac
Easily share your trained agents with friends or publicly
Docker based agents and environments
Remote agents and environments
Data environments for agents with support for learning from offline data
API for Data Interfaces
Support for browser based games and environments so human can interact directly with their agents.
Support for other programming languages
Human control mode for testing environments via the UI
Better workspace integration with VSCode and Jupyter
Interactive Debugger
Testing and quality verification of extensions
Contributing¶
piSTAR Lab is Open Source and welcomes your contributions.


There's another packaging article up on Slasdot, this time about the ROX Zero Install system. Zero Install is kind of like MacOS X application bundles, though with an important added feature: instead of explicitly copying bundles into your application folder, you only run them remotely (NFS?), with heavy caching so that effectively you are running them locally (but updates can happen magically). As usual there's lots of people talking about how wonderfully simpler MacOS packages are compared to Linux.
In some ways this seems better than Mac's system, because it saves a lot of management issues, including dependency (since one bundle can refer to another bundle, and installation is implicit). Though it opens up a lot of issues as well -- what happens when different updates conflict, e.g., package A and B both depend on package C, but A and B both depend on different versions. This will be quite common as the packages are incrementally updated by their respective authors. Explicit updating of installed software gives an opportunity to manage these conflicts.
Ultimately, I think bundles are the wrong solution to packaging. They handle the simple case, and that's not very interesting. But part of why they appear to be a good solution on MacOS X is because that is largely a proprietary platform.  Open source applications, however, are part of a whole community of software, and have extensive dependencies and interactions. Because there's no commercial overhead, the factoring of applications also tends to be more fine-grained.
But even in the proprietary world, MacOS's system is deficient. Installers are still fairly common -- perhaps those installers just place the bundle in the right location, but that is impossible for me to know. And there's no common way to choose or understand important configuration settings: Which application is the default handler (for a mime type, email, etc)? If I install a plugin, how does it know which browsers I have installed? If I install a service, how do I know it doesn't conflict with other services? (Only one service per port, after all)
Obviously much of Linux software can't be put in bundles currently. Part of the ideal of bundles is that they encourage decoupled application design, so even if we can't do it now, maybe the discipline would make our software better. But decoupling simply isn't possible, and the entire point of a packaging system is to robustly deal with the times when decoupled applications aren't possible: to deal with the system. Naive systems like bundles simply aren't robust with respect to conflicts and application interactions, even as simple as they seem from the outside. Software that isn't robust isn't user friendly, especially when it comes to system management (a task every user has and no user wants).
If packaging is seen as too complicated, I think that's because we pay too much attention to the filesystem. The user has no place in the modern filesystem. There's nothing useful for them to do there. There are some select places where they can do something -- /etc, some parts of /var (e.g., /var/www), and /home. That's it. (And while paths differ, the same is largely true for Windows and MacOS as well.) All the other parts of the filesystem are managed by specific applications (and even /etc should really be managed as well). Even inside /home there are managed areas -- Library on MacOS, or a pile of .whatever files in Linux.
The filesystem isn't even any good for users where they should have control. Files that users manage need to be versioned and well indexed -- things that aren't particular important for application files. The dumb pile-of-bits filesystems that we use are perfectly fine for storing program files and associated data, and there's no reason we should forgo that. But we shouldn't ask more of that pile of bits than it can provide. Bundles turn the file system into a package manager. But it should be fairly obvious that the file system (or the Finder or ROX filer) isn't going to be the kind of rich interface necessary for this most essential of system administration tasks.
An important feature of application packages is the separation of authority between the OS and the application. The installer needs to protect the system from the vendor. Most of the problems with Windows applications arise because the vendor-provided application installers have always been allowed to walk all over the operating system. RPM was a great leap forward, since the executable code was provided by the system and the package contained only information. Essentially, packages are interpreted by the RPM runtime. This leaves control in the hands of the root user, not the app provider. The Amiga installer was actually a lisp dialect interpreter! One could argue the the usefulness of the the Gentoo Portage system comes from layering a standard install api on code from varied sources and allowing the system to set common options across all installs easily. I'm sure Debian users would preach the joys of that system as well.
Dependencies are clearly a hard problem, especially with binary packages, since the unix idiom is that all options and dependencies need to be configured at compile-time. That problem really centers around code design, not packaging. The best that a packaging system can do is NOT MAKE IT WORSE. A good packaging system makes a system manageable by putting the authority in the hands of the operator. A weak or nonexistant packaging system leads to dll hell, packages breaking other packages and brittle, unstable systems.# Jeff Sacksteder
Note that RPM and dpkg both allow for arbitrary code to be run on package installation or removal -- but because a lot of the process is automated by the tool, these scripts can be more limited in scope.  But if, say, Gator (or whatever they're called now) created a Linux package of their product, they could be nearly as evil as they are on Windows.# Ian Bicking
I want a packaging system that relies on the features of a transactional filesystem. OK, I want a transactional filesystem too.  I can dream, anwyay.
Also, I think current Linux packaging systems like RPM and dpkg are too centered around the "one instance of this piece of software installed in a canonical location" theme. This is really nice for lots of "singleton" things that you don't really want to think too hard about (for instance, bash), but it kind of sucks if you want to install more than one instance of a piece of software on a machine or want to install as a nonroot user. Granted, it's possible to create "retargetable" RPMs and spell explicit installation locations in different ways, but most dpkg and RPM packages aren't created in ways that allow you to do this easily. I also don't want to need to install packages as the root user just to maintain the shared package metadata database... I'd rather install as a "normal" user and have per-user metadata databases that allowed me to choose the files on which the packages' dependencies relied interactively. I'll stop now, because if I don't, I'll have to do something about it. ;-)


1111111 You can activate a tab or pill navigation without writing any JavaScript by simply specifying data-toggle="tab" or data-toggle="pill" on an element. Adding the nav and nav-tabs classes to the tab ul will apply the Bootstrap tab styling, while adding the nav and nav-pills classes will apply pill styling.
2222222 You can activate a tab or pill navigation without writing any JavaScript by simply specifying data-toggle="tab" or data-toggle="pill" on an element. Adding the nav and nav-tabs classes to the tab ul will apply the Bootstrap tab styling, while adding the nav and nav-pills classes will apply pill styling.


This is a simple thyristor model with three pins: Anode, Cathode
and Gate. There are three operating modes:conducting, blocking and
reverse breakthrough.
As long as the thyristor is in blocking mode it behaves like a
linear resistance Roff=VDRM^2/(VTM*IH). But if the voltage between
anode and cathode exceeds VDRM or a positive gate current flows for
a sufficient time the mode changes to conducting mode. The model
stays in conducting mode until the anode current falls below the
holding current IH. There is no way to switch off the thyristor via
the gate. If the voltage between anode and cathode is negative, the
model represents a diode (parameters Vt, Nbv) with reverse
breakthrough voltage VRRM.
The dV/dt switch on is not taken into account in this model. The gate circuit is not influenced by the main circuit.


Film List
See What You Find
Browse
Catalog
Queue
My Account
Login
Register
Manage
Logout
Displaying
0
of
0
More
Login
Need an account?
Register
Login
Close
Register
Already registered?
Login
Register
Close


To order any of these as prints, or for a high quality, high resolution file, email<EMAIL_ADDRESS>Nature
Rubber and Road
Across the Sea
For legal reasons, I cannot make prints for the picture of the motorcycle tire.


Your account has been deactivated for violating our
terms and conditions.
If you feel you should not have been removed from this community, you may send a query
here.
{% else %}
Sign in failed.
Please try again.
{% endif %}
{% endfor %}
{% endif %}
{% endif %}


| 1 | package net.mooctest; | |
| 2 | ||
| 3 | import java.util.Scanner; | |
| 4 | ||
| 5 | /** | |
| 6 | * Calculator is a simple java application which parses mathematical expressions | |
| 7 | * and evaluates the result. Calculator can parse arithmetic operators as well | |
| 8 | * as some functions, store variables, and carry out some pre-defined commands. | |
| 9 | */ | |
| 10 | public class Calculator { | |
| 11 | ||
| 12 | /** | |
| 13 | * Regex which matches a command. This is simply a string of characters | |
| 14 | * following a forward slash (<code>/</code>). | |
| 15 | */ | |
| 16 | public static String commandRegex = "(\\s+)?(/)(.*)"; | |
| 17 | ||
| 18 | /** | |
| 19 | * Stores the previously calculated answer. This can be retrieved during runtime | |
| 20 | * as a variable. | |
| 21 | */ | |
| 22 | public static String previousAns; | |
| 23 | ||
| 24 | /** | |
| 25 | * ExpressionParser object which contains methods for parsing arithmetic | |
| 26 | * expressions. | |
| 27 | */ | |
| 28 | public static ExpressionParser expParser; | |
| 29 | ||
| 30 | /** | |
| 31 | * Evaluate a mathematical expression and return the result. | |
| 32 | * | |
| 33 | * @param exp | |
| 34 | * the expression to be parsed | |
| 35 | * @return the evaluated result | |
| 36 | * @throws cn.edu.nju.ise.math.ExpressionParserException | |
| 37 | * thrown when an exception is encountered while parsing the | |
| 38 | * expression | |
| 39 | */ | |
| 40 | public static String evaluate(String exp) throws ExpressionParserException { | |
| 41 | /* | |
| 42 | * Substitute all indstances of '<ans>' with the previously evaluated answer in | |
| 43 | * the cache | |
| 44 | */ | |
| 45 | exp = exp.replaceAll("<(\\s+)?ans(\\s+)?>", previousAns); | |
| 46 | /* Return the expression as evaluated by the ExpressionParser library */ | |
| 47 |
1
1. evaluate : mutated return of Object value for net/mooctest/Calculator::evaluate to ( if (x != null) null else throw new RuntimeException ) → KILLED |
return expParser.evaluate(exp); |
| 48 | } | |
| 49 | ||
| 50 | /** | |
| 51 | * Parses a command intended for the Calculator shell. | |
| 52 | * | |
| 53 | * @param command | |
| 54 | * the command to be parsed | |
| 55 | * @throws CommandNotFoundException | |
| 56 | * thrown when an unrecognized command is passed here | |
| 57 | */ | |
| 58 | public static void parseCommand(String command) throws CommandNotFoundException { | |
| 59 |
1
1. parseCommand : negated conditional → KILLED |
if (command.equals("exit")) { |
| 60 | /* If the commmand is '/exit', display an exit message exit the runtime */ | |
| 61 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("$> Exiting !"); |
| 62 |
1
1. parseCommand : negated conditional → KILLED |
} else if (command.equals("help")) { |
| 63 | /* Display some general helptext */ | |
| 64 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("$> Calculator Helptext"); |
| 65 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n ~~~~~~~~~~~~~~~~~~~"); |
| 66 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n Welcome to 'Calculator', a simple java application written to"); |
| 67 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n evaluate mathematical expressions."); |
| 68 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n This program displays a prompt (?>), after which you can enter"); |
| 69 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n a mathematical expression. 'Calculator' will display the result,"); |
| 70 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n or point out errors in the expression."); |
| 71 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n"); |
| 72 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n 'Calculator' can evaluate simple arithmetic expressions, using the"); |
| 73 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n operators (+, -, *, /, ^(power)), as well as parenthesis ('(', ')')."); |
| 74 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n 'Calculator' follows the BODMAS rule."); |
| 75 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n"); |
| 76 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n Following are some valid expressions : "); |
| 77 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n 1 + 1 => 2.0"); |
| 78 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n 1 * (2 + 3) => 5.0"); |
| 79 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n 10 * (64 ^ -0.5) => 1.25"); |
| 80 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n"); |
| 81 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n For help on more advanced topics, try entering the following : "); |
| 82 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n /help vars > help on Variables"); |
| 83 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n /help funcs > help on Functions"); |
| 84 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n /help cmds > help on Commands"); |
| 85 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n"); |
| 86 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n Enter '/list' for a complete list of valid commands."); |
| 87 |
1
1. parseCommand : negated conditional → KILLED |
} else if (command.equals("help vars")) { |
| 88 | /* Display help on 'variables' */ | |
| 89 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n$> Variables"); |
| 90 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n `````````"); |
| 91 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n 'Calculator' can also store user-defined variables."); |
| 92 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n The syntax for assigning and using variables is as follows : "); |
| 93 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n var = value > assign 'value' to 'var'"); |
| 94 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n <var> > <var> will be replaced"); |
| 95 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n its value."); |
| 96 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n"); |
| 97 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n Following are some valid uses of variables : "); |
| 98 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n x = 3 => 3.0"); |
| 99 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n y = <x> + 1 => 4.0"); |
| 100 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n (<x>^2 + <y>^2)^0.5 => 5.0 "); |
| 101 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n"); |
| 102 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n Nesting of assignments is also supported, as follows : "); |
| 103 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n x = 1 + (y = 1) => 2.0"); |
| 104 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n <x> => 2.0"); |
| 105 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n <y> => 1.0"); |
| 106 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n"); |
| 107 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n A special variable <ans> stores the previous expression."); |
| 108 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n Thus, the following is valid : "); |
| 109 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n 1 * 2 * 3 * 4 => 24.0"); |
| 110 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n <ans> * 5 => 120.0"); |
| 111 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n"); |
| 112 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n Enter '/list vars' for a list of stored variables."); |
| 113 |
1
1. parseCommand : negated conditional → KILLED |
} else if (command.equals("help funcs")) { |
| 114 | /* Display help on 'funcitons' */ | |
| 115 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n$> Functions"); |
| 116 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n `````````"); |
| 117 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n 'Calculator' supports the use of some basic functions."); |
| 118 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n They can be used with the following syntax : "); |
| 119 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n fnc[ value ] > evaluate 'fnc' of 'value'"); |
| 120 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n"); |
| 121 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n Following are some valid uses of functions : "); |
| 122 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n sin[<pi> / 2] => 1.0"); |
| 123 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n 1 + abs[2 - 3] => 2.0"); |
| 124 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n log[<e> ^ 3] => 3.0"); |
| 125 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n"); |
| 126 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n Enter '/list funcs' for a list of valid functions."); |
| 127 |
1
1. parseCommand : negated conditional → KILLED |
} else if (command.equals("help cmds")) { |
| 128 | /* Display help on 'commands' */ | |
| 129 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n$> Commands"); |
| 130 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n ````````"); |
| 131 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n 'Calculator' interprets expressions starting with '/' as"); |
| 132 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n 'commands'. These are special expressions which are not parsed as"); |
| 133 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n mathematical expressions, but as instructions to the 'Calculator'."); |
| 134 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n"); |
| 135 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n Enter '/list' for a complete list of valid commands."); |
| 136 |
2
1. parseCommand : negated conditional → KILLED 2. parseCommand : negated conditional → KILLED |
} else if (command.equals("list") || command.equals("list cmds")) { |
| 137 | /* Display a list of valid, acceptable commands */ | |
| 138 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("$> Commands : \n"); |
| 139 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n /help > general help"); |
| 140 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n /help vars > help on Variables"); |
| 141 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n /help funcs > help on Functions"); |
| 142 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n /help cmds > help on Commands"); |
| 143 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n /list vars > list variables"); |
| 144 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n /list funcs > list functions"); |
| 145 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n /list cmds or /list > list commands"); |
| 146 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n /exit > exit Calculator"); |
| 147 |
1
1. parseCommand : negated conditional → KILLED |
} else if (command.equals("list vars")) { |
| 148 | /* | |
| 149 | * Display a list of defined variables, currently stored in the ExpressionParser | |
| 150 | */ | |
| 151 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("$> Variables : \n"); |
| 152 | /* Loop through the variables in the array belonging to the ExpressionParser */ | |
| 153 |
3
1. parseCommand : changed conditional boundary → KILLED 2. parseCommand : Changed increment from 1 to -1 → KILLED 3. parseCommand : negated conditional → KILLED |
for (int i = 0; i < expParser.numberOfVars; i++) { |
| 154 | /* Pretty-print the variables */ | |
| 155 | System.out.printf("%n\t%-16s=%30s", expParser.variables[i][0], expParser.variables[i][1]); | |
| 156 | } | |
| 157 | /* Display the previously evaluated answer as a special variable : 'ans' */ | |
| 158 | System.out.printf("%n\t%-16s=%30s", "ans", previousAns); | |
| 159 |
1
1. parseCommand : negated conditional → KILLED |
} else if (command.equals("list funcs")) { |
| 160 | /* Display a list of valid functions */ | |
| 161 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("$ Functions : \n"); |
| 162 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n abs[ x ] > absolute value of <x>"); |
| 163 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n exp[ x ] > exponent of <x> (<e> ^ <x>)"); |
| 164 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n log[ x ] > logarithm of <x> (base <e>)"); |
| 165 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n fct[ x ] or x! > factorial of <x>"); |
| 166 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n deg[ x ] > convert <x> to degrees from radians"); |
| 167 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n rad[ x ] > convert <x> to radians from degrees"); |
| 168 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n _ "); |
| 169 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n sin[ x ] | "); |
| 170 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n cos[ x ] | "); |
| 171 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n tan[ x ] > trigonometric functions"); |
| 172 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n csc[ x ] | ( <x> in radians )"); |
| 173 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n sec[ x ] | "); |
| 174 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n ctn[ x ] | "); |
| 175 |
1
1. parseCommand : removed call to java/io/PrintStream::print → KILLED |
System.out.print("\n ~ "); |
| 176 | } else { | |
| 177 | /* Throw an Exception if the command does not match any of the above */ | |
| 178 | throw new CommandNotFoundException(command); | |
| 179 | } | |
| 180 | } | |
| 181 | } | |
Mutations | ||
| 47 |
1.1 |
|
| 59 |
1.1 |
|
| 61 |
1.1 |
|
| 62 |
1.1 |
|
| 64 |
1.1 |
|
| 65 |
1.1 |
|
| 66 |
1.1 |
|
| 67 |
1.1 |
|
| 68 |
1.1 |
|
| 69 |
1.1 |
|
| 70 |
1.1 |
|
| 71 |
1.1 |
|
| 72 |
1.1 |
|
| 73 |
1.1 |
|
| 74 |
1.1 |
|
| 75 |
1.1 |
|
| 76 |
1.1 |
|
| 77 |
1.1 |
|
| 78 |
1.1 |
|
| 79 |
1.1 |
|
| 80 |
1.1 |
|
| 81 |
1.1 |
|
| 82 |
1.1 |
|
| 83 |
1.1 |
|
| 84 |
1.1 |
|
| 85 |
1.1 |
|
| 86 |
1.1 |
|
| 87 |
1.1 |
|
| 89 |
1.1 |
|
| 90 |
1.1 |
|
| 91 |
1.1 |
|
| 92 |
1.1 |
|
| 93 |
1.1 |
|
| 94 |
1.1 |
|
| 95 |
1.1 |
|
| 96 |
1.1 |
|
| 97 |
1.1 |
|
| 98 |
1.1 |
|
| 99 |
1.1 |
|
| 100 |
1.1 |
|
| 101 |
1.1 |
|
| 102 |
1.1 |
|
| 103 |
1.1 |
|
| 104 |
1.1 |
|
| 105 |
1.1 |
|
| 106 |
1.1 |
|
| 107 |
1.1 |
|
| 108 |
1.1 |
|
| 109 |
1.1 |
|
| 110 |
1.1 |
|
| 111 |
1.1 |
|
| 112 |
1.1 |
|
| 113 |
1.1 |
|
| 115 |
1.1 |
|
| 116 |
1.1 |
|
| 117 |
1.1 |
|
| 118 |
1.1 |
|
| 119 |
1.1 |
|
| 120 |
1.1 |
|
| 121 |
1.1 |
|
| 122 |
1.1 |
|
| 123 |
1.1 |
|
| 124 |
1.1 |
|
| 125 |
1.1 |
|
| 126 |
1.1 |
|
| 127 |
1.1 |
|
| 129 |
1.1 |
|
| 130 |
1.1 |
|
| 131 |
1.1 |
|
| 132 |
1.1 |
|
| 133 |
1.1 |
|
| 134 |
1.1 |
|
| 135 |
1.1 |
|
| 136 |
1.1 2.2 |
|
| 138 |
1.1 |
|
| 139 |
1.1 |
|
| 140 |
1.1 |
|
| 141 |
1.1 |
|
| 142 |
1.1 |
|
| 143 |
1.1 |
|
| 144 |
1.1 |
|
| 145 |
1.1 |
|
| 146 |
1.1 |
|
| 147 |
1.1 |
|
| 151 |
1.1 |
|
| 153 |
1.1 2.2 3.3 |
|
| 159 |
1.1 |
|
| 161 |
1.1 |
|
| 162 |
1.1 |
|
| 163 |
1.1 |
|
| 164 |
1.1 |
|
| 165 |
1.1 |
|
| 166 |
1.1 |
|
| 167 |
1.1 |
|
| 168 |
1.1 |
|
| 169 |
1.1 |
|
| 170 |
1.1 |
|
| 171 |
1.1 |
|
| 172 |
1.1 |
|
| 173 |
1.1 |
|
| 174 |
1.1 |
|
| 175 |
1.1 |


Quickly and responsively toggle the display value of components and more with our display utilities. Includes support for some of the more common values, as well as some extras for controlling display when printing.
How it works
Change the value of the display property with our responsive display utility classes. We purposely support only a subset of all possible values for display
. Classes can be combined for various effects as you need.
Notation
Display utility classes that apply to all breakpoints, from xs to xl, have no breakpoint abbreviation in them. This is because those classes are applied from min-width: 0; and up, and thus are not bound by a media query. The remaining breakpoints, however, do include a breakpoint abbreviation.
As such, the classes are named using the format:
.d--{value}
for xs
.d--{breakpoint}--{value}
for sm
, md
, lg
, and xl
.Where value is one of:
none
inline
inline-block
block
table
table-cell
table-row
flex
inline-flex
The display values can be altered by changing the $displays variable and recompiling the SCSS.
The media queries affect screen widths with the given breakpoint or larger. For example, .d-lg-none sets display: none; on both lg and xl screens.

d--inline

d--inline

d--block

d--block

For faster mobile-friendly development, use responsive display classes for showing and hiding elements by device. Avoid creating entirely different versions of the same site, instead hide elements responsively for each screen size.
To hide elements simply use the .d-none class or one of the .d-{sm,md,lg,xl}-none classes for any responsive screen variation.
To show an element only on a given interval of screen sizes you can combine one .d-*-none class with a .d-*-* class, for example .d-none .d-md-block .d-xl-none will hide the element for all screen sizes except on medium and large devices.
| Screen Size | Class |
|---|---|
| Hidden on all | .d--none |
| Hidden only on xs | .d--none .d--sm--block |
| Hidden only on sm | .d--sm--none .d--md--block |
| Hidden only on md | .d--md--none .d--lg--block |
| Hidden only on lg | .d--lg--none .d--xl--block |
| Hidden only on xl | .d--xl--none |
| Visible on all | .d--block |
| Visible only on xs | .d--block .d--sm--none |
| Visible only on sm | .d--none .d--sm--block .d--md--none |
| Visible only on md | .d--none .d--md--block .d--lg--none |
| Visible only on lg | .d--none .d--lg--block .d--xl--none |
| Visible only on xl | .d--none .d--xl--block |
hide on screens smaller than lg

hide on lg and wider screens

hide on screens smaller than lg

Change the display value of elements when printing with our print display utility classes. Includes support for the same display values as our responsive .d-* utilities.
.d--print--none
.d--print--inline
.d--print--inline--block
.d--print--block
.d--print--table
.d--print--table--row
.d--print--table--cell
.d--print--flex
.d--print--inline--flex
The print and display classes can be combined.
Screen Only (Hide on print only)
Hide up to large on screen, but always show on print

Screen Only (Hide on print only)

Print Only (Hide on screen only)

Hide up to large on screen, but always show on print


An implementation of Paul
Levy's call-by-push-value
language, with recursion. This language is very precise about what
gets evaluated when. Call-by-value and call-by-name can be embedded in
it.
See the enclosed README.txt
and example.levy
file for details about syntax.


Reads and plots phylogenetic placements.
| Version: | 3.6 |
| Depends: | R (≥ 3.3.0) |
| Imports: | ape, RSQLite, jsonlite, phangorn, plotrix |
| Suggests: | prettydoc, knitr, rmarkdown, XML, rentrez, httr |
| Published: | 2018-11-06 |
| Author: | Pierre Lefeuvre |
| Maintainer: | Pierre Lefeuvre <pierre.lefeuvre at cirad.fr> |
| License: | GPL-2 | GPL-3 [expanded from: GPL] |
| NeedsCompilation: | no |
| In views: | Phylogenetics |
| CRAN checks: | BoSSA results |
| Reference manual: | BoSSA.pdf |
| Vignettes: |
Example of placement analysis using BoSSA Reference package construction from scratch Inside out circular tree plot |
| Package source: | BoSSA_3.6.tar.gz |
| Windows binaries: | r-devel: BoSSA_3.6.zip, r-release: BoSSA_3.6.zip, r-oldrel: BoSSA_3.6.zip |
| OS X binaries: | r-release: BoSSA_3.6.tgz, r-oldrel: BoSSA_3.6.tgz |
| Old sources: | BoSSA archive |
Please use the canonical form https://CRAN.R-project.org/package=BoSSA to link to this page.


--- layout: page title: About header-img: "img/about-bg.png" ---
I am a programming enthusiast that likes to develop solutions and teach others how to write their own code


nips nips2001 nips2001-1 nips2001-1-reference knowledge-graph by maker-knowledge-mining
Source: pdf
Author: John Langford, Rich Caruana
Abstract: We present a new approach to bounding the true error rate of a continuous valued classiﬁer based upon PAC-Bayes bounds. The method ﬁrst constructs a distribution over classiﬁers by determining how sensitive each parameter in the model is to noise. The true error rate of the stochastic classiﬁer found with the sensitivity analysis can then be tightly bounded using a PAC-Bayes bound. In this paper we demonstrate the method on artiﬁcial neural networks with results of a order of magnitude improvement vs. the best deterministic neural net bounds. £ ¡ ¤¢
[1] Peter Bartlett, “The Sample Complexity of Pattern Classiﬁcation with Neural Networks: The Size of the Weights is More Important than the Size of the Network”, IEEE Transactions on Information Theory, Vol. 44, No. 2, March 1998.
[2] V. Koltchinskii and D. Panchenko, “Empirical Margin Distributions and Bounding the Generalization Error of Combined Classiﬁers”, preprint, http://citeseer.nj.nec.com/386416.html
[3] John Langford and Matthias Seeger, “Bounds for Averaging Classiﬁers.” CMU tech report, 2001.
[4] David MacKay, “Probable Networks and Plausible Predictions - A Review of Practical Bayesian Methods for Supervised Neural Networks”, ??
[5] David McAllester, “Some PAC-Bayes bounds”, COLT 1999.


Gesenius' Hebrew Grammar
Preliminary remark.—From the statement made above, §83d, it follows that an external similarity between forms is no proof of their similar origin, and, vice versa, external difference does not exclude the possibility of their being closely related both in origin and meaning.
I. Nouns with One Vowel, originally Short.
R. Růzička, ‘Beiträge zur Erklärung der nomina segolata,’ in Sitz.-ber. d. böhmischen Ges. d. Wiss., Prag, 1904.
1. Nouns with one of the three short vowels after the first radical: present ground-form qăṭl, qĭṭl, qŭṭl.
The supposition of monosyllabic ground-forms appeared to be required by the character of forms now existing in Hebrew, as well as in Arabic, &c. But there are strong reasons for believing that at least a large proportion of these forms go back to original dissyllabic bases with a short vowel in each syllable. When formative additions were made, the vowel of the 2nd syllable was dropped, i.e. before case-endings in Assyrian and early Arabic, and before pronominal suffixes in Hebrew. From the forms thus produced, the bases qăṭl, qĭṭl, qŭṭl have been assumed, although they never appear in Hebrew except in the singular and then in connexion with suffixes.
In support of this view of a large number of original dissyllabic bases, we must not, however, appeal to the Seghôl or Pathaḥ under the 2nd consonant of the existing developed forms, סֵ֫פֶר, זֶ֫רַע, &c. These are in no sense survivals or modifications of an original full vowel in the 2nd syllable, but are mere helping-vowels (§28e) to make the monosyllabic forms pronounceable,[1] and consequently disappear when no longer needed. Under certain circumstances even (e.g. in קשְׁטְ) they are not used at all. Actual proofs of such original toneless full vowels in the 2nd syllable of existing Segholates are—
1. Forms like Arab. málik, for which rarely malk, corresponding to the Hebrew ground-form; cf. De Lagarde, Uebersicht, p. 72 ff.
2. In Hebrew גֶּ֫דֶר, יֶ֫רֶךְ, כֶּ֫בֶד, כֶּ֫תֶף, the connective forms of גָּדֵר, יָרֵךְ, &c., which latter can only come from ground-forms gădĭr, yărĭk, kăbĭd, kătĭp.
3. The forms treated under §84ae, which are in many ways related to the Segholates proper, in so far as they are to be referred to original dissyllabic bases.
4. The plurals of Hebrew Segholates, since, with very rare exceptions, they take Qameṣ under the 2nd radical before the termination ־ִים, fem. ־וֹת, of the absolute state, as מְלָכִים, מְלָכוֹת, סְפָרִים, &c. This Qameṣ (see note 1 on §26e) can only be due to a lengthening of an original short vowel in the 2nd syllable, and hence it would seem as though the vowel were always ă. This is impossible from what has been said, especially under 1 and 2. Hence the explanation of the consistent occurrence of Qameṣ in the plurals of all Segholates can only be that the regularly formed plurals (i.e. from singulars with original ă in the 2nd syllable) became the models for all the others, and ultimately even for some really monosyllabic forms.[2]
(a) From the strong stem the above three ground-forms are further developed to קֶ֫טֶל,[3] קֵ֫טֶל, קֹ֫טֶל (cf. §27r and in §93 the explanations of Paradigm I, a–c); without a helping vowel (§28d) קשְׁטְ truth. If the second or third radical be a guttural, a helping Pathaḥ takes the place of the helping Seghôl, according to §22d, e.g. זֶ֫רַע seed, נֵ֫צַח eternity, פֹּ֫עַל work; but with middle ה or ח, note לֶ֫חֶם bread, רֶ֫חֶם (as well as רַ֫חַם) womb, אֹ֫הֶל tent, בֹּ֫הֶן thumb; so with final א, פֶּ֫רֶא a wild ass, &c.; with a middle guttural also the modification of the principal vowel ă to è does not occur, e.g. רַ֫הַב, נַ֫עַר, לַ֫חַץ (exceptions, again, לֶ֫חֶם, רֶ֫חֶם). On the inflexion, cf. §93, Paradigm I, a–f, and the explanations. In חֵטְא sin, the א has wholly lost its consonantal value.
Examples of feminines: מַלְכָּה (directly from the ground-form malk, king), סִתְרָה a covering (also סֵ֫תֶר), אָכְלָה food (also אֹ֫כֶל); with a middle guttural נַֽעֲרָה girl, טָֽהֳרָה purity (also טֹ֫הַר). Cf. §94, Paradigm I.
(b) From weak stems: (α) from stems ע״ן, e.g. אַף nose (from ʾănp, hence with formative additions, e.g. אַפִּי for ʾanpî, my nose); עֵז a she-goat (ground-form ʿĭnz); fem. חִטָּה wheat; (β) from stems ע״ע (§93, Paradigm I, l–n); פַּת a morsel, עַם people (so, when in close connexion with the next word; unconnected עָם; with article הָעָם, לָעָם, &c.); רַב in the sense of much, but רָב great, numerous (in close connexion also רַב); רָע evil, with the article in close connexion הָרַע, unconnected הָרָע; with the ă always lengthened to ā, יָם sea; fem. חַיָּה life, and with attenuation of the ă to ĭ, מִדָּה measure; from the ground-form qĭṭl, אֵם mother; fem. גִּזָּה a shearing; from the ground-form qŭṭl, חֹק statute, fem. חֻקָּה. (γ) from stems ע״וּ (Paradigm I, g and i); מָ֫וֶת death (from má-ut, the u passing into the corresponding consonant, as in תָּ֫וֶךְ middle) or contracted יוֹם day, שׁוֹט whip, שׁוֹר a bull; fem. עַוְלָה perverseness (also contracted עוֹלָה); from the ground-form qŭṭl, צוּר a rock; fem. סוּפָה a storm. (δ) from stems ע״י (Paradigm I, h); זַ֫יִת an olive-tree (with a helping Ḥireq instead of a helping Seghôl) from zá-it, the i passing into the corresponding consonant; or contracted חֵיק bosom, חֵיל 2 K 1817 (elsewhere חַ֫יִל) host; fem. שֵׂיבָה grey hair; from the ground-form qĭṭl, דִּין judgement; fem. בִּינָה understanding. (ε) from stems ל״ה (Paradigm I, k); partly forms such as בֶּ֫כֶה weeping, הֶ֫גֶה murmuring, נֶ֫דֶה a present, קֶ֫צֶה the end, partly such as בְּכִי, אֲרִי a lion (ground-form băky, ʾăry); cf. also the forms from stems originally ל״ו, שָׂ֫חוּ swimming (ground-form săḥw); fem. שַׁלְוָה rest, גַּֽאֲוָה exaltation; from stems ל״י, אַלְיה a fat tail, and with attenuation of ă to ĭ שִׁבְיָה captivity, also שְׁבִית, formed no doubt directly from the masc. שְׁבִי with the fem. termination ת; from the ground-form qĭṭl, חֲצִי (from ḥĭṣy); fem. חֶדְוָה joy, עֶרְוָה and עֶרְוָה nakedness; from the ground-form qŭṭl, בֹּ֫הוּ (from bŏhw) waste, תֹּ֫הוּ emptiness; דְּלִי, for דֳּלִי, bucket; fem. אֳנִיָּה a ship (directly from אֳנִי a fleet).
The masculines as well as the feminines of these segholate forms may have either an abstract or a concrete meaning. In the form קֹ֫טֶל the passive or at any rate the abstract meaning is by far the more common (e.g. נֹ֫עַר youthfulness, abstract of נַ֫עַר boy; אֹ֫כֶל food, &c.).[4] 2. Nouns with one of the three short vowels under the second radical (present ground-form qeṭăl, qeṭŭl, qeṭŭl), e.g. דְּבַשׁ honey, דְּוַי sickness, חֲתַת terror; and so always with middle א, בְּאֵר a well, זְאֵב a wolf, בְּאֹשׁ stench. In reality these forms, like the segholates mentioned in No. 1 (see above, §84aa), are, probably, for the most part to be referred to original dissyllabic forms, but the tone has been shifted from its original place (the penultima) on to the ultima. Thus dibáš (originally dı́baš) as ground-form of דְּבַשׁ is supported both by the Hebrew דִּבְשִׁי (with suffix of the first person), and by the Arabic dibs, the principal form; biʾír (according to Philippi with assimilation of the vowel of the second syllable to that of the first) as ground-form of בְּאֵר is attested by the Arabic biʾr; for בְּאשׁ (Arabic buʾs) similarly a ground-form buʾúš may be inferred, just as a ground-form qŭṭŭl underlies the infinitives of the form קְטֹל.[5]
II. Nouns with an original Short Vowel in both Syllables.
3. The ground-form qăṭăl, fem. qăṭălăt, developed in Hebrew to קָטָל (§93, Paradigm II, a, b) and קְטָלָה (§§94, 95, Paradigm II, a, b), mostly forms intransitive adjectives, as חָכָם wise, חָדָשׁ new, יָשָׁר upright; but also substantives, as דָּבָר a word, and even abstracts, as אָשָׁם guilt, רָעָב hunger, שָׂבָע satiety; in the fem. frequently abstract, as צְדָקָה[6] righteousness; with an initial guttural אֲדָמָה earth.—Of the same formation from verbs ע״ע are בָּדָד alone, עָנָן cloud; passive חָלָל pierced.—In verbs ל״ה a final Yôdh is almost always rejected, and the ă of the second syllable lengthened to è. Thus שָׂדַי field, after rejection of the י and addition of ה as a vowel-letter, becomes שָׂדֶה (cf. §93, Paradigm II, f); fem. e.g. שָׁנָה year; cf. §95, Paradigm II, c. From a verb ל״ו the strong form עָנָו afflicted occurs.
4. The ground-form qăṭĭl, fem. qăṭĭlăt, developed to קָטֵל (§ 93, Paradigm II, c–e) and קְטֵלָה, is frequently used as participle of verbs middle e (§50b), and hence mostly with an intransitive meaning; cf. זָקִן old, an old man; כָּבֵד heavy; fem. בְּהֵמָה cattle, אֲפֵלָה and חֲשֵׁכָה darkness.—From verbs פ״י: irregularly, דָּֽלִיּוֹתָיו the branches of it, Jer 1116, &c., generally referred to a sing. דָּלִית (stem דלה), and הָֽרִיּוֹתָיו Ho 141 (from הָרָה, st. constr. הֲרַת, plur. st. absol. and constr. הָרוֹת).—From a verb ל״ו with consonantal Wāw: שָׁלֵו at ease, incorrectly written plene שָׁלֵיו Jb 2123.
5. The ground-form qăṭŭl, developed to קָטֹל (also written קָטוֹל), generally forms adjectives, e.g. אָיֹם terrible, בָּרֹד piebald, מָתוֹק sweet, נָקֹד speckled, עָבֹת interwoven, עָגֹל round, עָמֹק deep, עָקֹב hilly, צָהֹב golden; קָטֹן small, only in sing. masc., with a parallel form קָטָן of the class treated under f, fem. קְטַנָּה, plur. קְטַנִּים. These forms are not to be confounded with those in No. III, from the ground-form qăṭâl.—Fem. אֲיֻמָּה, כְּבוּדָּה (glorious), עֲבֻתָּה, עֲנֻגָּה (delicate), עֲגֻלָּה, עֲמֻקָּה, with sharpening of the third radical, in order to keep the original ŭ short, and similarly in the plurals בְּרֻדִּים, נְקֻדִּים, עֲגֻלִּים, אֲסֻפִּים stores, &c.
6. The ground-form qĭṭâl develops to קֵטָל (cf. §93, Paradigm II, Rem. 1), e.g. לֵבָב heart, עֵנָב a bunch of grapes, שֵׁבָר strong drink; from a verb ל״ה, probably of this class is רֵעֶה, generally contracted to רֵע friend, ground-form riʿay: the full form is preserved in רֵעֵ֫הוּ his friend, for רֵעֵ֫יהוּ.
III. Nouns with an original Short Vowel in the First and a Long Vowel in the Second Syllable.
7. The ground-form qăṭâl in Hebrew always develops to the form קָטוֹל, the â becoming an obscure ô. The fact that this form is also written קָטֹל must not lead to the confusion of these forms with those mentioned in No. 5, from the ground-form qăṭâl.[7] Moreover the qaṭôl-class includes forms of various origin, and therefore of various meaning, as (a) intransitive adjectives like גָּדוֹל great, קָדוֹשׁ holy, fem. גְּדוֹלָה, the short vowel becoming Šewâ, whereas in גָּדוֹל, &c., before the tone it is lengthened to ā; (b) the infinitives absolute of the form קָטוֹל (§45a) as representing the abstract idea of the verb, and abstract substantives like כָּבוֹד honour, שָׁלוֹם peace (Arab. sălâm); (c) substantives and adjectives in an active sense, as בָּחוֹן assayer (of metals,) עָשׁוֹק an oppressor, חָמוֹץ oppressing; in the feminine בָּֽגוֹדָה treacherous Jer 37.10, the irregular retention of the ā in the third syllable from the end is no doubt to be explained, with Brockelmann, from Aramaic influence, the punctuator having in mind the Aramaic nomen agentis qâṭôl.
8. The ground-form qăṭîl develops to קָטִיל (cf. §93, Paradigm IV, a and b). Here also forms of various origin and meaning are to be distinguished: (a) adjectives used substantivally with a passive meaning to denote duration in a state, as אָסִיר a prisoner, מָשִׁיחַ an anointed one. These proper qăṭîl-forms are parallel to the purely passive qaṭûl-forms (see m), but others are due to a strengthening of original qaṭĭl-forms. These are either (b) intransitive in meaning, as צָעִיר small, and, from ל״י stems, נָקִי pure, עָנִי poor (see §93vv), or (c) active, as נָבִיא a speaker (prophet), פָּקִיד an overseer.—Of a different kind again (according to Do Lagarde, infinitives) are (d) forms like אָסִיף the ingathering, בָּצִיר vintage, חָרִישׁ ploughing time, קָצִיר harvest. On qăṭṭîl forms with a kindred meaning, cf. §84bf.
9. The ground-form qăṭûl develops to קָטוּל. As in the qaṭâl and qaṭîl-forms (see k and l), so here forms of various kinds are to be distinguished: (a) qaṭûl-forms proper, with passive meaning, especially all the passive participles of Qal; fem. e.g. בְּתוּלָה virgin (properly secluded). On the other hand, by strengthening an original qaṭŭl-form we get (b) certain stative adjectives (§50f), as אָנוּשׁ incurable, עָצוּם strong, עָרוּם subtil, or even transitive, as אָחוּז holding; (c) active substantives, as יָקוּשׁ a fowler. Further, some of the forms mentioned in §84bg belong to this class; see above, the remark on l.
10. The ground-form qĭṭâl or qŭṭâl[8] in Hebrew changes the ĭ to vocal Šewâ, and develops to קְטָל (cf. §93, Paradigm IV, c) or קְטוֹל, with â obscured to ô (as above, §84ak). Cf.  ʾĭlâh); with א prosthetic (§19m), אֶזְרוֹעַ arm (twice: usually זְרוֹעַ); fem. בְּשׂוֹרָה good news (Arab. bĭšârăt); עֲבוֹדָה service, כְּתֹ֫בֶת (Arab. kĭtâbăt) tattooing.
11. The ground-form qĭṭîl seems to occur e.g. in Hebrew אֱוִיל foolish, אֱלִיל vanity, בְּדִיל lead, כְּסִיל a fool, חֲזִיר a swine (the prop. name חֵזִיר points to the ground-form qĭṭîl, cf. Arab. ḥĭnzîr).
12. The ground-form qĭṭûl or qŭṭûl, Hebr. קְטוּל, e.g. גְּבוּל a boundary, לְבוּשׁ a garment; fem. גְּבוּרָה strength, אֱמוּנָה faithfulness.
Rem. When the forms qeṭûl and qeṭôl begin with א, they almost invariably take in the singular a Ṣere under the א instead of the ordinary Ḥaṭeph-Seghôl; cf. אֵבוּס a crib, אֵטוּן thread, אֵמוּן faithful, אֵזוֹב hyssop, אֵזוֹר a waist-band, אֵסוּר a bond, אֵפוֹד an ephod; cf. §23h, and the analogous cases of Ṣere for Ḥaṭeph-Seghôl in verbal forms §52n, §63p, §76d.
IV. Nouns with a Long Vocal in the First Syllable and originally a Short Vowel in the Second Syllable.
13. The ground-form qâṭăl, in Hebrew, always changes the â into an obscure ô, קוֹטָל ( קֹטָל), e.g. עוֹלָם (§93, Paradigm III, a), Arab. ʿâlăm, eternity; חוֹתָם (Arab. ḥâtăm) a seal (according to Barth a loan-word of Egyptian origin), fem. חֹתֶ֫מֶת (from ḥôtămt); תּוֹלָע worm (unless from a stem ולע, like תּוֹשָׁב from ושב; see the analogous cases in §85b). On the participles Qal of verbs ל״ה (§93, Paradigm III, c), cf. §75e; on the feminines of the participles Qal, which are formed with the termination ת, see below, s.
Rem. Of a different kind (probably from a ground-form qauṭal) are such forms as אוֹפָן (or אוֹפָן Ez 109 in the same verse) a wheel; גּוֹזָל a young bird, דּוֹנַג wax, &c.
14. The ground-form qâṭĭl also becomes in Hebrew almost invariably קוֹטֵל ( קֹטֵל). Besides participles active masc. Qal this class includes also feminines of the form קֹטֶ֫לֶת, if their ground-form qôṭalt (§69c) goes back to an original qâṭilt. The substantives of this form, such as כֹּהֵן priest (Arab. kâhĭn), were also originally participles Qal. The fem. of the substantives has ē (lengthened from ĭ) retained before the tone, e.g. יֹֽלֵדה a woman in travail (cf. also בֹּֽגֵדָה the treacherous woman, Jer 38; הַצֹּֽלֵעָה her that halteth, Mi 46 f., Zp 319; סֹֽחֵרָה a buckler, ψ 914); the participles as a rule have the form יֹֽלְדָה, &c., the original ĭ having become Šewâ; however, the form with Ṣere occurs also in the latter, Is 296.8, 349, ψ 6826, 11816 (all in principal pause; in subordinate pause 2 S 1320, Is 3314; with a conjunctive accent, Ct 16). שֹׁמֵמָה 2 S 1320.
15. The ground-form qûṭăl, Hebrew קוּטַל (as יוּבַל river, Jer 178) or קוּטָל e.g. עוּגָב a pipe, commonly עֻגָב, and to be so read, with Baer, also in ψ 1504, not עֻגָּב.
V. Nouns with a Long Vowel in each Syllable
16. קִיטוֹל, e.g. קִיטוֹר smoke. The few forms of this kind are probably derived from the ground-form qîṭâl ( qĭṭṭâl ?), i.e. the original â has become an obscure ô.
- ↑ According to Delitzsch (Assyr. Gram., p. 157 f.) the same is true in Assyrian of the corresponding qaṭl-forms. Without case-endings they are kalab, šamas, aban (= כֶּ֫לֶב, שֶׁ֫מֶשׁ, אֶ֫בֶן), with case-endings kalbu, šamsu, abnu. On the other hand, acc. to Sievers, Metrik, i. 261, Hebrew ground-forms probably have a twofold origin: they are shortened according to Hebrew rules partly from old absolute forms like kálbu, sífru, qúdšu, and partly from old construct-forms like the Assyrian types kalab, sifir, quduš.
- ↑ On the other hand, Ungnad, ZA. 1903, p. 333 ff., rejecting all previous explanations, maintains that the a in melākhîm, melākhôth is inserted merely to facilitate the pronunciation. From qaṭlîm arose qaṭalim, then qaṭalîm and finally qeṭālîm. See, however, Nöldeke, ‘Zur semit. Pluralendung,’ ZA. 1904, p. 68 ff., who points out that the Semitic nouns faʿl, fiʿl, fuʿl with their corresponding feminines faʿla, &c., on assuming the plural termination commonly take an a before the 3rd radical, but that no satisfactory account can be given for it. M. Margolis, ‘The plural of Segolates’ (Proc. of the Philol. Assoc. of the Pacific Coast, San Francisco, 1903, p. 4 ff.), and S. Brooks, Vestiges of the broken plural in Hebrew, Dublin, 1883, explain melākhîm as a pluralis fractus.
- ↑ It is worthy of notice that St. Jerome also (cf. Siegfried, ZAW. iv. 76) frequently represents the vowel of the first syllable by a, e.g. gader, aben, ader, areb, for גֶּדֶר, אֶבֶן, אֶדֶר, חֶרֶב, but cedem, secel, deber, &c., for קֶדֶם, שֶׁקֶל, דֶּבֶר, &c.
- ↑ M. Lambert also (REJ. 1896, p. 18 ff.), from statistics of the Segholates, arrives at the conclusion that the qaṭl-form is especially used for concretes (in nouns without gutturals he reckons twenty concretes as against two abstracts), and the qiṭl-form, and less strictly the quṭl, for abstracts.
- ↑ On this theory cf. Stade, Hebräische Grammatik, § 199 b; De Lagarde, Übersicht, p. 57 f.; A. Müller, ZDMG. xlv, p. 226, and especially Philippi, ZDMG. xlix, p. 208.
- ↑ In St. Jerome’s time these forms were still pronounced ṣadaca ( צְדָקָה), ṣaaca ( צְעָקָה), nabala ( נְבָלָה), &c., see Siegfried, ZAW. iv. 79. Moreover, the numerous abstracts of this form (e.g. even קְצָפָה a splintering, צְוָחָה a crying, &c.) are undoubtedly to be regarded (with Barth, Nominalbildung, p. 87) as feminines of infinitives of the form qăṭâl, the lengthening of the second syllable being balanced, as in other cases, by the addition of the feminine termination.
- ↑ In Na 13 only the Qerê requires גְּדָל־ (in the constr. state) for the Kethîbh גְּדוֹל.
- ↑ On the fuʿâl-forms (regarded by Wellhausen as original diminutives) see Nöldeke, Beiträge (Strassb. 1904), p. 30 ff. He includes among them נְעֹ֫רֶת tow, and טְחֹרִים hemorrhoids.


Waste not want not - Re-purposing smartphones that are being upgraded for newer models
One problem facing the tech industry today is the mountain of smart devices that are being discarded each year just because there is a newer, shinier model out that the manufacturer has to sell.
The problem is that these smart devices are probably mostly fully functional still. This problem is probabaly not restricted to smart devices, but electronic devices and appliances in general.
The difference with the smart devices that are being discarded is that they are perfect for re-purposing to fulfil their true destiny as the very small re-programmable computing devices they were designed to be.
Not only do these smartphones provide a platform for running custom applications, but most of them will have camera's, WiFi, Bluetooth, touch screen's, microphones, speakers, gyro's and accelerometers, and many will have GPS as well.
Basically, the smartphones can hear, talk, see, know whether they are in motion, know where they are, and feel....ok this last point might be a bit optimistic!, but thats a lot of technology, just being binned.
These devices could be used a application platform's that can make use of their special hardware and small size and robustness, no moving parts makes them ideal for harsh environments or environments where mechanical shock is a possibility.
This re-purposing would serve 2 ends;
- Saving more electronic devices just being dumped Providing low-cost alternatives for some of the devices they are being re-purposed for
Some possible applications for re-purposed smartphones.
- Home security. camera. phone. internet access, accelerometer
- Remote controls. TV's stereos, garages. Bluetooth, Wifi
- Door-bells, with video built in, touch-screen for button
- Home automation controllers
- Intercom systems, via WiFi
- Weather stations, with appropriate sensors attached
- Earthquake sensors, with accelerometer, GPS
- House flooding sensors, with SMS notifications
About the author : My early background is in electronics design and I have a passion in automation, home and commercial, as well as robotics and general tinkering, this sort of re-purposing really interest's me. I have had experience writing applications for mobile devices and accessing the various sensors available with smartphones is surprisingly not that difficult.


Preston man, 39, goes on the run whilst on bail for burglary charge just months after leaving prison
by Matthew CalderbankA man is evading police after being arrested and charged for burglary in Preston.
Stephen Bosanko, 39, of The Fieldings, Fulwood, was jailed for 12 months at Preston Crown Court in June 2018 for burglary and theft of a motor vehicle.
He was released on licence in July but later arrested and charged with another burglary in Preston on November 13.
Bosanko was remanded to appear at Preston Magistrates' Court on the same day, where he was bailed.
But following the charge for burglary, he has breached his licence terms and is now wanted on recall to prison.
The 39-year-old is described as white, around 6ft, of stocky build with short, receding, dark-brown hair and brown eyes.
Bosanko has links to the Fulwood, Ribbleton and Plungington areas of Preston, as well as Blackpool, Chorley, Walton-le-Dale and Leyland.
READ MORE: These are the 10 places in Preston with the highest reports of anti-social behaviour - how does your area compare?
PC Paul Moseley, from Preston Police, said: "We are trying to trace a wanted man from Preston.
"If you have seen Stephen Bosanko or know where he is, please get in contact with us.
"We would ask the public if they see Bosanko not to approach him but to ring us instead."
READ MORE: Police appeal for help as officers investigate fight outside city centre pub
Anyone with information can call us on 101 or email 2314@lancashire.pnn.police.uk


United States of America
Language: English
Currency: USD
Popullation: 300 mln
President: Donald Trumph
Capital City: Washinghton DC
Owner: Billy Joe from Bitcoin
Price: 1.001 ETH
Russian Federation
Language: Russian
Currency: RUB
Popullation: 144 mln
President: Vladimir Putin
Capital City: Moscow
Owner: Locked
Price: 3.001 ETH
United States of America
Language: English
Currency: USD
Popullation: 300 mln
President: Donald Trumph
Capital City: Washinghton DC
Owner: Billy Joe from Bitcoin
Price: 1.001 ETH
United States of America
Language: English
Currency: USD
Popullation: 300 mln
President: Donald Trumph
Capital City: Washinghton DC
Owner: Billy Joe from Bitcoin
Price: 1.001 ETH
United States of America
Language: English
Currency: USD
Popullation: 300 mln
President: Donald Trumph
Capital City: Washinghton DC
Owner: Billy Joe from Bitcoin
Price: 1.001 ETH
United States of America
Language: English
Currency: USD
Popullation: 300 mln
President: Donald Trumph
Capital City: Washinghton DC
Owner: Billy Joe from Bitcoin
Price: 1.001 ETH
United States of America
Language: English
Currency: USD
Popullation: 300 mln
President: Donald Trumph
Capital City: Washinghton DC
Owner: Billy Joe from Bitcoin
Price: 1.001 ETH
United States of America
Language: English
Currency: USD
Popullation: 300 mln
President: Donald Trumph
Capital City: Washinghton DC
Owner: Billy Joe from Bitcoin
Price: 1.001 ETH
United States of America
Language: English
Currency: USD
Popullation: 300 mln
President: Donald Trumph
Capital City: Washinghton DC
Owner: Billy Joe from Bitcoin
Price: 1.001 ETH
United States of America
Language: English
Currency: USD
Popullation: 300 mln
President: Donald Trumph
Capital City: Washinghton DC
Owner: Billy Joe from Bitcoin
Price: 1.001 ETH
United States of America
Language: English
Currency: USD
Popullation: 300 mln
President: Donald Trumph
Capital City: Washinghton DC
Owner: Billy Joe from Bitcoin
Price: 1.001 ETH
United States of America
Language: English
Currency: USD
Popullation: 300 mln
President: Donald Trumph
Capital City: Washinghton DC
Owner: Billy Joe from Bitcoin
Price: 1.001 ETH


General info
This page demonstrates fetching data from the backend via WebSockets and showing it in a simple list.
This example application fetches books with related author data populated for each
and also covers data pagination, sort, and search functions. The actual data is fetched from the
following endpoint on the backend.
GET {{backendConfig.url}}/book
Note that all data communication to the backend requires a JSON Web Token (JWT)
for authentication to make sure that user is allowed to access the data.
Functions in this example
-
Data fetch
-
From backend via WebSockets using $sailsSocket service.
-
Search
-
Specify which columns are used in search and type your search words to see results while you're typing.
-
Pagination
-
By default, the page displays an example of ten books per page. You can change the number to be
displayed per page.
-
Sorting data
-
Simply by clicking the column header. This will fetch data from backend again. Unfortunately not from
relation columns... yet.
-
Live updates
-
GUI is automatically updated if changes are made to the data.
-
Navigation
-
Access to single book and author pages simply by clicking the book or author name.


| WinAPI Wrapper |
A typical MDI application has one main window, called the frame window. The frame window has a special child - the client window. The MDI children, that typically represent documents, are displayed within the client window and they are its children.
The WinAPI Wrapper simplifies the process of creating an MDI application. The frame window, which is the application's main window, is derived from the MDIFrameWindow class and the MDIChildWindow class.
There are the differences between the MDI windows and regular windows derived directly from Window. While processing the WM_CREATE command in the MDI frame window, you must call the CreateClient function to create the client window.
The other difference is that if you want to create your own WNDCLASS'es for your MDI children, you have to use the MDIChildWindowClass instead of the WindowClass class. See Using custom window classes for details.
The third difference is that you must call MDIFrameWindow::OnCommand in the frame window class while processing the WM_COMMAND message. You have to propagate this message in order for the MDI framework to work correctly. If you don't, things like maximizing child windows etc. won't work.
The following example shows a simple frame window and one child window:
class DocumentWindow: public MDIChildWindow { public: DocumentWindow( HWND hwndParent ) { Create( "Sample Document", hwndParent ); } }; class MainWindow: public MDIFrameWindow { public: MainWindow() { Create( "Sample Title" ); } protected: virtual bool OnCreate( LPCREATESTRUCT lpCreateStruct = 0 ) { // Create the client window (this is a must) CreateClient( GetClientRect() ); // Create an MDI child (new DocumentWindow( GetClientWindow() ))->Show(); return true; } virtual void OnDestroy() { PostQuitMessage( 0 ); } private: virtual ~MainWindow() { } };


Ginataang Kalabasa
Or “Squash in Coconut Milk”. This is a common Filipino dish.
- ⏲ Prep time: 10 min
- 🍳 Cook time: 30 min
- 🍽 Servings: 8
Ingredients
- One medium sized squash that is easy to peel (butternut squash is usually best)
- Two cans of coconut milk
- One onion
- A few cloves of garlic
Directions
- Remove the seeds from your squash, then peel it and chop it up into large cubes, then set aside. (The easiest way to peel the squash while raw is to cut it into strips and cut the skin off of each strip individually)
- Chop your onion and garlic and cook in an oiled stock pot until translucent.
- Once your onions are translucent add both cans of coconut milk to the pot along with your cubes of squash. Let simmer until squash is soft.
- When your squash is soft take a potato masher and mash about half of your squash leaving the rest of it as cubes.
- Take off heat and serve over rice.
Contribution
Recipe tags:
filipino
squash


Choosing between the Jaguar F-pace and the BMW X4 20d
by Staff WriterPrioritising style and comfort, which of these two is a better SUV, the Jaguar F-pace and the BMW X4 20d?
I am confused in between the Jaguar F-pace and the BMW X4 20d. My priorities are style and comfort.
Shubham Agrawal, Akola
AAA - Style is a subjective thing and both the F-Pace and X4 look good, though the coupé-like design of the X4 makes it the more striking looking of the two. Also, the X4 is more modern and up to date, and more fun to drive. However, because of the sloping roof, the X4 has limited headroom at the rear, which you need to keep in mind if you have passengers regularly.


Feel free to reach out to me to connect over an opportunity, talk shop, or just to network<EMAIL_ADDRESS>·<PHONE_NUMBER> · @adnama.lin


- Member gtsam::AHRSFactor::AHRSFactor (Key rot_i, Key rot_j, Key bias, const PreintegratedMeasurements &preintegratedMeasurements, const Vector3 &omegaCoriolis, const boost::optional< Pose3 > &body_P_sensor=boost::none)
- constructor
- Member gtsam::AHRSFactor::predict (const Rot3 &rot_i, const Vector3 &bias, const PreintegratedMeasurements preintegratedMeasurements, const Vector3 &omegaCoriolis, const boost::optional< Pose3 > &body_P_sensor=boost::none)
- static function
- Member gtsam::AHRSFactor::PreintegratedMeasurements
- name
- Member gtsam::assert_equal (const std::vector< V > &expected, const std::vector< V > &actual, double tol=1e-9)
- : use container equals instead
- Member gtsam::axpy (double alpha, const V1 &x, V2 &y)
- : use operators instead
- Member gtsam::Cal3_S2::matrix () const
- The following function has been deprecated, use K above
- Member gtsam::Cal3Bundler::D2d_calibration (const Point2 &p) const
- might be removed in next release, use uncalibrate
- Member gtsam::Cal3Bundler::D2d_intrinsic (const Point2 &p) const
- might be removed in next release, use uncalibrate
- Member gtsam::Cal3Bundler::D2d_intrinsic_calibration (const Point2 &p) const
- might be removed in next release, use uncalibrate
- Member gtsam::CalibratedCamera::dim () const
-
- Member gtsam::CalibratedCamera::Dim ()
-
- Member gtsam::CalibratedCamera::project (const Point3 &point, OptionalJacobian< 2, 6 > Dcamera=boost::none, OptionalJacobian< 2, 3 > Dpoint=boost::none) const
- Use project2, which is more consistently named across Pinhole cameras
- Member gtsam::load2D_robust (const string &filename, noiseModel::Base::shared_ptr &model, int maxID)
- load2D now allows for arbitrary models and wrapping a robust kernel
- Member gtsam::OrientedPlane3::Transform (const OrientedPlane3 &plane, const Pose3 &xr, OptionalJacobian< 3, 6 > Hr=boost::none, OptionalJacobian< 3, 3 > Hp=boost::none)
- the static method has wrong Jacobian order, please use the member method transform()
- Member gtsam::PinholeCamera< Calibration >::dim () const
-
- Member gtsam::PinholeCamera< Calibration >::Dim ()
-
- Member gtsam::PinholePose< CALIBRATION >::Dim ()
-
- Member gtsam::PinholePose< CALIBRATION >::dim () const
-
- Member gtsam::PreintegratedAhrsMeasurements::PreintegratedAhrsMeasurements (const Vector3 &biasHat, const Matrix3 &measuredOmegaCovariance)
- constructor
- Member gtsam::Rot3::column (int index) const
- , this is base 1, and was just confusing
- Member gtsam::scal (double alpha, Vector &x)
- : use operators instead
- Class gtsam::SimpleCamera
- : SimpleCamera for backwards compatability with GTSAM 3.x Use PinholeCameraCal3_S2 instead
- Member gtsam::StereoCamera::project (const Point3 &point, OptionalJacobian< 3, 6 > H1, OptionalJacobian< 3, 3 > H2=boost::none, OptionalJacobian< 3, 0 > H3=boost::none) const
- , use project2 - this class has fixed calibration
- Member gtsam::Unit3::error (const Unit3 &q, OptionalJacobian< 2, 2 > H_q=boost::none) const
- , errorVector has the proper derivatives, this confusingly has only the second.
- Member GTSAM_CONCEPT_TESTABLE_INST (T)
- please use BOOST_CONCEPT_ASSERT and


{extends file=$conf->root_path|cat:"/templates/main.html"} {block name=content}
11:00 AM to 11:00 PM
10:00 AM to 12:00 PM


---
layout: post
title: Litany Against Perl
date: '2008-04-06T17:48:00.001-04:00'
author: Hunter Freyer
tags:
modified_time: '2008-04-06T17:48:51.322-04:00'
blogger_id: tag:blogger.com,1999:blog-203463942347409368.post-5123401265694435533
blogger_orig_url: http://blog.hjfreyer.com/2008/04/litany-against-perl.html
---
I must not use Perl.
Perl is the mind-killer.
Perl is the little-death that brings total obliteration.
I will face my script.
I will permit it to run over me and through me.
And when it has finished I will turn on the debugger to trace its stack.
Where the Perl has gone there will be nothing.
Only I will remain.
Blatantly stolen from Frank Herbert's Litany Against Fear.


Monal is more secure
by Anu on MAR. 01, 2011 in WHY MONAL?
Monal is more secure than other iOS instant messaging programs. Since it is a direct client, it connects directly to the server you have entered without going through a middle man. The lack of a middle man is important for the following reasons.
Protect your password
We all know that you should never give your work or personal IM username and password to any website that asks for it. This is even more important when you use the same username and password for email or corporate login systems. Similarly, this information should never given any random app that asks for it.
Many iOS apps that support push messaging make a copy of login information and store it in a database on their own server. These apps are never directly connected to the IM service but to a middle man. The middle man keeps the username and password of all users. If and when you stop using the IM client, the middle man will still have all of this information.
This is an incredibly dangerous practice. The safety of a user’s personal information is entirely dependent on the security and trustworthiness of individuals who have access to these databases on a daily basis.
Protect your conversations
The middle man services also often have copies of all instant messages sent using the service. They send push notifications by logging into your account from their servers, reading IMs and forwarding them to you. For anything out of the most casual conversation this is unacceptable.
Protect your privacy
As the developer of Monal I have decided to keep it free and not include ads and tracking software. How many people use Monal? A lot. Thousands and thousands of people all over the world (Hello, Antarctica!). However, all I know is what the Apple download/upgrade counter shows and what people tell me in emails. Much the same way I have objections to ads in my software, I do not like the “metrics” software and libraries. Unlike many other iOS apps, Monal does not contain and will never contain user tracking software.


Category: Misc
Points: 1000
file: deepdive
[Read More]
HackTM - FindMyPass
Dumping Kdbx db from Memory
Category: Forensics
Points: 500
[Read More]
RiceTeaCatPanda Tree
playing around with ls
Category: General Skills
Points: 200
file: Treemycatisin
[Read More]
Boot2root BrainFuck
decoding weird texts
First Thoughts
[Read More]


Less than two weeks ago I found myself barely making it out of a mandatory stay at the local mental institution because of an 'overdose' of Alprazolam (Xanax).
The situation is described below.
At approximately 9:45 PM I consumed 26 0.5mg Alprazolam tablets in less than 5 minutes, with a cummlative dosage equivilant to 13 mg (oral). After which, I remember very little for around 15-18 hours beyond consuming the medication. My parents found me passed out across a desk in which I had been sitting at approximately 3:00 AM that morning. I showed signs of being excessively drunk, although I had no problem telling them the truth (which I otherwise would have conceiled), which was that I had taken an excessive dosage of Alprazolam.
At approximately 9:00 AM that morning, I woke up, and was taken to the local general physician. I told many 'secrets' during this time (information I would have otherwise conceiled). Even thoughts that I had kept personal for a decade or more were revealed to members of my family. After taking a trip from the general physician to a psychiatrist nearly 80 miles away, I was admitted to the ER around 4:00 PM. It was not until approximately 5:00 PM that I became fully aware of the situation I was in. Luckily, I was able to regain a train of thought, and was able to avoid being admitted to the psychiatric ward by telling the doctors that I had only taken 6 additional tablets to my normal dosage (obviously, not the truth). They were not aware of the whole situation, and allowed me to leave shortly afterwards.
No other substances, other than one beer at approximately 5:45 PM the day I had consumed the pills, was involved in this incident.
The best way to describe the feeling of the incident was a 'zombie' like state, with memory lapses far greater than any other substance I have previously used. It was very difficult to realize the entire situation until 30+ hours after the Alprazolam had been consumed. I must also mention that I have been an Alprazolam user (by prescription) for over a year now, with a regular daily dosage of 1.5 - 2.0 mg (oral).
The effects of this medication were much much different at a high dosage of 13mg than they were at 2mg. It wasn't simply a greater 'enhancement' of the effects, but an entirely different experience. Not a good one to add to the book in my eyes!
Experience Reports are the writings and opinions of the individual authors who submit them.
Some of the activities described are dangerous and/or illegal and none are recommended by Erowid.


Select two twitter authors to analyze their tweets, and predict who is more lijkely to have posted a new tweet.


This application was generated automatically using the TEI Processing Model App Generator. Only the logo and background images have been uploaded afterwards. Apart from this, no code has been added or modified.
The primary purpose of this app is to test the TEI Processing Model on a larger corpus of texts. Instead of using an XSLT stylesheet or XQuery, all texts are rendered by interpreting processing model instructions described in an ODD file. This saves us many lines of code (more than 2000 lines of XQuery in this example). All output formats are defined by the same ODD!
Not much attention has been paid to search yet. It more or less uses the out of the box search features of eXistdb.
This application is actively developed and may break, get messed up or become slow while we're working on it.


public static interface Faction.FRange
Faction.addRange(String)
,
Faction.ranges()
| Modifier and Type | Method and Description |
|---|---|
Faction.Align |
alignEquiv()
Returns a constant reflecting whether this range of faction value is
equivalent to one of the legacy alignment constant values.
|
java.lang.String |
codeName()
Returns the unique code name that describes this range of faction values
|
Faction |
getFaction()
Returns the faction of which this is a range
|
int |
high()
Returns the numerically high value of this faction range
|
int |
low()
Returns the numerically low value of this faction range
|
java.lang.String |
name()
Returns the nice friendly displayable name of this faction range,
which need not be unique.
|
int |
random()
Returns a random numeric value within this faction range
|
void |
setAlignEquiv(Faction.Align newVal)
Sets a constant reflecting whether this range of faction value is
equivalent to one of the legacy alignment constant values.
|
void |
setHigh(int newVal)
Sets the numerically high value of this faction range
|
void |
setLow(int newVal)
Sets the numerically low value of this faction range
|
void |
setName(java.lang.String newVal)
Sets the nice friendly displayable name of this faction range,
which need not be unique.
|
java.lang.String |
toString()
Returns a semicolon-delimited representation of this faction range, which
can be used to create a new one later.
|
java.lang.String codeName()
int low()
setLow(int)
void setLow(int newVal)
newVal
- the numerically low value of this faction rangelow()
int high()
setHigh(int)
void setHigh(int newVal)
newVal
- the numerically high value of this faction rangehigh()
java.lang.String name()
setName(String)
void setName(java.lang.String newVal)
newVal
- the name of this range of valuesname()
Faction.Align alignEquiv()
Faction.Align
void setAlignEquiv(Faction.Align newVal)
newVal
- a new alignment constantFaction.Align
java.lang.String toString()
toString
in class java.lang.Object
Faction.addRange(String)
int random()
Faction getFaction()
Faction.addRange(String)


Spearmanís Rank Correlation Coefficient
The Spearmanís Rank Correlation Coefficient †is the Pearsonís correlation coefficient , computed between two time series ††and , based on their respective rank †and .
†is the ratio of the covariance† †to the product of the two standard deviations .
The computation of †is useful when values of ††or †contain outliers or if the time series are not normally distributed.
Interpretation
As †is computed on ranked time series, it reflects the quality of the datasets. Absolute values of †and ††are not considered.
It is a resistant and robust alternative to Pearsonís .
.


--- layout: page title: About header-img: "img/about-bg.png" ---
Hey guys me name is Kyle Beckstead and I am trying to expand my talents and jump out of my comfort zone into web development. It is something that I have always known I need to venture into but was too nervous at the mountain to climb. One day i finally decided enough is enough and jumped into the deep end (the very very deep end) here I am lets get to it!


|
TensorRT
<IP_ADDRESS>
|
Application-implemented logging interface for the builder, engine and runtime. More...
#include <NvInferRuntimeCommon.h>
Public Types | |
| enum | Severity : int { Severity::kINTERNAL_ERROR = 0, Severity::kERROR = 1, Severity::kWARNING = 2, Severity::kINFO = 3, Severity::kVERBOSE = 4 } |
Public Member Functions | |
| virtual void | log (Severity severity, const char *msg)=0 |
Application-implemented logging interface for the builder, engine and runtime.
Note that although a logger is passed on creation to each instance of a IBuilder or safe::IRuntime interface, the logger is internally considered a singleton, and thus multiple instances of safe::IRuntime and/or IBuilder must all use the same logger.
|
strong |
The severity corresponding to a log message.
|
pure virtual |
A callback implemented by the application to handle logging messages;
| severity | The severity of the message. |
| msg | The log message, null terminated. |


Allow me to introduce myself, again.
Name: Akshay Kumar
Age: 17 Years
This blog is one of my hobbies that i like to do in my free time, hope you like it.
I am currently preparing for NEET.


I provide functions to calculate Gross Primary Productivity, Net Ecosystem Production, and Ecosystem Respiration from single station diurnal Oxygen curves.
| Version: | 1.1.2 |
| Depends: | zoo, chron, maptools |
| Published: | 2016-09-12 |
| Author: | Stephen A Sefick Jr. |
| Maintainer: | Stephen A Sefick Jr. <ssefick at gmail.com> |
| License: | GPL (≥ 3) |
| URL: | https://github.com/ssefick/StreamMetabolism |
| NeedsCompilation: | no |
| Citation: | StreamMetabolism citation info |
| Materials: | README |
| In views: | Environmetrics |
| CRAN checks: | StreamMetabolism results |
| Reference manual: | StreamMetabolism.pdf |
| Package source: | StreamMetabolism_1.1.2.tar.gz |
| Windows binaries: | r-devel: StreamMetabolism_1.1.2.zip, r-release: StreamMetabolism_1.1.2.zip, r-oldrel: StreamMetabolism_1.1.2.zip |
| OS X binaries: | r-release: StreamMetabolism_1.1.2.tgz, r-oldrel: StreamMetabolism_1.1.2.tgz |
| Old sources: | StreamMetabolism archive |
Please use the canonical form https://CRAN.R-project.org/package=StreamMetabolism to link to this page.