PDA

View Full Version : [cobol] lo stato dell'arte


lorenzo wjsky
15-12-2013, 10:59
in questo thread apro una discussione con tutti gli appassionati e i cultori del cobol che intendono confrontarsi con gli strumenti attuali e con l'integrazione
del cobol con il web.
sono di interesse di questa discussione esperienze e conoscenze innovative ma anche storiche di particolare valore.
non è interesse di questa discussione confronti e/o battibecchi con chi non ha pratica e conoscenza approfondita del cobol.
qui si parla solo di cobol.
invito, FIN DA ADESSO, se questa discussione è possibile in questo sito,
I MODERATORI A FAR RISPETTARE QUESTO INTENTO.

lorenzo wjsky
16-12-2013, 12:33
a breve inserirò un demo dove ho un piccolo problema. saluti

lorenzo wjsky
17-12-2013, 01:49
chiedo al moderatore la rimozione del commento di coffe-killer
IN QUANTO NON ATTINENTE ALL'OGGETTO DELLA DISCUSSIONE.
lorenzo wjsky.

cdimauro
17-12-2013, 06:47
Il messaggio di coffe_killer rientra perfettamente nell'argomento del thread. Se hai paura di confrontarti, non aprire thread invocando una censura preventiva. I forum sono nati per discutere, anche se ad alcuni utenti possono non piacere le cose scritte da altri.

vendettaaaaa
17-12-2013, 09:47
Ma lasciate perdere. Avete rovinato il thread. Era molto meglio vederlo deserto con solo messaggi suoi.

lorenzo wjsky
17-12-2013, 09:57
in questo thread apro una discussione con tutti gli appassionati e i cultori del cobol che intendono confrontarsi con gli strumenti attuali e con l'integrazione
del cobol con il web.
sono di interesse di questa discussione esperienze e conoscenze innovative ma anche storiche di particolare valore.
non è interesse di questa discussione confronti e/o battibecchi con chi non ha pratica e conoscenza approfondita del cobol.
qui si parla solo di cobol.
invito, FIN DA ADESSO, se questa discussione è possibile in questo sito,
I MODERATORI A FAR RISPETTARE QUESTO INTENTO.

Faccio seguito a quanto dichiarato e inserisco un semplice programmino cobol con il quale inizio la discussione con chi di cobol si INTENDE:

