sm-commit AT lists.ibiblio.org
Subject: Source Mage code commit list
List archive
[SM-Commit] GIT changes to master grimoire by Ismael Luceno (1d5a4fa873e15289ef429b81f417a4885dcb47f4)
- From: Ismael Luceno <scm AT sourcemage.org>
- To: sm-commit AT lists.ibiblio.org
- Subject: [SM-Commit] GIT changes to master grimoire by Ismael Luceno (1d5a4fa873e15289ef429b81f417a4885dcb47f4)
- Date: Sun, 14 Sep 2014 00:01:38 -0500
GIT changes to master grimoire by Ismael Luceno <ismael AT sourcemage.org>:
ChangeLog | 1
devel/cobra/BUILD | 1
devel/cobra/DEPENDS | 1
devel/cobra/DETAILS | 64
++++++++++++++++++++++++++++++++++++++++++++
devel/cobra/HISTORY | 2 +
devel/cobra/INSTALL | 16 +++++++++++
libs/newt/DEPENDS | 2 -
libs/newt/DETAILS | 2 -
libs/newt/HISTORY | 4 ++
shell-term-fm/byobu/DEPENDS | 1
shell-term-fm/byobu/HISTORY | 1
11 files changed, 93 insertions(+), 2 deletions(-)
New commits:
commit 1d5a4fa873e15289ef429b81f417a4885dcb47f4
Author: Ismael Luceno <ismael AT sourcemage.org>
Commit: Ismael Luceno <ismael AT sourcemage.org>
cobra: new spell, Cobra Programming Language
commit 7d446689fe905a421138446aa655946dc93d77ef
Author: Ismael Luceno <ismael AT sourcemage.org>
Commit: Ismael Luceno <ismael AT sourcemage.org>
newt: Clarify the python's module name
commit fd69a540417b415527a0db631cc66431ad419fc5
Author: Ismael Luceno <ismael AT sourcemage.org>
Commit: Ismael Luceno <ismael AT sourcemage.org>
newt: Update website
commit 9de36259ef50f1efbc9e701bbade0ae271b1e8f3
Author: Ismael Luceno <ismael AT sourcemage.org>
Commit: Ismael Luceno <ismael AT sourcemage.org>
byobu: Optionally depends on newt for byobu-config
diff --git a/ChangeLog b/ChangeLog
index 7b0c79d..0afb8e2 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -2,6 +2,7 @@
* shell-term-fm/abduco: new spell, session {at,de}tach support
* shell-term-fm/byobu: new spell, text based window manager and
terminal multiplexer
+ * devel/cobra: new spell, Cobra Programming Language
2014-09-11 Ismael Luceno <ismael AT sourcemage.org>
* disk/squashfs-tools3: new spell, squashfs-tools 3.x
diff --git a/devel/cobra/BUILD b/devel/cobra/BUILD
new file mode 100755
index 0000000..27ba77d
--- /dev/null
+++ b/devel/cobra/BUILD
@@ -0,0 +1 @@
+true
diff --git a/devel/cobra/DEPENDS b/devel/cobra/DEPENDS
new file mode 100755
index 0000000..78057dd
--- /dev/null
+++ b/devel/cobra/DEPENDS
@@ -0,0 +1 @@
+depends mono
diff --git a/devel/cobra/DETAILS b/devel/cobra/DETAILS
new file mode 100755
index 0000000..4f1ccbe
--- /dev/null
+++ b/devel/cobra/DETAILS
@@ -0,0 +1,64 @@
+ SPELL=cobra
+ VERSION=0.9.6
+ SOURCE="Cobra-${VERSION}.tar.gz"
+ SOURCE_URL[0]=http://${SPELL}-language.com/downloads/${SOURCE}
+
SOURCE_HASH=sha512:9fbf5ffb35db3895d74176013f023e6f3c390bc0208a6e02aed6f9f168a85f03b85026452ffe03354b502682803479fb49e429ab3411cf40e477f813d87caf52
+SOURCE_DIRECTORY="${BUILD_DIRECTORY}/Cobra-${VERSION}"
+ WEB_SITE="http://cobra-language.com/"
+ LICENSE[0]="MIT"
+ ENTERED=20140913
+ KEYWORDS=""
+ SHORT="Cobra Programming Language"
+cat << EOF
+$SHORT
+
+There are plenty of object-oriented programming languages in existence
+including C#, Python and Ruby. So why use Cobra? This document addresses
+that question.
+
+Right now, if you want software contracts in your language, how can you
+get them? The answer is to use Eiffel or D. What if you want static and
+dynamic binding? Use Objective-C or Boo. What if you want expressiveness
+and quick coding? Use Python, Ruby or Smalltalk. What if you want runtime
+performance? Use C#, Java, C++, etc. What if you want first class language
+support for unit tests? Use D.
+
+But what if you want all of those? ... You can't get them! And that's
+frustrating because none of those productivity-boosting features are
+incompatible with each other. You shouldn't have to choose between C++'s
+speed, Python's expressiveness and Eiffel's contracts. There's no theoretical
+reason that you can't have it all. There's "just" a lot of work required to
+make it happen.
+
+One way to characterize Cobra is with these high level points:
+
+* Quick, expressive coding
+* Fast execution
+* Static and dynamic binding
+* Language level support for quality
+
+Cobra achieves 1 by following Python and Ruby (but not religiously). It
+achieves 2 by favoring static typing ("i = 5" means "i" is an integer and
+always will be) and leveraging .NET|Mono for machine code generation. It
+does 3 by using the .NET typing system at compile-time for static types,
+and using the .NET run-time for dynamic binding. It takes language features
+for 4 from multiple sources including Eiffel, Python and its own compile-time
+nil tracking.
+
+There are additional refinements in Cobra such as defaulting to accurate
+decimal math and providing detailed postmortem exception reports.
+
+So the "what's new" in Cobra is not the individual elements such as
contracts,
+classes, etc. It's the combination of everything that goes into it. Consider
+what would happen if you were coding in Cobra, then switched to another
+language:
+
+ If moving from Cobra to Python, you would give up optional static typing,
+ contracts, compile-time nil tracking, closures and more. If moving from
+ Cobra to C#, you would give up native contracts, clean collection
literals,
+ expressive syntax, uniform compile-time nil tracking, mixins and more.
+
+Note that Cobra has few new elements because it was never intended to be
+experimental. It's a practical synthesis of already-proven features that
+are currently scattered across multiple languages.
+EOF
diff --git a/devel/cobra/HISTORY b/devel/cobra/HISTORY
new file mode 100644
index 0000000..fe85096
--- /dev/null
+++ b/devel/cobra/HISTORY
@@ -0,0 +1,2 @@
+2014-09-13 Ismael Luceno <ismael AT sourcemage.org>
+ * BUILD, DEPENDS, DETAILS, INSTALL: spell created
diff --git a/devel/cobra/INSTALL b/devel/cobra/INSTALL
new file mode 100755
index 0000000..0a75f68
--- /dev/null
+++ b/devel/cobra/INSTALL
@@ -0,0 +1,16 @@
+INSTDIR="$INSTALL_ROOT/usr/lib"
+DOCDIR="$INSTALL_ROOT/usr/share/doc/cobra-$VERSION"
+
+# FIXME: Do the installation manually, it's a mess
+mkdir -p "$DOCDIR" &&
+cd "$SOURCE_DIRECTORY/Source" &&
+echo "$INSTDIR" > install-directory.text &&
+bin/install-from-workspace &&
+cp -r ../*.text ../Developer "$DOCDIR" &&
+# Fix up the rest of the documentation
+for i in HowTo Reusables Samples Supplements; do
+ mv "$INSTDIR/Cobra-$VERSION/$i" "$DOCDIR"
+done &&
+# Move the wrapper
+mv "$INSTDIR/bin/cobra" "$INSTALL_ROOT/usr/bin" &&
+rmdir "$INSTDIR/bin"
diff --git a/libs/newt/DEPENDS b/libs/newt/DEPENDS
index 692a7f4..ca937ef 100755
--- a/libs/newt/DEPENDS
+++ b/libs/newt/DEPENDS
@@ -8,4 +8,4 @@ optional_depends tcl "--with-tcl" \
"--without-tcl" \
"tcl bindings" &&
-optional_depends python '' '' 'for Python bindings'
+optional_depends python '' '' 'for Python bindings (snack module)'
diff --git a/libs/newt/DETAILS b/libs/newt/DETAILS
index ab9bc7b..5187acc 100755
--- a/libs/newt/DETAILS
+++ b/libs/newt/DETAILS
@@ -6,7 +6,7 @@ SOURCE_DIRECTORY=$BUILD_DIRECTORY/$SPELL-${VERSION}
SOURCE_URL[0]=https://fedorahosted.org/releases/n/e/${SPELL}/${SOURCE}
SOURCE_HINTS[0]=no-check-certificate
LICENSE[0]=LGPL
- WEB_SITE=http://www.redhat.com/
+ WEB_SITE=https://fedorahosted.org/newt/
ENTERED=20020316
KEYWORDS="libs"
SHORT="A development library for text mode user interfaces."
diff --git a/libs/newt/HISTORY b/libs/newt/HISTORY
index 4fe457a..f0da943 100644
--- a/libs/newt/HISTORY
+++ b/libs/newt/HISTORY
@@ -1,3 +1,7 @@
+2014-09-14 Ismael Luceno <ismael AT sourcemage.org>
+ * DETAILS: Update website
+ * DEPENDS: Clarify the python's module name
+
2014-04-07 Florian Franzmann <siflfran AT hawo.stw.uni-erlangen.de>
* DETAILS: version 0.52.17
diff --git a/shell-term-fm/byobu/DEPENDS b/shell-term-fm/byobu/DEPENDS
new file mode 100644
index 0000000..26ce3d1
--- /dev/null
+++ b/shell-term-fm/byobu/DEPENDS
@@ -0,0 +1 @@
+optional_depends newt '' '' 'required by the byobu-config utility'
diff --git a/shell-term-fm/byobu/HISTORY b/shell-term-fm/byobu/HISTORY
index 7760f33..ab8a7d2 100644
--- a/shell-term-fm/byobu/HISTORY
+++ b/shell-term-fm/byobu/HISTORY
@@ -1,2 +1,3 @@
2014-09-13 Ismael Luceno <ismael AT sourcemage.org>
* DETAILS: spell created
+ * DEPENDS: Optionally depends on newt for byobu-config
- [SM-Commit] GIT changes to master grimoire by Ismael Luceno (1d5a4fa873e15289ef429b81f417a4885dcb47f4), Ismael Luceno, 09/14/2014
Archive powered by MHonArc 2.6.24.