IDENTIFICATION DIVISION.
PROGRAM-ID. ty.
ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
SPECIAL-NAMES.
DECIMAL-POINT IS COMMA.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT DBK ASSIGN TO DISK
organization is indexed
access mode is dynamic
record key is nr
file status is uex.
SELECT CODFI ASSIGN TO DISK
organization is indexed
access mode is dynamic
record key is KCF
file status is rex.
DATA DIVISION.
FILE SECTION.
FD CODFI
LABEL RECORDS IS STANDARD
DATA RECORD IS KFI
VALUE OF FILE-ID "FKF".
01 KFI.
02 KCF pic X(5).
02 CODF pic X(16).
FD DBK
LABEL RECORDS IS STANDARD
DATA RECORD IS FORM
VALUE OF FILE-ID "MESE".
01 form.
02 nr pic 9(4).
02 filler pic x.
02 itr pic 9.
02 filler pic x.
02 1p pic 9(9).
02 filler pic x.
02 2p pic 9(9).
02 filler pic x.
02 3p pic 9(9).
02 filler pic x.
02 4p pic 9(9).
02 filler pic x.
02 5p pic 9(9).
02 filler pic x.
02 6p pic 9(9).
02 filler pic x.
02 itp pic x.
02 filler pic x(8).
02 fp pic 9.
02 tr pic 9(7).
02 filler pic xX.
02 tikf pic 9(6).
02 filler pic xX.
02 ur pic 9(6).
02 filler pic x.
02 tikp pic 9(6).
02 1pr pic 9(7).
02 2pr pic 9(7).
02 3pr pic 9(7).
02 4pr pic 9(7).
02 5pr pic 9(7).
02 6pr pic 9(7).
02 tvrif pic 9(7).
02 filler pic x.
02 1ppx pic 9(7).
02 2ppx pic 9(7).
02 3ppx pic 9(7).
02 4ppx pic 9(7).
02 5ppx pic 9(7).
02 6ppx pic 9(7).
02 filler pic x(11).
02 1qtx pic 9(2).
02 2qtx pic 9(2).
02 3qtx pic 9(2).
02 4qtx pic 9(2).
02 5qtx pic 9(2).
02 6qtx pic 9(2).
02 filler pic x.
02 DIFFORME PIC X.
02 filler pic x.
02 NOTA1 PIC XX.
02 NOTA2 PIC XX.
02 NOTA3 PIC XX.
02 NOTA4 PIC XX.
02 NOTA5 PIC XX.
02 NOTA6 PIC XX.
02 cfisc pic x(16).
02 filler pic x(5).
02 gsped pic 9(2).
02 filler pic x.
02 msped pic 9(2).
02 filler pic x.
02 asped pic 9(4).
02 filler pic x(5).
02 gmed pic 9(2).
02 filler pic x.
02 mmed pic 9(2).
02 filler pic x.
02 amed pic 9(4).
02 filler pic x(3).
02 CODREG pic 9(5).
02 filler pic x.
02 CODRIC pic 9(10).
02 filler pic x.
02 MCODES pic x(6).
02 filler pic x.
02 MSUGG PIC X.
02 filler pic x(6).
WORKING-STORAGE SECTION.
77 SCTK PIC 9(10) VALUE 0.
77 Triw PIC 9(10) VALUE 0.
77 TTR PIC 9(10) VALUE 0.
77 TTIKF PIC 9(10) VALUE 0.
77 TTIKP PIC 9(10) VALUE 0.
77 TTIKFP PIC 9(10) VALUE 0.
01 cont pic 9999 value 0.
01 NX1 PIC XXX.
01 NX2 PIC X.
01 NX3 PIC X.
01 PNX1 PIC 9 VALUE 1.
01 PNX2 PIC 9 VALUE 7.
01 PNX3 PIC 99 VALUE 16.
01 Wdab pic x(16).
01 Wdaa pic x(16).
01 Wdac pic x(16).
01 HUEX.
02 UEX PIC XX.
01 RUEX.
02 REX PIC XX.
PROCEDURE DIVISION.
a. OPEN INPUT DBK, I-O CODFI.
ZI. READ DBK NEXT RECORD at end go to fin.
za. MOVE CFISC TO CODF.
UNSTRING CFISC INTO NX1 WITH POINTER PNX1.
UNSTRING CFISC INTO NX2 WITH POINTER PNX2.
UNSTRING CFISC INTO NX3 WITH POINTER PNX3.
STRING NX1 DELIMITED BY SIZE
NX2 DELIMITED BY SIZE
NX3 DELIMITED BY SIZE
INTO kcf.
write kfi invalid key perform sistc go to zi.
D. add 1 to cont DISPLAY (15, 50) cont perform sistc
go to zi.
FIN. CLOSE DBK CODFI.
STOP RUN.
sistc section.
s. subtract 3 from pnx1 subtract 1 from pnx2
subtract 1 from pnx3.
ex-sistc. exit.

mone.java
17-12-2013, 10:44
IDENTIFICATION DIVISION.
PROGRAM-ID. ty.
ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
SPECIAL-NAMES.
DECIMAL-POINT IS COMMA.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT DBK ASSIGN TO DISK
organization is indexed
access mode is dynamic
record key is nr
file status is uex.
SELECT CODFI ASSIGN TO DISK
organization is indexed
access mode is dynamic
record key is KCF
file status is rex.
DATA DIVISION.
FILE SECTION.
FD CODFI
LABEL RECORDS IS STANDARD
DATA RECORD IS KFI
VALUE OF FILE-ID "FKF".
01 KFI.
02 KCF pic X(5).
02 CODF pic X(16).
FD DBK
LABEL RECORDS IS STANDARD
DATA RECORD IS FORM
VALUE OF FILE-ID "MESE".
01 form.
02 nr pic 9(4).
02 filler pic x.
02 itr pic 9.
02 filler pic x.
02 1p pic 9(9).
02 filler pic x.
02 2p pic 9(9).
02 filler pic x.
02 3p pic 9(9).
02 filler pic x.
02 4p pic 9(9).
02 filler pic x.
02 5p pic 9(9).
02 filler pic x.
02 6p pic 9(9).
02 filler pic x.
02 itp pic x.
02 filler pic x(8).
02 fp pic 9.
02 tr pic 9(7).
02 filler pic xX.
02 tikf pic 9(6).
02 filler pic xX.
02 ur pic 9(6).
02 filler pic x.
02 tikp pic 9(6).
02 1pr pic 9(7).
02 2pr pic 9(7).
02 3pr pic 9(7).
02 4pr pic 9(7).
02 5pr pic 9(7).
02 6pr pic 9(7).
02 tvrif pic 9(7).
02 filler pic x.
02 1ppx pic 9(7).
02 2ppx pic 9(7).
02 3ppx pic 9(7).
02 4ppx pic 9(7).
02 5ppx pic 9(7).
02 6ppx pic 9(7).
02 filler pic x(11).
02 1qtx pic 9(2).
02 2qtx pic 9(2).
02 3qtx pic 9(2).
02 4qtx pic 9(2).
02 5qtx pic 9(2).
02 6qtx pic 9(2).
02 filler pic x.
02 DIFFORME PIC X.
02 filler pic x.
02 NOTA1 PIC XX.
02 NOTA2 PIC XX.
02 NOTA3 PIC XX.
02 NOTA4 PIC XX.
02 NOTA5 PIC XX.
02 NOTA6 PIC XX.
02 cfisc pic x(16).
02 filler pic x(5).
02 gsped pic 9(2).
02 filler pic x.
02 msped pic 9(2).
02 filler pic x.
02 asped pic 9(4).
02 filler pic x(5).
02 gmed pic 9(2).
02 filler pic x.
02 mmed pic 9(2).
02 filler pic x.
02 amed pic 9(4).
02 filler pic x(3).
02 CODREG pic 9(5).
02 filler pic x.
02 CODRIC pic 9(10).
02 filler pic x.
02 MCODES pic x(6).
02 filler pic x.
02 MSUGG PIC X.
02 filler pic x(6).
WORKING-STORAGE SECTION.
77 SCTK PIC 9(10) VALUE 0.
77 Triw PIC 9(10) VALUE 0.
77 TTR PIC 9(10) VALUE 0.
77 TTIKF PIC 9(10) VALUE 0.
77 TTIKP PIC 9(10) VALUE 0.
77 TTIKFP PIC 9(10) VALUE 0.
01 cont pic 9999 value 0.
01 NX1 PIC XXX.
01 NX2 PIC X.
01 NX3 PIC X.
01 PNX1 PIC 9 VALUE 1.
01 PNX2 PIC 9 VALUE 7.
01 PNX3 PIC 99 VALUE 16.
01 Wdab pic x(16).
01 Wdaa pic x(16).
01 Wdac pic x(16).
01 HUEX.
02 UEX PIC XX.
01 RUEX.
02 REX PIC XX.
PROCEDURE DIVISION.
a. OPEN INPUT DBK, I-O CODFI.
ZI. READ DBK NEXT RECORD at end go to fin.
za. MOVE CFISC TO CODF.
UNSTRING CFISC INTO NX1 WITH POINTER PNX1.
UNSTRING CFISC INTO NX2 WITH POINTER PNX2.
UNSTRING CFISC INTO NX3 WITH POINTER PNX3.
STRING NX1 DELIMITED BY SIZE
NX2 DELIMITED BY SIZE
NX3 DELIMITED BY SIZE
INTO kcf.
write kfi invalid key perform sistc go to zi.
D. add 1 to cont DISPLAY (15, 50) cont perform sistc
go to zi.
FIN. CLOSE DBK CODFI.
STOP RUN.
sistc section.
s. subtract 3 from pnx1 subtract 1 from pnx2
subtract 1 from pnx3.
ex-sistc. exit.



Lo metto nel TAG [CODE]....
cosa fa questo programma?

lorenzo wjsky
17-12-2013, 11:15
legge un file ne estrapola la stringa a 16 caratteri denominata cfisc la spezzetta con unstring ne ricava una key e la passa a un altro file, di tipo indexed, e aggiorna il file in i-o con il nuovo elemento ricavato.
il problemino sta nell'invalid key, in scrittura-quando viene generata una chiave gia esistente nel
file FKF. PROBLEMA NON RISOLTO.
lorenzo wjsky.

shinya
17-12-2013, 12:15
Per chi volesse avvicinarsi alla programmazione web in cobol:

http://www.coboloncogs.org

lorenzo wjsky
17-12-2013, 12:48
Per chi volesse avvicinarsi alla programmazione web in cobol:

http://www.coboloncogs.org

sono andato a vedere il sito. se non ho capito male si tratta di semplice pubblicità e l'offerta di iscriversi a una mailing list.
l'intento di questo thread è di parlare di cobol pubblicamente.
comunque ti ringrazio. lorenzo wjsky.

shinya
17-12-2013, 14:09
sono andato a vedere il sito. se non ho capito male si tratta di semplice pubblicità e l'offerta di iscriversi a una mailing list.
l'intento di questo thread è di parlare di cobol pubblicamente.
comunque ti ringrazio. lorenzo wjsky.
OKKEY. :stordita:

van9
17-12-2013, 15:19
OKKEY. :stordita:

coboloncogs... haha questa è buona

van9
17-12-2013, 15:37
puti secondo: COBOL + web? ma stiamo scherzando? un linguaggio nato nel 1959, quando internet nemmeno era ancora stata pensata

Questa non regge. Lisp è del '58 e tra un Hunchentoot in CL, PLT prima e Racket ora, per non parlare di Clojure e quant'altro siamo tranquillamente sulla cresta dell'onda in quanto a web. C'è "vecchio" e "vecchio" mi vien da dire (COGENT di Reynolds, anyone?)

cdimauro
17-12-2013, 22:21
Per chi volesse avvicinarsi alla programmazione web in cobol:

http://www.coboloncogs.org
:rotfl: :rotfl: :rotfl: You made my day!

(c) <DATE OVERFLOW>
:asd:

Hanno pure citato il Gamma! Genii... :ciapet:

Tommo
17-12-2013, 23:30
Ho deciso, questo thread mi ha aperto gli occhi e il prossimo gioco lo scrivo in Cobol :asd:

lorenzo, mi sapresti indicare il modo migliore per programmare in OpenGL/DirectX in Cobol, possibilmente con dei binding per Bullet e Lua?
Sarebbe anche interessante sapere se si puo' ricompilare su .NET per poterlo portare facilmente su Xbox One e mobile tramite MonoDevelop, e/o se c'e' qualche modo di compilarlo nativamente per Android e iOS.
Come libreria di playback per gli ogg e il caricamento delle immagini che mi consigli?

Ah, mi servirebbe anche un IDE visuale con debugger interattivo, e sarebbe bello se questo avesse anche un editor di UI visuale... lato Windows dovrei scrivere dei tool per il level design.
Inoltre il gioco avra' diverse traduzioni (la Korea va forte) e il tutto dovrebbe supportare nativamente UTF-8 a tutti i livelli.

Sono sicuro che il COBOL soddisfera' tutte le mie esigenze professionali :read:

lorenzo wjsky
17-12-2013, 23:36
....a tutti gli azzeccagarbugli....piu o meno furbi :sofico:
o più o meno stupidi, professorini....o millantatori che si agitano in questo o
altri thread sarebbe interessante e meritevole se saprebbero sintetizzare in
massimo 10 righe quello che è scritto qui:

http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core.html#ID-1004215813

lorenzo wjsky
17-12-2013, 23:52
Ho deciso, questo thread mi ha aperto gli occhi e il prossimo gioco lo scrivo in Cobol :asd:

lorenzo, mi sapresti indicare il modo migliore per programmare in OpenGL/DirectX in Cobol, possibilmente con dei binding per Bullet e Lua?
Sarebbe anche interessante sapere se si puo' ricompilare su .NET per poterlo portare facilmente su Xbox One e mobile tramite MonoDevelop, e/o se c'e' qualche modo di compilarlo nativamente per Android e iOS.
Come libreria di playback per gli ogg e il caricamento delle immagini che mi consigli?

Ah, mi servirebbe anche un IDE visuale con debugger interattivo, e sarebbe bello se questo avesse anche un editor di UI visuale... lato Windows dovrei scrivere dei tool per il level design.
Inoltre il gioco avra' diverse traduzioni (la Korea va forte) e il tutto dovrebbe supportare nativamente UTF-8 a tutti i livelli.

Sono sicuro che il COBOL soddisfera' tutte le mie esigenze professionali :read:

visto che sei cosi bravo a me basterebbe che tu risolvessi il semplicissimo problema della doppia key del mio listato qui sopra,
...e poi ri-visto che sei cosi bravo se tu postassi qualche app....
anche in marzianoSTRETTO, COSI CHE noi ne potessimo avere qualche utilita
o sollazzo ...te ne saremmo grati
lorenzo wjsky
p.s.
import java.io.BufferedReader;
import java.io.FileReader;
import java.util.Enumeration;
import javax.swing.text.AttributeSet;
import javax.swing.text.BadLocationException;
import javax.swing.text.Element;
import javax.swing.text.ElementIterator;
import javax.swing.text.StyleConstants;
import javax.swing.text.html.HTML;
import javax.swing.text.html.HTMLDocument;
import javax.swing.text.html.HTMLEditorKit;

public class nwt {

public static void main(String args[]) throws Exception {
HTMLEditorKit htmlKit = new HTMLEditorKit();
HTMLDocument htmlDoc = (HTMLDocument) htmlKit.createDefaultDocument();
htmlKit.read(new BufferedReader(new FileReader("test.html")), htmlDoc, 0);
ElementIterator iterator = new ElementIterator(htmlDoc);
Element element;
while ((element = iterator.next()) != null) {
printElement(htmlDoc, element);
}
}
private static void printElement(HTMLDocument htmlDoc, Element element)
throws BadLocationException {
AttributeSet attrSet = element.getAttributes();

Enumeration attrNames = attrSet.getAttributeNames();
while (attrNames.hasMoreElements()) {
Object attr = attrNames.nextElement();

Object tag = attrSet.getAttribute(StyleConstants.NameAttribute);
if (attr == StyleConstants.NameAttribute
&& tag == HTML.Tag.CONTENT) {
int startOffset = element.getStartOffset();
int endOffset = element.getEndOffset();
int length = endOffset - startOffset;
System.out.printf(" Content (%d-%d): '%s'\n", startOffset,
endOffset, htmlDoc.getText(startOffset, length).trim());
}
}
}
}
questa cosetta in java scrive su monitor,
sapresti farla scrivere su hard disk.

lorenzo wjsky
18-12-2013, 00:21
non è il cobol il linguaggio su cui dovresti concentrarti.

e poi cosa c'entra col COBOL. qua si parla dello stato dell'arte del COBOL. Prego i moderatori di far rispettare il tema del topic, come dichiarato nel primo post.

"in questo thread apro una discussione con tutti gli appassionati e i cultori del cobol che intendono confrontarsi con gli strumenti attuali e con l'integrazione
del cobol con il web"
INTEGRAZIONE DEL COBOL COL WEB.
QUINDI IL W3C C'ENTRA, ECCOME.
semmai non c'entri nulla tu, che non sei ne un culture ne un appassionato del cobol. ma un denigratore. pero continua pure.
IO CHIEDO L'INTERVENTO DEI MODERATORI CHE VALUTINO CHI C'ENTRA O CHI NON C'ENTRA ...E SE LO RITENGONO OPPORTUNO, CHIUDANO PURE IL THREAD.
lorenzo wjsky.
.

FreeMan
18-12-2013, 01:43
invito, FIN DA ADESSO, se questa discussione è possibile in questo sito,
I MODERATORI A FAR RISPETTARE QUESTO INTENTO.

chiedo al moderatore la rimozione del commento di coffe-killer
IN QUANTO NON ATTINENTE ALL'OGGETTO DELLA DISCUSSIONE.
lorenzo wjsky.



semmai non c'entri nulla tu, che non sei ne un culture ne un appassionato del cobol. ma un denigratore. pero continua pure.
IO CHIEDO L'INTERVENTO DEI MODERATORI CHE VALUTINO CHI C'ENTRA O CHI NON C'ENTRA ...E SE LO RITENGONO OPPORTUNO, CHIUDANO PURE IL THREAD.
lorenzo wjsky.
.

Mi pare che voglia parlare solo te e avere ragione su tutto e tutti.. apriti un blog come fanno in tanti :)

qui i mod fanno altro e non sono al comando degli utenti

....a tutti gli azzeccagarbugli....piu o meno furbi :sofico:
o più o meno stupidi, professorini....o millantatori che si agitano in questo o
altri thread sarebbe interessante e meritevole se saprebbero sintetizzare in
massimo 10 righe quello che è scritto qui:


visto l'atteggiamento e gli insulti ti invito veramente ad aprirti un blog con i commenti bloccati

utente bannato

CLOSED!!

>bYeZ<